Front Tracking and Operator Splitting for. Knut{Andreas Lie

Size: px
Start display at page:

Download "Front Tracking and Operator Splitting for. Knut{Andreas Lie"

Transcription

1 Front Tracking and Operator Splitting for Convection Dominated Problems Knut{Andreas Lie Doktor ingenir thesis Department of Mathematical Sciences Norwegian University of Science and Technology 998

2

3 Preface This is my thesis for the degree of Doktor Ingenir (dr. ing.) at the Department of Mathematical Sciences, Norwegian University of Science and Technology, Trondheim, Norway. The research was funded through a scholarship from the Research Council of Norway (grant no. 555/4). First of all, I want to thank my supervisor Helge Holden at the Department of Mathematical Sciences for his guidance and excellent support. Second, I am deeply indebted to my collaborators Steinar Evje, Vidar Haugse, Kenneth Hvistendahl Karlsen, and Nils Henrik Risebro and to Jan Olav Langseth for many enlightening discussions. In particular, Kenneth and I have cooperated closely, with almost daily telephone conversations and frequent visits. I hope that our friendship and fruitful collaboration also will continue in the future. I thank my second supervisor Jon Kleppe at the Department of Petroleum Engineering and Applied Geophysics for his help at the outstart of my scholarship. Though my scientic interests have changed in these four years, applications to reservoir has remained a strong source of inspiration and I hope he is satised with the outcome of my work. From May 996 to March 997 I was on leave, working on a research project funded by the Research Council of Norway (grant no. 99/42). I am grateful for the nancial support received in this period. In October 997, I visited Institut Mittag{Leer, Sweden. My visit was funded by the Nordic Academy for Advanced Study (NorFA). I thank the organisers of the academic year at Mittag{Leer for the invitation. My stay at the Department of Mathematical Sciences have been instructive and mostly pleasant. A special thank goes to Harald Hanche{Olsen for all our interesting conversations and to the late Sigmund Berntsen for his friendship and scientic collaboration. Moreover, I thank Kari Hag and the late Henrik Martens for all their support during my undergraduate studies. Studying mathematics and writing a doctoral thesis is sometimes a lonesome business and social interactions and friendship are important to be able to come through. I thank all my friends for making my ten years here in Trondheim memorable. Finally, I thank Anne for her constant love and encouragement, and for taking the extra burden when I worked long hours. Trondheim, April 28, 998 Knut{Andreas Lie i

4

5 Outline of the Thesis This thesis is concerned with dierent aspects of solving convection dominated problems using numerical methods. Unconditionally stable methods based on front tracking and operator splitting are developed and studied mathematically. The thesis consists of two parts. The rst part gives a motivation for this study and a brief historical overview of related research in Norway. Furthermore, a summary and a short discussion is given for each paper. The second, and main part of the thesis includes the following eight papers: Paper I: Front tracking for one-dimensional nonlinear advection equations with variable coecients, by Knut{Andreas Lie. Paper II: Dimensional splitting with front tracking and adaptive grid renement, by Knut{Andreas Lie, Vidar Haugse, and Kenneth Hvistendahl Karlsen. Accepted for publication in Numerical Methods for Partial Dierential Equations. Paper III: A dimensional splitting method for nonlinear equations with variable coecients, by Knut{Andreas Lie. Paper IV: An unconditionally stable method for the Euler equations, by Helge Holden, Knut{Andreas Lie, and Nils Henrik Risebro. Paper V: A shock-tracking method for one-dimensional inhomogeneous hyperbolic systems, by Knut{Andreas Lie. Paper VI: An unconditionally stable splitting scheme for a class of nonlinear parabolic equations, by Kenneth Hvistendahl Karlsen and Knut{Andreas Lie. Paper VII: A front{tracking approach to a two-phase uid{ow model with capillary forces, by Kenneth Hvistendahl Karlsen, Knut{Andreas Lie, Nils Henrik Risebro, and Johnny Fryen. Invited contribution to a special issue of In Situ (Vol. 22(), 998, pp ) on reservoir simulation. Editors: Mike Christie and John Trangenstein. Paper VIII: Front tracking and operator splitting for nonlinear degenerate convection{ diusion equations, by Steinar Evje, Kenneth Hvistendahl Karlsen, Knut{Andreas Lie, and Nils Henrik Risebro. iii

6 iv The rst ve papers discuss front tracking methods for hyperbolic equations; the three rst are about scalar problems, whereas the next two discuss hyperbolic systems. The next two papers are about parabolic equations, and the last paper discusses mixed hyperbolic{ parabolic equations. During my work with the thesis, two more papers and a conference proceeding have been produced: K. Hvistendahl Karlsen, K. Brusdal, H. K. Dahle, S. Evje, and K.-A. Lie: The corrected operator splitting approach applied to an advection-diusion problem. To appear in Comput. Methods Appl. Mech. Engrg. R. Holdahl, H. Holden, and K.-A. Lie: Unconditionally stable splitting methods for the shallow water equations. K. Hvistendahl Karlsen, K.-A. Lie, and and N. H. Risebro: A front tracking method for conservation laws with boundary conditions. Preprint, Mathematics No. 3/998, NTNU, Trondheim, Norway. These papers also constitute an important part of my scientic work, but have been left out for various reasons.

7 Motivation Hyperbolic conservation laws are an important class of nonlinear partial dierential equations. A related class is that of convection dominated parabolic problems, for which the hyperbolic conservation law often is used as an approximation. Conservation laws appear as mathematical models for a variety of physical problems in various elds most typically for ow phenomena for instance, in gas dynamics, meteorology, astrophysics, oceanography, porous media ow, and semiconductors, to mention a few. In general, nonlinear partial dierential equations pose challenges when developing mathematical theory as seen from the following quote: : : : Many of the problems in physics, engineering and economics when formulated in mathematical terms lead to nonlinear PDEs: these problems are often very hard. The nonlinearity makes each equation dierent. : : : To say that something is nonlinear does not mean much; in fact it could even be linear. The entire class of nonlinear PDEs is therefore very extensive and one does not expect an all-inclusive theory. On the other hand, one does not want to treat each example dierently and have a collection of unrelated techniques. It is thus extremely important to identify large classes that admit a unied treatment. S. R. S. Varadhan, The Work of Pierre{Louis Lions The same can be said for numerical methods as well. In fact, identifying large classes of equations that can be given a unied numerical treatment, founded on sound mathematical arguments, has been a goal for my research project and for my coworkers. Part of my initial motivation for studying conservation laws was that they arise in simulation of certain secondary oil recovery processes where oil is displaced by water. Being able to predict the outcome of a production scenario is vital in the oil business, as changing the production strategy or drilling new wells easily amounts to tens of millions of NOK. On the other hand, increasing the recovery factor by a few percents may lead to extra billions of national income. Simulation of ow is a small, but important, part of this, and improvements in the simulator technology quickly pays o. Advances in this technology should be based upon sound mathematical principles. Having said so, I hasten to add that this is unfortunately not always the case, as practical computations are often outside the classes of equations that are well understood mathematically. This poses a challenging task for both communities. Practising engineers should incorporate more rigorous mathematics P.{L. Lions was awarded the Fields medal for his work on nonlinear PDEs

8 2 MOTIVATION into their arguments and apply new and ecient numerical methods. On the other hand, mathematicians should seek to extend the theory towards real life applications. My research is an attempt in the latter direction; applications to reservoir simulation can be traced in many of my papers. Very simplied, the displacement process can be described by a coupled elliptic{parabolic system of nonlinear partial dierential equations. The elliptic equation for the pressure p, r??k( w + o )rp = ; is coupled via the total Darcy velocity V =?K( w + o )rp to the parabolic equation for the water saturation, s t + r (V f(s)) = "r(d(s)rs): Here the permeability K and the porosity are rock properties. The mobilities w and o of water and oil (relative permeability k ri divided by viscosity i ) are rock{uid properties and are assumed to be known functions of the unknown water saturation s. The fractional ow function f(s) and the diusion tensor d(s) are known functions given by f(s) = w (s) o (s) + w (s) ; d(s) = K o w w + ; where p c = p c (s) is the capillary pressure. The small scaling parameter " > is introduced when the equations are converted to non-dimensional form, and gives the relative balance between convective and diusive forces. The ux function f(s) has a characteristic S{ shape, and the diusion coecient d(s) is typically bell-shaped with zeros at the endpoints s = ;, introducing degeneracy in the parabolic equation. When solved numerically, a sequential time stepping procedure is often used to decouple the system. First, the initial saturation is used as input in the pressure equation, which is solved to generate the total Darcy velocity. Subsequently, the velocity is held constant for a time period when solving the saturation equation. Then the new saturation value can be used to recompute the pressure, and so on. This strategy reects the dierent nature of the two equations, and allows one to use special methods designed to incorporate the unique mathematical properties of each equation. In the recovery, process water propagates through the reservoir and displaces the oil. Due to the nonlinearity, the solution may develop sharp saturation fronts that represent the interface between water and oil. The interplay of diusive and convective forces determines position and shape of water fronts. Resolving the balance of these forces numerically is a challenging task. If viscous eects are neglected, which is often a reasonable approximation since the problem is convection dominated, the saturation equation becomes a scalar conservation law of the form s t + r (V f(s)) = ; and the sharp fronts in the solution become discontinuities. This poses diculties both numerically and mathematically. For instance, will a naive application of classical nite dierence methods lead to numerical dispersion, either in the form of numerical diusion or

9 MOTIVATION 3 oscillations. My starting point was to study methods that give accurate representation of saturation fronts. When doing so, one should, of course, acquire a thorough understanding of the mathematical properties of such equations. The real beauty of mathematics is that development of new theory is not limited to one single application. Progress made for conservation laws or convection dominated problems in general easily applies to a host of phenomena governed by the same equations. For instance, methods that were developed for gas dynamics, have successfully been applied to for simulation of water waves and reservoir simulation. In fact, few other classes of equations have such a widespread occurrence as conservation laws. This is indeed a strong source of inspiration when studying the mathematical properties of such equations. Although the conservation law introduced above as a model for two-phase ow is simplied to a large extent we have, for instance, assumed the uids to be incompressible and immiscible and neglected diusive forces due to capillary pressure its behaviour is by no means simple from a mathematical point of view. In fact, many of the same problems arise even for the simple one-dimensional conservation law () u t + f(u) x = ; u(x; ) = u (x): For instance, even for smooth initial data u, the solution may develop discontinuities and cannot be treated by classical analysis. Moreover, since some physical eects typically have been neglected when deriving the equation, there is a lack of uniqueness. When u is a scalar quantity, the conservation law () is well understood, thanks to a tremendous research activity in the second half of this century. For systems, on the other hand, there are still unsettled questions. To allow for discontinuities, we seek solutions in the weak sense; that is, u is to satisfy the following equality (2) Z IRZ? ut + f(u) x dtdx + Z IR u (x)(x; ) dx = for all smooth test functions. Unfortunately, this does not give us the uniqueness we have in the physical situation the conservation law is supposed to model. To get uniqueness, we can use a popular method called `vanishing viscosity', which reects that conservation laws often come from physical ow phenomena. By adding a (small) second-order term to the equation, we ensure that the new equation u " t + f(u " ) x = "u " xx; u " (x; ) = u (x) possesses continuous solutions. The proper solution of () is then chosen as the limit of u " (x; t) as " tends to zero, and a classical analysis of smooth solutions u ", coupled with a careful limit argument, can be used to show existence, uniqueness, and stability of the solution of (). However, working with limits of viscous solutions is not what we want as the conservation law was derived by neglecting higher-order eects. Instead, we impose other conditions

10 4 MOTIVATION directly on the hyperbolic equation. Such conditions are often called entropy conditions, coming from the physical quantity with the same name in gas dynamics. A fundamental law of thermodynamics states that the entropy is always increasing. For scalar equations one such condition is the Kruzkov entropy condition: We say that u(x; t) is the entropy weak solution of () if it satises the integral inequality (3) Z IR Z T? ju? kjt + sgn(u? k) f(u)? f(k) x Z Z + IR ju(x; )? kj(x; ) dx? IR dtdx ju(x; T )? kj(x; T ) dx for all k 2 IR and test functions 2 C. This condition both denes weak solutions that are possibly discontinuous and ensures uniqueness; especially, viscosity solutions are incorporated. The study of conservation laws, which I gave a avour of above, requires the application of many interesting techniques from mathematical analysis and is interesting in its own right, devoid of any application to real life problems. Nevertheless, the eld is intimately related with applications as most conservation laws are models of some physical phenomenon. Moreover, since few problems can be solved analytically, computer experiments are important when acquiring the intuition that is necessary for developing new theory and testing new conjectures. It was this close relationship between applications, numerics, and deep mathematical theory that attracted my interest and led to this study. Classical references to this eld are [7] and, for instance, [, 77]. Recently a lot of new monographs have appeared, for instance, [2, 2, 36, 48, 65, 59]. In a forthcoming monograph [3], the front tracking method used in this thesis is given special emphasis.

11 Summary of Research and Overview of Related Work In the following, I will try to sum up my research and put it into a context. There are several ways of approach. One could, as I do in the rst section, emphasize the `applied' aspects. Except for Papers IV and V, which are about the Euler equations of gas dynamics, all other papers discuss equations that are relevant for oil reservoir simulations, although not stated explicitly in each paper. On the other hand, one could emphasize numerical analysis such as convergence proofs and error analysis, or mathematical analysis such as proofs of existence, stability and uniqueness. However, common for the papers I have written, is that the front tracking method is in there somewhere. In fact, a lot of eort has been put into developing related methods for more general equations that retain the eciency and accuracy of the original method. I have therefore chosen to outline my research as a tour of front tracking methods in dierent disguises 2. I start by outlining relevant work done before I began working on my thesis. At this point I must warn the reader that the historical account is biased by my interests. Research on conservation laws has been an ongoing project in Norway since the early 98s, initiated by the group around the late Raphael Hegh{Krohn at the University of Oslo. I entered this eld about ten years after its rst bloom and is therefore member of the second generation of researchers, if one can talk of generations. Of course, a lot more happened before my time than what is reviewed here. After the overview, I present a short summary of the papers in the thesis. In a discussion following each summary, I try to bind the papers together and in some cases give a more up-to-date discussion of the topics. Moreover, I state some of the problems that still need to be resolved and indicate some possible paths to pursue in the future. Overview of Related Work Scalar conservation laws: The front tracking method was rst mentioned by Dafermos [] in the 97s. A related method had been used a decade earlier by Barker [3] at Sandia National Laboratories. Dafermos suggested the front tracking construction to study initial value problems for the scalar nonlinear hyperbolic equation u t + f(u) x = ; u(x; ) = u (x): 2 My coworker Kenneth Hvistendahl Karlsen has chosen another approach in the introduction of his thesis, although our research has a strong overlap. He focuses more on the mathematical aspects of both equations and numerical methods, whereas I focus on computational aspects. I highly recommend reading both introductions for a more complete picture. 5

12 6 SUMMARY OF RESEARCH AND OVERVIEW OF RELATED WORK He observed that if the ux function f is convex and piecewise linear, the solution of the Riemann problem is a step function (piecewise constants). If the initial data u is within the class of step functions, an analytical solution of the Cauchy problem can be constructed by superposition of simple Riemann problems. The solution will remain piecewise constant for all time, and thus within the same class of functions, since all wave interactions lead to new Riemann problems. By solving these Riemann problems each time two or more waves interact, a global solution can be established. In the general case, approximating the ux function by a sequence of piecewise linear functions and the initial data by a sequence of step functions give a compact sequence of approximate solutions converging to the solution of the Cauchy problem. Numerical studies using Dafermos' method are reported by Hedstrom [23, 24] for scalar problems and the p-system. Moreover, Swartz and Wendro [72] reports on a hybrid method with moving grid points, which is based on Dafermos' construction. Well-posedness of the construction is discussed by Zheng [79]. Tao and Longwei [74, 73] study initial{boundary value problems using Dafermos' method. Unaware of this development, Holden, Holden and Hegh{Krohn [28, 27] rediscovered the method and proved that the construction is well-dened for non-convex ux functions, in that there is a nite number of steps in the algorithm. They proposed to use the algorithm as an ecient numerical method and developed what they called the front tracking method. Each discontinuity is called a front. Computing collisions of fronts and resolving interactions is called tracking of fronts; hence front tracking. In fact, the method works for any ux function, as opposed to some Riemann based, high-resolution methods that have problems at inection points. Moreover, the method is unconditionally stable and very fast. In one dimension, the front tracking method is rst-order [64], even with discontinuous solutions. Inhomogeneous conservation laws have been studied using front tracking as part of a fractional steps method. Langseth, Tveito, and Winther [55] prove that such a splitting method is rst-order. Holden and Risebro [34] study conservation laws with a random source. Motivated by applications to reservoir simulation, Gimse and Risebro [8, 9] and Gimse [7] presented an extension of the one-dimensional front tracking method to conservation laws with discontinuous ux functions. See also [47]. Scalar conservation laws with parameters were studied by Vignes [76]. The method was also used by Holden [35] to study the Buckley-Leverett equation with a spatially stochastic ux occurring in the simulation of secondary oil recovery. In higher dimensions, Holden and Risebro [32] analysed the combination of front tracking and dimensional splitting. The corresponding numerical method is unconditionally stable and retains much of the eciency of the one-dimensional method. The company Technical Software Consultants (TSC) was founded in 988 by people originating from the University of Oslo. The business idea was to develop fast and modern reservoir simulators based on the front tracking method [4, 5, 6]. The company has later undergone many changes, but seems to have found its niche in the market.

13 OVERVIEW OF RELATED WORK 7 In the rst years, the front tracking method for scalar problems was primarily applied to reservoir simulation problems. However, it was also used to compute solutions for a model describing heavy trac on a network of unidirectional roads [3, 33]. Systems of conservation laws: For systems, the front tracking algorithm needs a reformulation, as the idea of making piecewise linear approximations will not work for most equations. This was done by Risebro [68], who presented the new method as an alternative to the random choice method [9]. The front tracking method is based on the Lax construction and uses the local coordinate systems of wave curves around two constant states to construct approximate solutions of Riemann problems. Shocks and contact discontinuities are kept. Rarefaction waves, on the other hand, are replaced by step functions taking values sampled along the continuous wave curve. This construction ensures that each Riemann problem is approximated by a piecewise constant function 3. When waves from dierent Riemann problems interact, they dene new Riemann problems and we can proceed with the construction as in the scalar case by tracking fronts and solving Riemann problems. The front tracking method is related to the wave front tracking method of Bressan, which recently has been used to show stability, and thereby uniqueness, of solutions of systems in one spatial dimension [7, 8]. Moreover, the method is related to the large time step method of LeVeque [57, 58], which is simpler in the sense that it does not resolve nonlinear wave interactions. As for the scalar case, it is natural to explore the front tracking algorithm as a numerical method. This was done by Risebro and Tveito for the Euler equations of gas dynamics [7] and for the nonstrictly hyperbolic system of polymer ooding [69]. Numerical experiments show that the method is far superior to some standard schemes with respect to accuracy versus computational time. Moreover, these two papers discuss numerical implementations and introduce the data structure I later inherited and used in my thesis. Implementation issues are discussed in more detail by Langseth [5], with special emphasis on objectoriented aspects. Langseth, Risebro and Tveito [54] observe that the front tracking scheme also compares well with a second-order Godunov method for the Euler equations (see also the comments on that paper in Langseth's doctoral thesis [52]). A fundamental issue with the front tracking method is the potential build-up of innitely many fronts in nite time. Analytically, this is discussed in [68] (and recently in [2]). Several numerical approaches have been suggested to overcome this problem. Langseth, Risebro and Tveito [54] discuss how to make conservative approximations of rarefaction waves and suggest to solve the Riemann problem dierently according to its strength. Langseth [5] advocates a dierent strategy, in which suciently small waves are removed 3 Note that a similar construction could be applied for scalar equations. For convex ux functions, for instance, this would give a much faster Riemann solver than the general purpose solver for non-convex, piecewise linear ux functions. Moreover, if source terms are included in the scalar equation, using the systems formulation has the advantage that one need not have a priori L bounds on the solution in order to make a numerical study, which is required when dening a piecewise linear approximation of the ux function.

14 8 SUMMARY OF RESEARCH AND OVERVIEW OF RELATED WORK after the wave structure has been computed. This latter approach is more accurate, given a discretization parameter for rarefaction waves [5]. Convection dominated parabolic problems: While conservation laws were studied in Oslo, operator splitting methods for nonlinear parabolic problems were studied by the reservoir simulation group at the University of Bergen. More precisely, the early work was on the modied method of characteristics [2, 4]. A short summary of this work and related approaches can be found in the introduction of [43]. In the basic version of operator splitting, the scalar parabolic problem u t +f(u) x = "u xx is decomposed into a hyperbolic equation u t + f(u) x = and a heat equation u t = "u xx. This typically leads to excessive numerical diusion, unless the splitting step is chosen to be of the same order as the diusion coecient ". In the modied method of characteristics, one uses a splitting of the ux function based on a priori knowledge of the wave structure for each individual problem. The hyperbolic step then contains a linear ux giving the advection, while a nonlinear residual ux is included in the diusion step to correctly balance the diusion and the nonlinear self-sharpening of wave fronts. In Oslo, Hvistendahl Karlsen and Risebro had started to study extensions of the front tracking method to parabolic equations by the means of operator splitting [46]. An important breakthrough came when they started cooperating with the Bergen group and discovered that one could generalize the modied method of characteristics by using front tracking. In fact, they were able to dispense with the requirement of a priori knowledge of the wave structure and dynamically dene a residual ux function that produces the correct amount of self-sharpening when included in the diusion step. The new method was named corrected operator splitting (COS) [45]. I got involved in this research at an early stage, partaking in the numerical investigation of the method and the rst extension to multidimensions [43]. The front tracking based, operator splitting technology was developed further in a series of papers (Papers VI{VIII and [6]). Paper I: Front Tracking for One-Dimensional Nonlinear Advection Equations with Variable Coefficients This paper presents a new front tracking method for quasilinear, rst-order hyperbolic equations with variable coecients written on non-conservative form. Moreover, stability estimates and a priori error bounds are derived. The work started out as an attempt to analyse the streamline method used by TSC [6], but soon turned into an analysis of the new front tracking algorithm for equations with variable coecients. The method has later been used as `basic technology' in various operator splitting methods (Papers III and VI{VIII). Summary: Consider nonlinear, variable coecient equations on the form (4) u t + V (x; t)f(u) x = ; u(x; ) = u (x): Equation (4) typically occurs when one uses operator splitting to simulate advection dominated phenomena; for instance, the advection of a scalar quantity u in a multi-dimensional, divergence free velocity eld.

15 PAPER I 9 In this paper, I answer the following two questions: How does one compute a numerical approximation to a possibly discontinuous solution of (4) eciently? Moreover, how does the solution of (4) depend on ux function, velocity, and initial data? First, I demonstrate how to use the front tracking approach to construct a piecewise constant approximation to (4). The key observation is that (4) for V > has the same permissible discontinuities as the conservation law u t + f(u) x =. However, instead of following straight lines, the discontinuities propagate along paths satisfying an ordinary differential equation. These paths can be computed explicitly if the velocity is approximated by a piecewise linear or piecewise constant function. The form of the shock paths is not essential to the front tracking method, which therefore can be extended to the present case. The new method is well-dened under some mild restrictions on the velocity; V (x) can contain jumps as long as the sign is preserved over each jump. I also show that the method can be used to obtain a sequence of approximations that converges to the weak entropy solution of (4) in the sense of Kruzkov [49]. The Kruzkov entropy condition is then used to derive explicit bounds on the stability with respect to initial data, ux function, and velocity. Let v and w be two solutions of (4) with initial data v and w, ux functions f and g, and velocity elds V and W, respectively. Then kv(; T )? w(; T )k e T kv? w k + T e T minftv(v ); TV(w )g; where the constants and are given by =2kV x k kfk Lip + kw x k kgk Lip ; =kfk Lip? kv? W k + T (V ) + kw k kf? gk Lip ; and T (V ) = sup <t<t jkv (; t + )? V (; t? )k. For constant coecients, the result simpli- es to that of Lucier [64] for scalar conservation laws. As a corollary, a priori error bounds are established on the approximate solutions generated by front tracking. The error is linear in the approximation parameters for initial data and ux function and quadratic in velocity. Finally, I discuss in more detail how to use the front tracking method for numerical computations and present three examples that demonstrate the capacity of the method. The rst example is Burgers' equation with a time dependent velocity eld cos(t=t ). A comparison is made with the Lax-Friedrichs method. Although this method is very simple, it illustrates some of the diculties a nite dierence method may encounter at the singular point t = T=2. These problems are not shared by the front tracking method. The second example involves a non-convex ux functions and highly non-monotone initial data. The third example is a convergence study that veries the second-order convergence with respect to the velocity approximation. Comments: Why is front tracking so ecient? In its basic formulation for scalar equations, the method is grid-independent and focuses all computational eorts on the wave interactions. Therefore the runtime of the method depends almost entirely upon the dynamics of the problem. This is dierent from explicit nite volume/dierence/element

16 SUMMARY OF RESEARCH AND OVERVIEW OF RELATED WORK methods, which operate on grids and have a nearly constant computational cost per grid cell. Moreover, for these methods there is a time step, typically restricted by a CFL condition. Front tracking, on the other hand, has no such time step. A new computation is only required when waves interact. Since all waves are of the same family for scalar problems, the interactions die out quite rapidly. Finally, solving the Riemann problem for a non-convex, piecewise linear ux function is very fast when the solution is within a bounded interval. This explains the eciency of the method. For the variable coecient method, much of this eciency is retained. Extra overhead is, of course, introduced when propagating a front through a non-constant velocity eld. However, only a few numerical operations are needed each time a front enters a new interval in the piecewise linear velocity approximation. In addition, we have observed that good resolution is achieved for relatively coarse approximations to the velocity. Recall that the convergence with respect to this approximation is second-order. Paper II: Dimensional Splitting with Front Tracking and Adaptive Grid Refinement Coauthors: Vidar Haugse and Kenneth Hvistendahl Karlsen. In this paper, we present an error analysis for the front tracking method combined with dimensional splitting for scalar conservation laws in multidimensions. We also present a method for adaptive grid renement, which does not use local time stepping. Moreover, a numerical study reveals that the method allows for surprisingly large CFL numbers and is thus very computer ecient. The observations made here were important as motivating factors for more research on front tracking methods and led to our later eorts to apply front tracking based methods to a wider class of equations. Summary: Front tracking in combination with dimensional splitting is analysed as a numerical method for scalar conservation laws of the form (5) u t + f(u) x + g(u) y = ; u(x; y; ) = u (x; y): The semi-discrete dimensional splitting is dened as follows: Let u(t) = S t u denote the entropy solution of (5), and v(t) = S f t v and w(t) = S g t w the entropy solutions of the one-dimensional equations v t + f(v) x = ; w t + g(w) y = ; Then approximations are dened as v(x; ) = v (x); w(y; ) = w (y): S nt u (x; y) = S g t Sf t nu (x; y); (Godunov) S nt u (x; y) = S f t=2 Sg t Sf t=2 nu (x; y): (Strang) In the numerical method, each one-dimensional operator is approximated by front tracking, followed by a projection onto a regular Cartesian grid S f t x S f; t. This introduces

17 PAPER II two additional discretization parameters; x for the Cartesian grid and for the polygonal approximation of the ux functions. In his master's thesis [4], Hvistendahl Karlsen proved that the error for the dimensional splitting method is of order O(t =2 + x =2 + ), using the approximation theory of Kuznetsov [5]. In this paper, we present a more up-to-date proof of this result with sharper constants in the explicit error bound. The error bound suggests a convergence rate of order /2 in both time and space and is optimal for linear problems. On the other hand, for smooth solutions, one can easily modify the proof to show rst-order convergence. To improve the spatial accuracy, we incorporate grid renement by local partitioning of blocks in the Cartesian grid. We propose to solve, as before, one whole row or column of grid blocks at the time. This is done in an elaborate manner, where fronts leaving a rened section are assigned new states according to the cross-sectional average upon entering the coarse section. Inside each section, the standard front tracking method is used. We present an adaptivity strategy that uses the variation of the one-dimensional front tracking solutions to determine whether new renements should be added in the projection phase of the algorithm. Unnecessary renements are removed during a separate post-processing phase. The numerical method is tested on a few examples to validate the analytical error estimates. For problems with nonlinear ux functions, we observe convergence rates that are closer to than to the predicted =2. This can be explained by the self-sharpening eect in nonlinear problems that tends to counteract the O(x =2 ) smearing introduced by the projections. For linear problems there is no such eect, and the error estimate is sharp. Theoretically, the method is unconditionally stable. In practise, we observe that surprisingly large time steps can be used without loss in accuracy. In fact, the error decreases as the CFL number increases above unity. Compared with a rst-order Godunov method ( =2) there is a remarkable improvement in accuracy. This can be explained as follows: There are two factors contributing to the total error of the method; the projection error increases with the number of time steps and the splitting error decreases with the number of time steps. We observe minimum error at a CFL number well above unity. Moreover, can be increased even further without signicant loss of accuracy. Highest eciency is typically observed for between and 2 for all test problems. Comparisons with the simple rst-order Lax-Friedrichs method and a second-order, wave propagation methods from clawpack Version 2. [56] indicate that the dimensional splitting method is accurate and very ecient. Finally, a preliminary numerical test for the Euler equations of gas dynamics is reported and shows that the grid renement strategy may improve the performance of the method substantially. For scalar equations, the improvement was minor, unless the CFL number was low. At high CFL numbers, the gain in accuracy is not enough to compensate for the computational overhead introduced by the renement strategy and the more elaborate front tracking algorithm.

18 2 SUMMARY OF RESEARCH AND OVERVIEW OF RELATED WORK Comments: A detailed proof of the error estimate can be found in [3], and a new proof, without doubling the variables, is given by Hvistendahl Karlsen in his PhD thesis [42]. Natvig [66] reports a convergence study for smooth solutions that conrms the rst order of the method. Moreover, he compares the method with two high-resolution, second-order schemes [37, 62]. The front tracking method is also well suited for studying boundary value problems. When no special attention is paid to the boundary, the method gives absorbing boundary conditions; that is, waves are allowed to pass out of the domain without any changes. Periodic boundary conditions are equally simple to include. In [44], we study multidimensional conservation laws u t + r f(u) = ; u(x; ) = u (x); in a bounded domain x 2 IR d, subject to either Dirichlet boundary data u(x; t) = r(x; t); x t > ; or a novel zero ux (or no-ow) boundary condition f(u(x; t)) n = ; x t > : The zero ux condition is naturally occurring in many applications, when no quantity is allowed to pass out of the domain. This could be modelled by adding a velocity eld that is zero on the boundary. In our approach, we prescribe the ux function instead. A longer version of [44], where we will write out the proofs in more detail, is currently in preparation. Ideally, the time step in a numerical method for non-sti problems should be determined by the dynamics of the problem and not by the spatial discretization; one should use small time steps only when the problem has complex dynamics. Since the front tracking method is unconditionally stable, this can be achieved to a certain extent. We choose the spatial discretization small enough to resolve spatial variation, and then independently choose the time step in the splitting method small enough to propagate waves and resolve interactions. For the two-dimensional problems considered in Paper II, the dynamics can typically be resolved by a few splitting time steps. Scalar problems with similar dynamics arise when simulating secondary oil recovery processes, as is discussed in Paper VII. In water injection problems, the solution typically consists of water fronts that propagate outwards from injection wells to displace the oil in the reservoir. In some cases (depending on the miscibility and the mobility ratio), the fronts will be relatively stable once they are established. The above discussion is, of course, a bit simplied, as eects from the spatial and temporal discretization will be coupled in any numerical scheme. For the front tracking method, the self-sharpening eect inherent in scalar equations tends to counteract the smearing introduced by the projection operator applied after each directional step. This explains the improved accuracy observed by increasing the time step; larger steps mean fewer projections, but also more self-sharpening as waves propagate for a longer period.

19 PAPER III 3 Whether large splitting steps are feasible in terms of computer time has to do with the dynamics of each one-dimensional problem. The work associated with front tracking up to time nt is often much less than n times the work up to time T. (See the discussion of Paper I). Hence we conclude that for certain scalar problems it pays o to use large time steps both with respect to accuracy and computational time. A preliminary numerical investigation indicates that this observation also carries over to boundary value problems. Typically, CFL numbers up to -5 seem to give accurate results. However, for very complicated geometries, where the geometry accounts for most of the eects, feasible CFL numbers will probably be a little lower. This matter should be looked into further. Paper III: A Dimensional Splitting Method for Nonlinear Equations with Variable Coefficients This paper presents a generalization of the dimensional splitting method in Paper II using the new front tracking method from Paper I. Convergence of the method is established along the lines of Holden and Risebro [32]. Summary: Consider variable coecient, hyperbolic equations on the form (6) u t + dx i= V i (x; t)f i (u) xi = ; u(x; ) = u (x): The equation describes, for instance, displacement of oil by water in a petroleum reservoir under the assumption of incompressible ow. Another example is advection processes on curvilinear grids. I develop a dimensional splitting method for (6). Dimensional splitting decomposes the problem into a series of one-dimensional problems in each spatial direction, see Paper II. The novel front tracking method from Paper I is used to approximate the one-dimensional problems. The corresponding numerical method is unconditionally stable and very ecient. Using a standard compactness technique, I prove that a subsequence of approximate solutions converges to the unique weak entropy solution as the discretization parameters tend to zero. Finally, three numerical examples are presented. The rst example is a rotating cylinder and demonstrates the eects varying CFL numbers have on the quality of the solution. Large time steps give large splitting errors, whereas small time steps give excessive smearing. The two eects typically balance at a CFL number well above unity. Moreover, instantaneous numerical convergence rates slightly above =2 are established for this example. The second example demonstrates application to curvilinear grids, and the third example is a model problem from oil reservoir simulation. Comments: The numerical convergence rates observed in this paper are much lower than those in Paper II. Disregarding the velocity eld, this illustrates the point we stressed in that paper, namely that linear equations give worst case behaviour for the dimensional splitting method and that the error estimate we derived is sharp in that case. Since linear

20 4 SUMMARY OF RESEARCH AND OVERVIEW OF RELATED WORK equations contain no self-sharpening eects, there is nothing that counteracts the O(x =2 ) projection error. With velocity elds incorporated in the front tracking method, we can solve the saturation equation appearing in the simplied model of water injection presented in the rst section. This is done in Paper VII, where capillary eects are also included. The new method is an alternative to those applied by TSC [5] and has, for instance, been used by Haugse for studying the eect of anisotropy on core ows [22]. Equations on the more general form u t + dx? Vi (x; t)f i (u) x i = ; u(x; ) = u (x); i= can also be treated by transforming them to an inhomogeneous version of (6) and possibly using operator splitting for the source term containing velocity gradients P V i (x; t) xi f(u). The variable coecient method has also been extended to systems on the form (6), namely to the nonstrictly hyperbolic system modelling polymer ooding. In some aspects, this system has a much simpler wave structure, more akin to the scalar case, than, for instance, the Euler equations, as all waves are unidirectional locally. Thus, one would expect front tracking methods to be more ecient for this system. (See the discussion following Paper IV.) This has been demonstrated by Natvig in his diploma thesis [66], where comparisons with high-resolution second-order schemes tend to favour the front tracking method. Paper IV: An Unconditionally Stable Method for the Euler Equations Coauthors: Helge Holden and Nils Henrik Risebro. As for the scalar case, dimensional splitting can be used to extend the front tracking method for hyperbolic systems to higher dimensions. In this paper, we study the Euler equations in two spatial dimensions. Summary: We demonstrate how to combine front tracking with dimensional splitting to give an unconditionally stable numerical method for systems in two spatial dimensions. The method for adaptive grid renement introduced in Paper II is also reviewed. We implement the method and test it on the Euler equations of gas dynamics u v E t u u 2 + p uv u(e + p) x v uv v 2 + p v(e + p) Four numerical examples are presented. The rst example, suggested by Toro [75], concerns an outward explosion caused by a high density circular region of gas. The radial symmetry allows us to test for eects coming from the Cartesian grid, since a reference solution is easily obtained by solving an equivalent one-dimensional, inhomogeneous problem (see Paper V). Furthermore, the front tracking solution is compared with the second-order y = :

21 PAPER IV 5 central-dierence scheme of Jiang and Tadmor [37]. The front tracking method gives less smearing and is more time-ecient than the dierence scheme. Both schemes show some minor grid orientation eects. A convergence study shows that the front tracking method converges to the nonsmooth solution of this problem at a rate between.7 and.8. The next two examples proposed by Woodward and Colella [78] are by now established as standard test cases in the literature. For the Mach 3 wind tunnel case, the front tracking method resolves the major ow properties accurately. Moreover, including adaptive grid renement reduces the CPU time substantially while retaining the accuracy. Similar observations are made for the double Mach reection test case. In the fourth example, we consider a planar shock interacting with a circular region of low density. The example is suggested by Langseth and LeVeque [53] in three dimensions to study the induced vorticity and mixing when a shock wave runs through an inhomogeneous medium. Front tracking is here compared with the clawpack software [56] developed by LeVeque. We observe that front tracking is substantially better than the rst-order unsplit method in clawpack and performs similarly to the second-order unsplit method with minmod limiter, whereas the more compressive superbee limiter gives the best results. As all shock-capturing methods, front tracking generates post-shock oscillation, but the mechanism behind this eect is easily explained. New states are introduced locally by the projection operator and lead to waves of new families and hence oscillations. Moreover, the method is subject to some of the fundamental problems identied by Quirk [67] for Godunov type numerical methods. Nevertheless, the test problems indicate that the front tracking method produces accurate results, especially for shock fronts, and that the method is very ecient with respect to computational time. In all four test cases, we used moderate CFL numbers in the range to 4. Comments: The numerical examples for the Euler equations reported in Paper IV are only a few of the problems we have tested the method on. Except for the problems pointed out above, all test cases give the same conclusion { the method produces fairly accurate results in an ecient manner. The shallow water system modelling e.g., surface waves in shallow waters, has been studied by Holdahl in his diploma thesis [25]. He studied problems in multidimensions, but also ow over varying topology using operator splitting. A wide variety of test problems conrm the above conclusion that the method in multidimensions works well at CFL numbers moderately above unity. Moreover, it compares favourably with many secondorder methods; the central-dierence schemes of Jiang and Tadmor [37], the composite schemes of Liska and Wendro [62, 63] and wave propagation methods in clawpack [56]. Further results for this system are reported in [26]. Moreover, the monograph [3] contains several examples for the shallow water equations in one spatial dimension. Thus, the conclusion is that the front tracking method works well, but not as well as in the scalar case (Papers II and III). I will try to explain why. First of all, waves can now interact in a more complex pattern, due to the presence of dierent wave families. In general, the interaction of two waves produces small waves of other families. Additional waves are also produced by the projection operator. As opposed to the scalar case, these

22 6 SUMMARY OF RESEARCH AND OVERVIEW OF RELATED WORK waves will in general not disappear, and may lead to small oscillations. Therefore, the wave interactions do not die out quickly and there is a smaller gain in runtime by increasing the time step in the one-dimensional sweeps. In fact, the number of small waves leads to a dramatic increase in runtime if the time step is chosen too large. As in the scalar case, the error of the method is determined by the interplay of splitting errors, numerical smearing introduced by the projections, and self-sharpening eects of shock waves. A minimum error is typically obtained at CFL numbers moderately above unity. However, unlike the scalar case, increased eciency is not observed when increasing the time step further due to an increased inuence of post-shock oscillations. We have tried several strategies to reduce the post-shock oscillations induced by the projection operator. These small oscillations both slow the algorithm down and are visually annoying. For instance, we implemented a lter proposed by Engquist et al. [3] without success. Similarly, we tried without success to use a diusive method (Lax-Friedrichs) to reduce oscillations in the spirit of Liska and Wendro [62]. In fact, both methods aggravated the problems in some cases. In one spatial dimension, the post-shock oscillations can be (almost) eliminated by introducing adaptive grid renement, as discussed in Paper V. Unfortunately, this approach is dicult to apply in multidimensions due to the complexity of the corresponding grids. Another possible x would be to locally change the wave curves used in the Riemann solver; that is, for small shocks use the rarefaction curve instead. For larger shocks, we start along the (entropy violating) rarefaction curve, then interpolate to the shock curve and continue on that curve. This approach has been suggested by Bressan [7]. Experiments by Risebro (private communication) on the shallow water equations indicate that this is a feasible approach that should be looked further into. To overcome the problem of diracting shocks, we tried the approach suggested by Quirk [67] by using a more diusive Riemann solver. To do so locally in space is dicult in the front tracking setting. Instead, we applied a test based on the pressure for each Riemann problem (see Toro [75]) to determine whether the simplied HLL (or the HLLC) solver should be used. Unfortunately, this did not cure the problem. However, the use of simplied Riemann solvers, for instance, as suggested by Toro [75], should be investigated further. The corresponding front tracking method would then be more like the large time step method of LeVeque [58]. A word of caution at the end. As described above, the front tracking approach has proved to be eective for the hyperbolic systems we have applied it to. However, one should note that the method's applicability depends on the existence of the Riemann solution. Thus, extending the method to equations containing, for instance, elliptic regions, as for the full three-phase ow equations in porous media (see e.g., [29]), may prove futile. Furthermore, if the method is to be ecient, the Riemann solver must be ecient, and at the moment this seems to render little hope of making an ecient method for e.g., magnetohydrodynamics (MHD).

23 PAPER V 7 Paper V: A Shock-Tracking Method for One-Dimensional Inhomogeneous Hyperbolic Systems In this paper, I discuss how to extend the front tracking method to inhomogeneous hyperbolic systems. A new shock-tracking strategy is proposed, which gives very sharp resolution of discontinuities in the solution. Summary: Consider the inhomogeneous system of conservation laws u t + f(u) x = h(u); u(x; ) = u (x); u 2 IR n : Approximate solutions of this equation can be constructed by using front tracking in combination with a fractional steps method. To simplify the process of obtaining initial data for the ODE step, it is convenient to use front tracking as a shock-capturing method, that is, project the solution back onto a grid at regular time intervals. A similar strategy is applied for multidimensional, homogeneous problems, see Paper IV. Unfortunately, introducing projections has certain undesired eects, such as generation of post-shock oscillations and numerical diusion. I review these problems and use the discussion to motivate the new shock-tracking method. The shock-tracking method uses an underlying, xed grid and introduces extra grid points at the location of strong discontinuities. These (moving) grid points are created at the end of each hyperbolic step, and destroyed at the outset of the next. No grid points are used during the hyperbolic step, since wave interactions are resolved explicitly by the tracking algorithm. Moreover, some kind of adaptive mesh renement is easily included if extra resolution is needed locally in smooth regions. By adopting the shock-tracking strategy, a remarkable improvement in accuracy is observed. The shock-capturing and the shock-tracking methods are compared in three numerical examples. The rst two examples involve geometric source terms for the Euler and the shallow water equations, respectively. In the second example, the two methods are compared with the second-order, composite lwlf4 scheme [63]. The third example describes the ZND structure of a detonation front, where unphysical waves are computed unless the CFL number is chosen suciently high or some adaptivity such as shock-tracking is included. Comments: I developed this method unaware of other, similar methods. On the other hand, since the idea is so intuitive, I was not surprised when discovering later the close resemblance with existing methods, such as the shock-tracking methods of LeVeque and Shyue [6] and Swartz and Wendro [72]. However, since `my' method has some unique features and the improvement in accuracy at a low cost is quite remarkable, reporting it here is justied. The results are quite new and the method should be explored more extensively in the future. Unfortunately, I doubt that the ideas presented here can be extended to multi-dimensions, as done by LeVeque and Shyue [6] for their shock-tracking method.

24 8 SUMMARY OF RESEARCH AND OVERVIEW OF RELATED WORK Paper VI: An Unconditionally Stable Splitting Scheme for a Class of Nonlinear Parabolic Equations Coauthor: Kenneth Hvistendahl Karlsen. In this paper, we extend the corrected operator splitting method of Hvistendahl Karlsen and Risebro [45] to a larger class of unsteady convection{diusion{reaction equations. The novel features are the source term and the inclusion of a spatially dependent velocity eld. Summary: We consider a class of nonlinear advection{diusion{reaction equations (7) u t + (V (x; t)f(u)) x = "u xx + h(x; t; u); (x; t) 2 IR h; T ]; with initial data u imposed at t =. Here the ux function f and the source term h are bounded, smooth functions of all their arguments and the initial data u is of bounded total variation. We use a standard operator splitting to construct approximate solutions. First, transform (7) to non-conservative form and denote the new source term Q(x; t; u) = h(x; t; u)? V (x; t) x f(u). Let S t, H t, and R t denote the solution operators associated with the hyperbolic equation v t + V (x; t)f(v) x =, the parabolic equation w t = "w xx, and the ordinary dierential equation z t = Q(x; t; z), respectively. Then the basic splitting takes the form (8) u(x; nt) R t H t S t nu : In the corresponding numerical method, we approximated S t by front tracking, H t by an explicit dierence scheme, and R t by the forward{euler method. The unique feature of the method is that the hyperbolic part is unconditionally stable. We verify that the numerical solutions are bounded, have bounded variation, and are Holder continuous in the time variable. Then a standard compactness argument gives convergence to a limit, which is veried to be the classical solution of (7). Although the splitting step is not restricted by a stability condition, we observe that when it is notably larger than the diusion scale, the scheme becomes too diusive. The reason is as follows. Assume for simplicity that V (x; t). For each sharp front in the solution, the hyperbolic solver uses only the convex/concave envelope of the ux function, as dictated by the entropy condition, i.e., locally it solves a linear advection equation u t + au x =, with a given by the Rankine-Hugoniot condition. The remaining nonlinear part of the ux function, which determines the local amount of self-sharpening, is thrown away. Fortunately, this residual ux term f res can be identied when using front tracking for the advection step. If the residual ux is taken into account via a separate correction step, where we solve u t +f res (u) x = locally around each major shock front, these fronts can be given the correct amount of self-sharpening. Notice that f res (u; x) is convex or concave for each x, and thus will give self-sharpening of fronts. Let C t denote the corresponding solution operator. Then the new splitting scheme reads (9) u(x; nt) R t C H t S t nu ; where t. For the numerical method, C can be approximated by front tracking. We show that this also produces a converging sequence of approximations by verifying that

25 PAPER VI 9 the solutions remain bounded, have bounded variation, and are Holder continuous in time. We then prove that the eect of the correction disappears as the discretization parameters tend to zero. Finally, we present two numerical examples. The rst example demonstrates that the numerical schemes are able to resolve the correct balance of advection and diusion. We also present an alternative splitting technique, in which the residual ux term is included in the diusion step, which then reads u t +V (x; t)f res (u; x) x = "u xx. Here we propose to solve this equation by a simple nite dierence method. We demonstrate that this approach and (9) give approximations that are superior to the ordinary splitting (8). In the second example, we consider a one-dimensional model for glacier growth. Here the splitting methods resolve the balance between advection, diusion, and reaction very well. In fact, we demonstrate that even for CFL numbers of magnitude, the corrected splitting method produces a good approximation to the growing glacier. Comments: The three-step splitting (8) was chosen for two reasons. First, we wished to single out the three dierent physical eects (advection, diusion, and reaction) in the analysis. Moreover, by isolating the eects, new numerical methods can easily be substituted in each of the three steps. However, in practise it would probably be wise to combine the reaction and diusion step, and choose from the host of methods designed for resolving reaction{diusion equations. Our suggestion of a simple nite dierence method has later proved to be better than we though at that time, since these methods can be made very ecient by using super time-stepping [] (see Paper VIII). The separate correction step was in accordance with the method proposed in [45]. In other papers, we have chosen to pursue the alternative, where the correction is included in the diusion step (see [43] and Papers VII and VIII). This latter splitting avoids choosing the parameter and has a nice physical interpretation. In the hyperbolic step, we move fronts to their correct location, and in the parabolic step we determine the shape of each front. With a separate correction step we rst move each front, overestimate the width, and then correct to obtain the right shape. Neglecting the source term, the glacier model in the second numerical example is a degenerate parabolic equation of the form () h t + f(h) x = "? a(h)h x x : In Paper VI, we simplied the equation by assuming that the function a(h) = ch 6 was equal a constant. Except for introducing extra regularity at the foot of the glacier front, this had little visual eect on the numerical solution. However, the mathematical eect is more dramatic in that the nite speed of propagation in the equation disappears. Operator splitting for equations of the form () has later been analysed by Evje and Karlsen [6] (see also Paper VIII) and ecient numerical methods have been developed for the corresponding parabolic step, see [42]. Today, we are therefore able to simulate equation (). Moreover, the analysis in [6] could probably be extended to the setting in Paper VI, but since it would produce little new insight, we have not thought it worthwhile to present the details here.

26 2 SUMMARY OF RESEARCH AND OVERVIEW OF RELATED WORK Paper VII: A Front{Tracking Approach to a Two-Phase Fluid{Flow Model with Capillary Forces Coauthors: Kenneth Hvistendahl Karlsen, Nils Henrik Risebro, and Johnny Fryen. This paper describes the application of the multidimensional corrected operator splitting introduced in [43] to some model problems in reservoir simulation. Summary: We consider a prototype two-phase uid-ow model with capillary forces. The model consists of two coupled partial dierential equations. However, using a standard technique in reservoir simulation, these can be decoupled and solved sequentially in a stepwise manner, often referred to as IMPES (IMplicit Pressure, Explicit Saturation). The elliptic pressure equation is solved using standard nite-elements and multigrid techniques. We will here focus on how to solve the parabolic saturation equation. In typical applications, the importance of advection versus diusion (capillary forces) may change rapidly during a simulation. The ow can be highly advection dominated in certain parts of the reservoir, whereas in other parts the diusion is more important. Still, several groups within the petroleum community argue that the capillary forces should be neglected. This has the advantage that one can use a sophisticated numerical method developed for hyperbolic problems. We advocate a novel operator splitting strategy that tries to maintain the advantages of one such method { front tracking { when the ow is highly advection dominated and at the same time is able to resolve diusion dominated ows. In this strategy, the saturation equation is decomposed into a hyperbolic conservation law for advection eects and a parabolic equation for diusive eects. In the hyperbolic step, only the advective nature of the ux is used and the nonlinear self-sharpening in the ux function is disregarded. Therefore, if the parabolic step only contains second-order spatial derivatives (capillary forces), as is the case in standard viscous operator splitting (OS), the simulated water fronts will be too wide. We demonstrate how to identify the disregarded residual ux dynamically and how to include it in the diusion equation. This ensures that self-sharpening fronts are given the correct structure. A Petrov{Galerkin nite-element method is used to solve the diusion equation. We call the new method corrected operator splitting (COS). We present two numerical examples. The rst is the well-known quarter ve-spot case, and the second is a water-ooding problem with multiple wells. The quarter ve-spot case demonstrates that unless the splitting step is chosen very small in OS, the method has excessive numerical diusion. COS on the other hand, resolves the water fronts accurately. Moreover, COS has a much smaller mass balance error. The same conclusion is drawn in the second example; COS has virtually no viscous splitting errors, whereas the error in OS is considerable at large time steps. Comments: Today, the use of a Petrov{Galerkin method in this paper can be seen mainly as a curiosity. Similar experiments, using a much simpler nite dierence method are reported in Paper VIII. More realism should, of course, be included in the model. We are currently exploring the operator splitting methodology for heterogeneous porous media. Furthermore, an

27 PAPER VIII 2 extension of the corrected operator splitting to systems was proposed by Natvig [66]. This will be explored further in the near future for the nonstrictly hyperbolic system modelling polymer ooding [38, 39, 4]. Paper VIII: Front Tracking and Operator Splitting for Nonlinear Degenerate Convection{Diffusion Equations Coauthors: Steinar Evje, Kenneth Hvistendahl Karlsen, and Nils Henrik Risebro. In this paper, we present an operator splitting strategy for unsteady convection{ diusion equations in multidimensions, possibly with a strong degeneracy in the diusion terms. The strategy is designed to handle all combinations of convection and diusion, including the purely hyperbolic case, and incorporates the multidimensional equations discussed in Papers II, III, and VII and [43] as special cases. Summary: Consider unsteady convection{diusion equations t u + dx xi F i (x; u) = " dx 2 x i A i (x; u); x 2 IR d ; t 2 h; T i; with initial data u(x; ) = u (x). Here u (x) is a bounded function of bounded total variation, F i and A i are suciently regular u A i is non-negative for all i. The small scaling parameter " > indicates convection dominated ow. u A i = for all u in an interval [; ] for some i, the equation is strongly degenerate and solutions can develop singularities in nite time. Weak solutions are not necessarily unique and one must require some admissibility criteria to single out physically correct solutions. The viscosity approach gives the following entropy condition: A bounded measurable function u(x; t) is an entropy weak solution of () if the t ju? kj+ xi sgn(u? k)(fi (x; u)? F i (x; k))? " i= + sgn(u? k)(f ixi (x; k)? "A ixi x i (x; k)) dx 2 x i ja i (x; u)? A i (x; k)j holds in the distributional sense for all k 2 IR. The notion of an entropy weak solution includes non-degenerate parabolic equations and parabolic equations with pointwise degeneracy, as well as hyperbolic conservation laws in the sense of Kruzkov [49]. We present a numerical method for a smaller class of equations written on the form t u + dx i= V i (x)@ xi f i (u) = " dx xi (a i (u)@ xi u) + G(x; u); where G =? P i V i(x) xi f i (u). Our numerical strategy is based on splitting (2) into a hyperbolic equation for the convective forces and a parabolic equation for diusive forces (and sources). We then try to reproduce the solution using ecient numerical methods for these simpler equations as building blocks.

28 22 SUMMARY OF RESEARCH AND OVERVIEW OF RELATED WORK We present two variants of such an operator splitting. Let S x i;h t denote the front tracking solution operator (see Paper I) associated with the one-dimensional hyperbolic conservation law at time t v + V i (x)@ xi f i (v) = ; x i 2 IR; t > : Similarly, let H x i;h t denote the explicit, central-dierence solution operator t w = "@ xi (a i (w)@ xi w) + G(x; w); x i 2 IR; t > and H x ;:::;x d ;h t the similar solution operator t w = " dx xi (a i (w)@ xi u) + G(x; w); x 2 IR d ; t > : Then we dene the two operator splitting methods u(x; nt) H x :::;x d ;h t S x d;h t S x ;h nu (3) t and (4) u(x; nt) H x d;h t S x d;h t H x ;h t S x ;h nu t ; where denotes the grid cell average operator on a Cartesian grid. Henceforth, the methods will be referred to as the unsplit (3) and the split (4) method respectively, due to their dierent treatment of the diusive forces. Both methods (3) and (4) can be used to generate approximate solutions to (2). In both cases, we can prove that there exists a subsequence converging almost everywhere in IR d h; T i to a bounded, measurable function that is the entropy weak solution of (2). We study the methods numerically in two spatial dimensions. For the dierence schemes, super time-stepping [] is used to speed up the computations. Two examples are presented. The rst example demonstrates the capability of handling equations with strongly degenerate diusion terms. The qualitative nature of such equations is poorly understood. Here we use the splitting methods to construct discontinuous entropy solutions for Burgers' equation with a degenerate diusion coecient ( ; for juj :25; a(u) = ; for juj > :25: We demonstrate how the qualitative nature of this mixed hyperbolic{parabolic problem diers from the pure hyperbolic problem for a(u) and the non-degenerate parabolic problem for a(u). The initial function is chosen such that the solutions are symmetric about the line x = y. A convergence study conrms that the unsplit method (3) has lower L error and better symmetry than the split method (4). However, the convergence rate is of order for both methods. Taking runtime into account, we conclude that the methods perform equally for a wide range of CFL numbers. Moreover, the observations regarding feasible

29 CONCLUSIONS 23 CFL numbers made in Papers II, III, and VII and [43] are conrmed here: plotting the L error versus runtime gives a minimum for CFL numbers between and 2. In the next example, we discuss the quarter ve-spot case from reservoir simulation. The example is a more up-to-date version of that presented in Paper VII. As in the rst example, the unsplit method (3) produces solutions with better symmetry than the split method (4). On the other hand, both methods suer from large temporal splitting errors that give excessive numerical diusion when large time steps are used. For the split method (4) we demonstrate how to utilize the corrected operator splitting method (see Papers VI and VII) in each spatial direction to obtain the correct balance of convection and diusion. Both splitting methods are ideal for parallel implementation. However, for a given computer architecture, there are important practical issues that have to be resolved. Comments: To the best of our knowledge, there exists no uniqueness result for the degenerate parabolic equation (). A thorough discussion of degenerate equations is given by Evje [5]. A paper giving an analysis of the splitting methods presented in this paper is in preparation. Furthermore, as pointed out above, work is in progress on exploring the splitting methods for heterogeneous porous media, assuming the spatially varying permeability to be represented in the velocity eld. An unsolved question, which should be investigated in the future, is how to extend the operator splitting technology to problems with discontinuous ux functions, as discussed by Gimse and Risebro [8, 9]. Conclusions As mentioned above, a unied numerical treatment of wide classes of equations has been a goal for us. Interpreted in a broad sense, we have achieved this goal, at least for scalar equations. Combining a front tracking approach for one-dimensional hyperbolic equation with various operator splittings to handle second-order and source terms, we are able to eciently solve large classes of equations, as discussed above. The most general approach so far is presented in Paper VIII. This approach is easily extended to equations of the form (including source t u + dx? Vi (x)@ xi f i (u) x i = " i= dx xi (a i (u)@ xi u) + G(x; u): However, the approach could probably still be extended to cover larger classes of scalar convection{diusion problems and there are still open questions remaining concerning the inclusion of source terms and boundary conditions. For systems of conservation laws, our current technology can be used to solve homogeneous and inhomogeneous problems in one and higher dimensions, provided the solution of the Riemann problem is known (and computable). Recently, the rst steps have been made towards including second order terms for simple systems (like the polymer system for secondary oil recovery) and this will be investigated further in the near future. Of course, such an approach has its limitations and is probably not especially useful for more complicated systems, like the full Navier{Stokes equations.

30 24 SUMMARY OF RESEARCH AND OVERVIEW OF RELATED WORK

31 Bibliography [] V. Alexiades, G. Amiez, and P. Gremaud. Super time-stepping acceleration of explicit schemes. Com. Num. Meth. Eng., 2:3{42, 996. [2] P. Baiti and H. K. Jenssen. On the front tracking algorithm. J. Math. Anal. Appl., 27:395{44, 998. [3] L. M. Barker. Swap a computer program for shock wave analysis. Technical Report No. SC4796(RR), Sandia Nat. Labs., Albuquerque, New Mexico, 963. [4] F. Bratvedt, K. Bratvedt, C. F. Buchholz, T. Gimse, H. Holden, L. Holden, R. Olufsen, and N. H. Risebro. Three-dimensional reservoir simulation based on front tracking. In North Sea Oil and Gas Reservoirs { III, pages 247{257. Kluwer Academic Publishers, 994. [5] F. Bratvedt, K. Bratvedt, C. F. Buchholz, T. Gimse, H. Holden, L. Holden, and N. H. Risebro. FRONTLINE and FRONTSIM: two full scale, two-phase, black oil reservoir simulators based on front tracking. Surveys Math. Indust., 3(3):85{25, 993. [6] F. Bratvedt, K. Bratvedt, C. F. Buchholz, L. Holden, H. Holden, and N. H. Risebro. A new fronttracking method for reservoir simulation. SPE Journal, 7():7{6, 992. [7] A. Bressan, G. Crasta, and B. Piccoli. Well-posedness of the Cauchy problem for n n systems of conservation laws. Mem. Amer. Math. Soc. To appear. [8] A. Bressan and P. LeFloch. Uniqueness of weak solutions to systems of conservation laws. Arch. Rational Mech. Anal., 4(4):3{37, 997. [9] A. J. Chorin. Random choice solution of hyperbolic systems. J. Computational Phys., 22(4):57{533, 976. [] R. Courant and K. O. Friedrichs. Supersonic ow and shock waves. Springer-Verlag, New York, 976. Reprinting of the 948 original, Applied Mathematical Sciences, Vol. 2. [] C. M. Dafermos. Polygonal approximation of solutions of the initial value problem for a conservation law. J. Math. Anal. Appl., 38:33{4, 972. [2] H. K. Dahle. Adaptive characteristic operator splitting techniques for convection-dominated diusion problems in one and two space dimensions. PhD thesis, Department of Mathematics, University of Bergen, 988. [3] B. Engquist, P. Lotstedt, and B. Sjogreen. Nonlinear lters for ecient shock computation. Math. Comp., 52(86):59{537, 989. [4] M. S. Espedal and R. E. Ewing. Characteristic Petrov-Galerkin subdomain methods for two-phase immiscible ow. Comput. Methods Appl. Mech. Engrg., 64:3{35, 987. [5] S. Evje. Numerical Approximation of Nonlinear Degenerate Convection-Diusion Equations. Dr. scient thesis, Department of Mathematics, University of Bergen, Norway, 998. [6] S. Evje and K. H. Karlsen. Viscous splitting approximation of mixed hyperbolic-parabolic convectiondiusion equations. Report, Institut Mittag{Leer, 997/98. [7] T. Gimse. Conservation laws with discontinuous ux function. SIAM J. Math. Anal., 24(2):279{289, 993. [8] T. Gimse and N. H. Risebro. Riemann problems with a discontinuous ux function. In Proc. 3rd Internat. Conf. Hyperbolic Problems, pages 488{52, Uppsala, 99. Studentlitteratur. [9] T. Gimse and N. H. Risebro. Solution of the Cauchy problem for a conservation law with a discontinuous ux function. SIAM J. Math. Anal., 23(3):635{648,

32 26 BIBLIOGRAPHY [2] E. Godlewski and P.-A. Raviart. Hyperbolic systems of conservation laws, volume 3/4 of Mathematiques & Applications [Mathematics and Applications]. Ellipses, Paris, 99. [2] E. Godlewski and P.-A. Raviart. Numerical approximation of hyperbolic systems of conservation laws, volume 8 of Applied Mathematical Sciences. Springer-Verlag, New York, 996. [22] V. Haugse. Measurement of relative permeability on anisotropic poerous samples. In preparation. [23] G. W. Hedstrom. Some numerical experiments with Dafermos's method for nonlinear hyperbolic equations. In Numerische Losung nichtlinearer partieller Dierential- und Integrodierentialgleichungen (Tagung, Math. Forschungsinst., Oberwolfach, 97), pages 7{38. Lecture Notes in Math., Vol Springer, Berlin, 972. [24] G. W. Hedstrom. The accuracy of Dafermos' method for nonlinear hyperbolic equations. In Proceedings of Equadi III (Third Czechoslovak Conf. Dierential Equations and their Applications, Brno, 972), pages 75{78. Folia Fac. Sci. Natur. Univ. Purkynianae Brunensis, Ser. Monograph., Tomus. Purkyne Univ., Brno, 973. [25] R. Holdahl. Front tracking for the shallow water equations. Diploma thesis, Department of Mathematical Sciences. Norwegian University of Science and Technology, 998. [26] R. Holdahl, H. Holden, and K.-A. Lie. Unconditionally stable splitting methods for the shallow water equations. Manuscript. [27] H. Holden and L. Holden. On scalar conservation laws in one-dimension. In S. Albeverio, J. E. Fenstad, H. Holden, and T. Lindstrm, editors, Ideas and Methods in Mathematics and Physics, pages 48{59. Cambridge University Press, Cambridge, 988. [28] H. Holden, L. Holden, and R. Hegh-Krohn. A numerical method for rst order nonlinear scalar conservation laws in one-dimension. Comput. Math. Applic., 5(6{8):595{62, 988. [29] H. Holden, L. Holden, and N. H. Risebro. Some qualitative properties of 2 2 systems of conservation laws of mixed type. In B. L. Keytz and M. Shearer, editors, Nonlinear evolution equations that change type, volume 27 of IMA Vol. Math. Appl., pages 67{78. Springer, New York, 99. [3] H. Holden and N. H. Risebro. Front tracking for conservation laws. Department of Mathematics, Norwegian University of Science and Technology. Lecture Notes. [3] H. Holden and N. H. Risebro. A mathematical model of trac ow on a network of roads. In Nonlinear hyperbolic problems: theoretical, applied, and computational aspects (Taormina, 992), volume 43 of Notes Numer. Fluid Mech., pages 329{335. Vieweg, Braunschweig, 993. [32] H. Holden and N. H. Risebro. A method of fractional steps for scalar conservation laws without the CFL condition. Math. Comp., 6(2):22{232, 993. [33] H. Holden and N. H. Risebro. A mathematical model of trac ow on a network of unidirectional roads. SIAM J. Math. Anal., 26(4):999{7, 995. [34] H. Holden and N. H. Risebro. Conservation laws with a random source. Appl. Math. Optim., 36(2):229{ 24, 997. [35] L. Holden. The Buckley-Leverett equation with spatially stochastic ux function. SIAM J. Appl. Math., 57(5):443{454, 997. [36] L. Hormander. Lectures on nonlinear hyperbolic dierential equations, volume 26 of Mathematiques & Applications [Mathematics & Applications]. Springer-Verlag, Berlin, 997. [37] G.-S. Jiang and E. Tadmor. Non-oscillatory central schemes for multidimensional hyperbolic conservation laws. Report 96-36, UCLA CAM, 996. To appear in SIAM J. Sci. Comput. [38] T. Johansen and R. Winther. The solution of the Riemann problem for a hyperbolic system of conservation laws modelling polymer ooding. SIAM J. Math. Anal., 9:54{566, 988. [39] T. Johansen and R. Winther. The Riemann problem for multicomponent polymer ooding. SIAM J. Math. Anal., 2(4):98{929, 989. [4] T. Johansen, R. Winther, and A. Tveito. A Riemann solver for a two-phase multicomponent process. SIAM J. Sci. Stat. Comput., (5):846{879, 989. [4] K. H. Karlsen. On the accuracy of a dimensional splitting method for scalar conservation laws. Master's thesis, Department of Mathematics, University of Oslo, 994.

33 BIBLIOGRAPHY 27 [42] K. H. Karlsen. Numerical Solution of Nonlinear Convection-Diusion Equations: Operator Splitting, Front Tracking and Finite Dierences. Dr. scient thesis, Department of Mathematics, University of Bergen, Norway, 998. [43] K. H. Karlsen, K. Brusdal, H. K. Dahle, S. Evje, and K.-A. Lie. The corrected operator splitting approach applied to a nonlinear advection{diusion problem. Comput. Methods Appl. Mech. Engrg. To appear. [44] K. H. Karlsen, K.-A. Lie, and N. H. Risebro. A front tracking method for conservation laws with boundary conditions. Preprint. Mathematics 3, Norwegian University of Science and Technology, Trondheim, Norway, 998. [45] K. H. Karlsen and N. H. Risebro. Corrected operator splitting for nonlinear parabolic equations. Preprint 8, Department of Applied Mathematics. University of Bergen, N-57 Bergen, Norway, 997. Available at the URL [46] K. H. Karlsen and N. H. Risebro. An operator splitting method for convection-diusion equations. Numer. Math., 77(3):365{382, 997. [47] C. Klingenberg and N. H. Risebro. Convex conservation laws with discontinuous coecients. Existence, uniqueness and asymptotic behavior. Comm. Partial Dierential Equations, 2(-2):959{99, 995. [48] D. Kroner. Numerical schemes for conservation laws. Wiley-Teubner Series Advances in Numerical Mathematics. John Wiley & Sons Ltd., Chichester, 997. [49] S. N. Kruzkov. First order quasi-linear equations in several independent variables. Math. USSR Sbornik, (2):27{243, 97. [5] N. N. Kuznetsov. Accuracy of some approximative methods for computing the weak solutions of a rst-order quasi-linear equation. USSR Comput. Math. and Math. Phys. Dokl., 6(6):5{9, 976. [5] J. O. Langseth. On an implementation of a front tracking method for hyperbolic conservation laws. Advances in Engineering Software, 26():45{63, 996. [52] J. O. Langseth. Wave Propagation Schemes, Operator Splitting, and Front Tracking for Hyperbolic Conservation Laws. Dr scient thesis, Department of Informatics, University of Oslo, 996. [53] J. O. Langseth and R. J. LeVeque. A wave propagation method for three-dimensional hyperbolic conservation laws. Available at the URL [54] J. O. Langseth, N. H. Risebro, and A. Tveito. A conservative front tracking scheme for D hyperbolic conservation laws. In A. Donato and F. Oliveri, editors, Nonlinear Hyperbolic Problems: Theoretical, Applied, and Computational Aspects (Taormina, 992), volume 43 of Notes Numer. Fluid Mech., pages 385{392. Vieweg, Braunschweig, 993. [55] J. O. Langseth, A. Tveito, and R. Winther. On the convergence of operator splitting applied to conservation laws with source terms. SIAM J. Numer. Anal., 33(3):843{863, 996. [56] R. J. LeVeque. clawpack software. Available from netlib.att.com in netlib/pdes/claw/ or at the URL [57] R. J. LeVeque. Large time step shock-capturing techniques for scalar conservation laws. SIAM J. Numer. Anal., 9(6):9{9, 982. [58] R. J. LeVeque. A large time step generalization of Godunov's method for systems of conservations laws. SIAM J. Numer. Anal., 22(6):5{73, 985. [59] R. J. LeVeque. Numerical Methods for Conservation Laws. Lectures in Mathematics. ETH Zurich. Birkhauser Verlag, Basel, second edition, 992. [6] R. J. LeVeque and K. M. Shyue. One-dimensional front tracking based on high resolution wave propagation methods. SIAM J. Sci. Comput., 6(2):348{377, 995. [6] R. J. LeVeque and K.-M. Shyue. Two-dimensional front tracking based on high resolution wave propagation methods. J. Comput. Phys., 23(2):354{368, 996. [62] R. Liska and B. Wendro. Composite schemes for conservation laws. To appear in SIAM J. Numer. Anal.

34 28 BIBLIOGRAPHY [63] R. Liska and B. Wendro. 2d shallow water equations by composite schemes. Technical Report LAUR , Los Alamos National Laboratories, Los Alamos, 997. [64] B. J. Lucier. A moving mesh numerical method for hyperbolic conservation laws. Math. Comp., 46(73):59{69, 986. [65] J. Malek, J. Necas, M. Rokyta, and M. R uzicka. Weak and measure-valued solutions to evolutionary PDEs, volume 3 of Applied Mathematics and Mathematical Computation. Chapman & Hall, London, 996. [66] J. Natvig. Operatorsplitting baser pa frontflging for polymersystemet. Diploma thesis, Department of Mathematical Sciences. Norwegian University of Science and Technology, 998. In Norwegian. [67] J. J. Quirk. A contribution to the great Riemann solver debate. Internat. J. Numer. Methods Fluids, 8(6):555{574, 994. [68] N. H. Risebro. A front{tracking alternative to the random choice method. Proc. Amer. Math. Soc, 7(4):25{29, 993. [69] N. H. Risebro and A. Tveito. Front tracking applied to a nonstrictly hyperbolic system of conservation laws. SIAM J. Sci. Stat. Comput., 2(6):4{49, 99. [7] N. H. Risebro and A. Tveito. A front tracking method for conservation laws in one dimension. J. Comp. Phys., ():3{39, 992. [7] J. Smoller. Shock Waves and Reaction{Diusion Equations. Number 258 in Grundlehren der mathematischen Wissenschaften. Springer{Verlag, New York, Heidelberg, Berlin, rst edition, 983. [72] B. K. Swartz and B. Wendro. AZTEC: a front tracking code based on Godunov's method. Appl. Numer. Math., 2(3-5):385{397, 986. [73] P. Tao and L. Long Wei. The global solution of the scalar nonconvex conservation law with boundary conditions (continuation). Preprint. [74] P. Tao and L. Longwei. The global solution of the scalar nonconvex conservation law with boundary conditions. J. Partial Di. Eqs., 8(4):37{383, 995. [75] E. F. Toro. Riemann Solvers and Numerical Methods for Fluid Dynamics. Springer, Berlin Heidelberg, 997. [76] O. Vignes. Application of Optimization Methods in Oil Recovery Problems. Dr. ing. thesis, Department of Mathematics, Norwegian Institute of Technology, 993. [77] G. B. Whitham. Linear and nonlinear waves. Wiley-Interscience [John Wiley & Sons], New York, 974. Pure and Applied Mathematics. [78] P. Woodward and P. Colella. The numerical simulation of two-dimensional uid ow with strong shocks. J. Comp. Phys., 54(5):5{73, 984. [79] Y. S. Zheng. A note on Dafermos' polygonal approximation method. J. Math. Res. Exposition, 4():65{ 66, 984. (In Chinese).

35 Paper I Front Tracking for One-Dimensional Nonlinear Advection Equations with Variable Coecients Knut{Andreas Lie

36

37 FRONT TRACKING FOR ONE-DIMENSIONAL NONLINEAR ADVECTION EQUATIONS WITH VARIABLE COEFFICIENTS KNUT{ANDREAS LIE Abstract. A new front tracking method is developed for the variable coecient equation u t + V (x; t)f(u) x =. The method is a generalization of Dafermos' method for the constant coecient case and is well-dened also for certain discontinuous velocities V. We give an explicit inequality stating the stability with respect to ux function, velocity, and initial data. The numerical method is unconditionally stable and has linear convergence. It is well suited for numerical calculations, as is demonstrated in three examples. (). Introduction We consider the nonlinear, variable coecient equation u t + V (x; t)f(u) x = ; u(x; ) = u (x): This equation describes the nonlinear advection of a scalar quantity u in a one-dimensional velocity eld V (x; t). A motivation for this study is that () occurs as an essential step in various operator splittings; for instance, dimensional splitting for multi-dimensional, variable coecient equations [], two-phase ow with capillary forces [8], and convection{ diusion equations [7]. The focus here will be on the following two questions: How is a numerical approximation to a possibly discontinuous solution of () computed eciently? Moreover, how does the solution depend on ux function, velocity, and initial data? Existence and uniqueness of discontinuous solutions were proved by Kruzkov [9] under certain requirements for a more general equation. He proposed an entropy condition to identify the unique physical solution. Dafermos [2] suggested a method to study initial value problems for the nonlinear hyperbolic equation u t + f(u) x =. He observed that given a piecewise linear ux function, the solution of the Riemann problem only contains constant states separated by discontinuities moving along straight lines. Therefore, if the initial data are piecewise constant, a local solution can be found by superposition of simple Riemann problems. The solution will remain piecewise constant for all time, since all wave interactions lead to new Riemann problems. By solving these Riemann problems, a global solution can be established for any piecewise linear ux function. This was proved by Holden, Holden and Date: April 3, Mathematics Subject Classication. 35L6, 65M2, 65M5, 65M99. Key words and phrases. Variable coecients, scalar conservation laws, front tracking, error analysis, numerical methods. My research has been supported by the Research Council of Norway under grant 555/4.

38 2 KNUT{ANDREAS LIE Hegh{Krohn [5, 6], who veried that given a nite number of constant states in the initial data, there is only a nite number of constant states for all time. Hence, the algorithm is well-dened and has a nite number of steps, even in innite time! In the general case, approximating an arbitrary f by a sequence of piecewise linear functions and u by a sequence of step functions gives a compact sequence of approximate solutions converging to the solution of the Cauchy problem. The algorithm naturally leads to a numerical method called front tracking. The method is rst order, it has no associated time step, and has proved to be very ecient. We show how these ideas carry over to the variable coecient equation (). The Riemann problem for this equation has the same permissible discontinuities as u t + f(u) x =, but instead of following straight lines, the discontinuities travel along paths satisfying an ordinary dierential equation. By carefully choosing an approximation to the velocity, one is able to compute these paths explicitly. The form of the shock paths is not essential to Dafermos' method, and it can therefore be extended to the variable coecient case. We show that the new method is well-dened under some mild restrictions on the velocity V, and that it can be used to obtain a sequence of approximations converging to the weak entropy solution of the Cauchy problem () in the sense of Kruzkov [9]. For V = V (x) an obvious alternative would be to transform () = Although would work well if V has constant sign, we believe that it gets rather cumbersome when V changes sign in the domain. Moreover, how to dene a similar approach for time dependent velocities is a dicult task, if possible, and we will therefore not pursuit it further here. Using the Kruzkov entropy condition, we turn to investigate how solutions are sensitive to changes in ux function, velocity, and initial data. Our analysis is inspired by a theorem proved by Lucier [2] for the constant coecient case. The dependence result can then be applied to prove stability and linear convergence of the new front tracking scheme. The outline of the paper is as follows. In x2 a sequence of approximate weak solutions are constructed. We show that the limit is the unique entropy solution in the Kruzkov sense, thus giving a partial answer to our rst question. In x3, the second question is fully answered in the form of an explicit inequality stating the stability of solutions with respect to f, V, and u. The rst question is answered in x4, which contains a more thorough discussion of the front tracking construction used as a numerical method. Using the stability result from x3 we verify that the method has linear convergence. In x5 three numerical examples are discussed. 2. Construction of a Weak Solution Kruzkov [9] proved the existence of an entropy solution having a linear modulus (i.e., bounded variation) for the more general equation (2) u t + d '(x; t; u) + (x; t; u) = dx under certain assumptions on ' and. He suggested an entropy condition to identify the unique physical solution: u is an entropy solution of (2), if for all constants k and all

39 A FRONT TRACKING METHOD 3 2 C, the following inequality is valid ZZ ju? kjt + sgn(u? k)['(x; t; u)? '(x; t; k)] x D T? sgn(u? k)[' x (x; t; k)? (x; t; u)] dxdt Z + ZR ju(x; )? kj(x; ) dx? ju(x; T )? kj(x; T ) dx: R This condition both denes a generalised (or weak) solution, and characterises permissible discontinuities. For continuous velocities, equation () may be transformed without changing the generalized solutions by adding and subtracting a term V x (x; t)f(u) to yield an equation on the general form (2),? V (x; t)f(u)? Vx (x; t)f(u) = : u Recall that for smooth velocities a weak solution of () is dened to satisfy Z Z? Z (3) ut + f(u) V (x; t) x R dtdx + u(x; )(x; ) dx = R for an arbitrary test function. If V (x; ) is merely Lipschitz continuous, the weak solution can be dened similarly. This follows from a standard argument in which we replace V by a smooth approximation V " =! " V and then subsequently let " tend to zero. Here! " is a standard mollier function. In this case, (V (x; t)) x denotes the generalized derivative (this notation will be assumed throughout the paper). With piecewise constant initial data, the initial value problem () is decomposed into a sequence of simple Riemann problems of the form ( u? ; when x < u (x) = u + ; when x > : Generally, Riemann problems admit both smooth waves (rarefactions) and discontinuities (shocks). However, for a piecewise linear ux function the solution is a step function where rarefactions coincide with sequences of (small) shocks. A weak solution is not necessarily unique. To get a unique solution, an entropy condition must be introduced. Here we use a simplied version of a condition proposed by Oleinik [4]. Let u be between u + and u?. Then the jump from u? to u + is permissible provided sgn V (x; t) f(u)? f(u+ ) s sgn V (x; t) sgn V (x; t) f(u)? f(u? ) (4) u? u + u? u? ; for u between u? and u +. The associated shock speed s is given by s = (f(u + )? f(u? ))=(u +? u? ): If V is positive, the entropy condition is the same as for u t + f(u) x =. For a negative velocity, we can replace f by?f and V by?v, or in other words, change the role of the upper and the lower convex envelope when determining f c. Thus, the permissible shocks

40 4 KNUT{ANDREAS LIE are similar to those for the constant coecient case, but the shock curves are no longer straight lines. However, as we shall see later, they are possible to compute explicitly in certain cases. Next, we outline the exact solution of the Riemann problem, assuming for simplicity that V (x; t) >. Suppose that u? < u + and let f c denote the lower convex envelope of f relative to the interval [u? ; u + ]. The case u? > u + is treated symmetrically, with f c denoting the upper concave envelope. Since f is piecewise linear, then so is f c. Let fu i g N i= denote the breakpoints of f c, such that u = u? and u N = u +. Then the solution of the Riemann problem is u(x; t) = 8 >< >: u ; for x < x (t) u i ; for x i? (t) x x i (t); i = 2; : : : ; N? ; u N ; for x > x N? (t); where each x i (t) satises a Rankine{Hugoniot condition dx i dt = V (x fc (u i+ )? f c (u i ) (5) i; t) = V (x i ; t)s i : u i+? u i There exists a unique shock path satisfying the ordinary dierential equation (5). If the function V (x; t) has a simple form the shock paths can be computed explicitly. For instance, if V = V (x) = (ax + b) for nonzero a, the path of a shock with speed s starting from x at time t is given by x(t) =? x + b a exp as(t? t )? b a : Similarly, if V = V (t) = (ct + d), the path is given by x(t) = s? 2 ct2 + dt? s? 2 ct2 + dt : To avoid solving dierential equations for each shock path, we therefore consider velocities on the above form; that is, either piecewise linear in x and piecewise constant in t, or piecewise constant in x and piecewise linear in t. Other approximations are also possible. If the velocity has constant sign, the construction of a weak solution from Holden et al. [6] can be repeated, only modifying the shock paths according to (5): Connect the solutions of the local Riemann problems to compute the (global) solution of the initial value problem up to the rst time when two waves from neighbouring Riemann problems interact. This interaction denes a new Riemann problem with left and right states given by the values immediately to the left and to the right of the collision point. The Riemann problem is then solved as outlined above, thereby giving the global solution until the next interaction occurs, and so on. When V changes sign, special care has to be taken as the entropy condition depends on the sign of V. Assume rst that V = V (x). Since waves cannot cross a point or a region of zero velocity, domains with dierent sign of the velocity are not connected. Moreover, we see that V (x) can also contain discontinuities, as long as the sign is preserved across each

41 A FRONT TRACKING METHOD 5 jump. This follows if V is replaced by a smooth approximation. Hence the only restriction is that sgn V (x? ) = sgn V (x + ) at every point of discontinuity. Assume now that V = V (t). At points t = where the velocity changes sign we simply `restart' the algorithm with initial data u(x;? ) and use sgn V ( + ) in the entropy condition to determine which envelope to choose for each initial Riemann problem. Finally, if the velocity is zero in an interval, V (t) = for t 2 [t ; t 2 ], then the solution remains constant in this interval, u(x; t) = u(x; t? ). Similarly, the algorithm can be dened for arbitrary V (x; t) satisfying the two requirements above. Summing up, we have the following result Lemma 2.. Suppose that f is continuous and piecewise linear and that u is a bounded step function of bounded variation. Furthermore, suppose that V is bounded and piecewise linear/constant in x; t and satises the two properties: (i) sgn V (x? ; t) = sgn V (x + ; t) at every point of discontinuity, (ii) for each nite < T there is a nite number of 's less than T such that sgn V (x;? ) is not equal sgn V (x; + ) for some x. Then the solution of equation u t + V (x; t)f(u) x = can be computed by the front tracking algorithm. The solution u(x; t) is a step function for xed times t, and u(x; t) 2 fu g [ fujf is discontinuous at ug. Gimse and Risebro [3, 4] investigated a related problem corresponding to a piecewise constant velocity in the equation u t + (V (x)f(u)) x =. They constructed a weak solution, and proposed another condition, called minimum jump, to ensure uniqueness. Next, we show that the construction above is well-dened. Let u < u 2 < < u M be the values u can take. A curve of discontinuity of u is called a shock front or simply a front. A shock front where u has the value u i on one side and u j on the other side, is said to contain ji? jj shock lines. The following result can be proved by slightly modifying the proof of Theorem 2. in Holden et al. [6]: Lemma 2.2. Let f i g be all the points such that sgn V (x;? i ) is not equal sgn V (x; + i ). Let N be the number of intervals where f is linear. Let L(t) be the number of shock lines in u(; t) and F (t) the number of shock fronts. Then the function G(t) = L(t)N + F (t) is strictly decreasing for every shock collision in the intervals t 2 ( i ; i+ ). The result means that the total number of shock fronts is bounded between each restart in the algorithm. If u has a nite number of steps, and if f is linear on a nite number of intervals, u(x; t) is constant on a nite number of domains. Suppose that jv j < M and jf j < K. Then the values of u outside the interval [x? MKt; x + MKt] does not inuence u(x; t). So, even for an innite number of steps in u, the construction is well-dened provided the number of restarts is nite. The solution satises a maximum principle by construction, kuk ku k. Furthermore, all waves have nite speed of propagation and the L -norm is therefore Lipschitz continuous, ku(t 2 )? u(t )k Cjt 2? t j. A rened argument shows that the total number

42 6 KNUT{ANDREAS LIE of shock lines L(t) in u(; t), which is a measure on the total variation, is diminishing. When two or more fronts collide, at least three values must meet. Let u ; : : : ; u K be the values that meet in the collision. After the collision, there will be at least one new shock front, unless the values u and u K are equal. When u = u K, all the intermediate values disappear and the total variation decreases in the collision. If the collision produces new shocks, u will be the value to the left of the leftmost shock and u K the value to the right of the rightmost shock, and the values in between will form a monotone sequence. Accordingly, all of the values u 2 ; : : : ; u K? that are not between u and u K disappear and the total variation decreases. At each restart in the algorithm the wave structure may change, but this does not increase the total variation. The observations can be summarized in the following lemma: Lemma 2.3. Suppose that f is continuous and piecewise linear, V is as in Lemma 2., and u is a bounded step function of bounded variation. Then the solution of u t +V (x; t)f(u) x = satises (i) a maximum principle, kuk ku k, (ii) Lipschitz continuity of the L -norm, ku(t 2 )? u(t )k Cjt 2? t j, (iii) TVD-property, TV(u) TV(u ). In the general case we can approximate f by a piecewise linear function, u by a piecewise constant function, and V by a piecewise linear or a piecewise constant function in x and t. This will give a family fu (t)g of approximate solutions. Now by using Lemma 2.3 and a standard application of Helly's theorem (see for instance Ref. [3]), we can show that there exists a convergent subsequence of fu (t)g. Moreover, this sequence converges in L loc (R [; T ]) for any T >, and the limit u(x; t) is the solution of (). The above construction is valid for all velocities that are continuous in x and possibly discontinuous in t, since each shock path then is the solution of a Caratheodory dierential equation. The velocity may be discontinuous in x as long as the sign is preserved across each discontinuity. We can now prove that both the approximate solutions and the limit satisfy a Kruzkov entropy condition. By construction, an approximate solution is constant within the subdomain bounded by the shock paths (and the lines t = and t = i ). Choose a domain D such that it contains only one shock curve x(t), see Figure. The solution is constant and therefore smooth in D, except along the curve x(t). Assume that it attains the values u + and u? in D + and D?, respectively. Let be a test function with compact support in D. By construction, the solution then satises equation (3). The same is true for any constant k. Choosing k > sup u(x; t), gives sgn(u? k) =? and ju? kj = k? u. The (in)equality is then derived by subtracting (3) with u from (3) with k = ZZ D ju? kjt + sgn(u? k)[f(u)? f(k)]? V (x; t) x dtdx: A similar argument is valid for k < inf u(x; t), and it remains to establish the inequality for k 2 [inf u(x; t); sup u(x; t)]. We substitute u = k in (4), multiply by jv (x; t)j, and use

43 A FRONT TRACKING METHOD 7 D - x(t 2) D t D8 D7 D + D6 x(t ) D D2 D3 D4 D5 x(t) x Figure. (Left) Domain for integration around a shock curve. (Right) The global domain divided into subdomains. The solid lines are shock curves and the dotted lines boundaries between subdomains. the Rankine-Hugoniot condition (5). The entropy condition now reads V (x; t) f(u+ )? f(k) u +? k dx dt V (x; )? f(k) t)f(u? u?? k for any constant k between u + and u?. This inequality may be further rearranged to?ju +? kj dx dt + sgn(u+? k)[f(u + )? f(k)]v (x; t)?ju?? kj dx dt + sgn(u?? k)[f(u? )? f(k)]v (x; t): We multiply by a test function, integrate the inequality along x(t) from t to t 2, and use the divergence theorem to derive the desired inequality on the domain D = sgn(u?? k)(x; t) u?? k; [f(u? )? f(k)]v (x(t); t) ds Z + sgn(u +? k)(x; t) u +? k; [f(u + )? f(k)]v (x(t); t) + ZZ +? ju? kjt + sgn(u? k)[f(u)? f(k)] V (x; t) dxdt: x D Hence, entropy inequality is established on D. The next step is to divide the global domain into a countable number of subdomains D i, as in Figure, and use the above inequality for each subdomain. Note that the compact support of in D i was superuous, since contributions along the boundaries of subdomains cancel when added together. The only exceptions are along the lines t = and t = T.

44 8 KNUT{ANDREAS LIE Hence, we have veried that the constructed solution satises the Kruzkov condition ZZ (6) Z + ZR ju(x; )? kj(x; ) dx? ju(x; T )? kj(x; T ) dx: R By using the bounded convergence theorem for Lebesgue integrals, the same result follows in the general case if V is continuous in x. This gives an alternative proof of the existence of a solution of () satisfying the entropy condition (6). D T ju? kjt + sgn(u? k)[f(u)? f(k)]? V (x; t) x dtdx 3. Continuous Dependence We now investigate how the variable coecient equation () is sensitive to changes in ux function, velocity, and initial data. In other words, we determine the dierence in L {norm for solutions of the two equations (7) (8) u t + U(x; t)f(u) x = ; v t + V (x; t)g(v) x = ; u(x; )= u (x); v(x; ) = v (x): The corresponding entropy conditions are on the form (6). Here v, V, and g are considered as perturbations of u, U, and f. Assume that U and V are continuous and possess derivatives U x and V x. Let D T denote the domain R [; T ]. Once we have establish continuous dependence, an error bound follows immediately as we will see in x4. Let us rst construct a suitable class of test functions. Assume that! 2 C (R) is a nonnegative, even function such that R R!(x)dx =, sgn(x)! (x), and!(x) for jxj. Then R R jxj j! (x)jdx =. For any " > dene the function! " (x) = "?!(x="). Then there is a constant M!, independent of ", such that j! " (x)j M! =" and j! "(x)j M! =" 2 for all x. Based on! ", we construct test functions " = " (x? ; t? ) =! " (x? )! " (t? ): For later use, introduce the following shorthand notations F (w; z) = sgn(w? z)[f(w)? f(z)];? " (w; z) = ZZ R 2 jw(x)? z(y)j! " (x? y) dxdy: Choose test function " and constant v(y; ) in the entropy condition for (7). After integration with respect to and y, it reads ZZ D T + ZZ D T ju(x; t)? v(y; )j " t + F (u(x; t); v(y; ))? U(x; t) " x Z T? " (u(; ); v(; ))! " () d? Z T dtdxddy? " (u(; T ); v(; ))! " (T? ) d:

45 A FRONT TRACKING METHOD 9 Similarly, let the entropy condition for (8) be given in the variables (y; ), choose k = u(x; t), and integrate with respect to x and t to get a similar inequality. Note that " x =?" y and " t =? ". Taking this and the symmetry of " into account, we add the two integrated entropy conditions to obtain Z T? " (u(; T ); v(; ))! " (T? ) d + Z T + + Z T? " (u(; ); v(; ))! " (? ) d + ZZ D ZZ T ZZ? " (v(; T ); u(; t))! " (T? t) dt Z T? " (v(; ); u(; t))! " (? t) dt " x F (u(x; t); v(y; ))U(x; t)? G(u(x; t); v(y; ))V (y; ) dtdxddy D ZZ T " F (u(x; t); v(y; ))U x (x; t) + G(u(x; t); v(y; ))V y (y; ) dtdxddy: D T D T The inequality above may be written as (9) L (") + L 2 (") R (") + R 2 (") + R 3 (") + R 4 ("): The dependence result will follow by bounding the terms as " tends to zero. Starting with the left-hand side, we can show that lim "! L (") = 2 Z ju(x; T )? v(x; T )j dx: R First, recall that! " has compact support for jxj ", and integrates to unity. Hence it is obvious that R T! "(T? t) dt = =2. Then observe that L (")? 2 Z M! " Z R R ju(x; T )? v(x; T )j dx Z T T?" jv(y; )? v(y; T )j dyd + M! 2 " Z R Z x+" x?" jv(x; T )? v(y; T )j dydx: Using a lemma proved by Kruzkov [9, Lemma 2] we see that both terms on the right-hand side of the inequality tend to zero with ". A similar argument may be used to prove that lim L (") + L 2 (") = "! R (") + R 2 (") = lim "! Z Z R ju(x; T )? v(x; T )j dx = ku(; T )? v(; T )k ; R ju(x; )? v(x; )j dx = ku? v k :

46 KNUT{ANDREAS LIE For R 4 (") we observe that ZZ jr 4 (")j " jf(u(x; t))? f(v(y; ))jju x (x; t)j dtdxddy D T + ZZ ZZ D T ZZ " jg(u(x; t))? g(v(y; ))jjv y (y; )j dtdxddy? D T D T ZZ kfk Lip ku x k + kgk Lip kv x k ZZ " ju(x; t)? v(y; )j dtdxddy D T D T and repeat the argument used for L (") to yield the upper bound lim "! jr 4 (")j? kfk Lip ku x k + kgk Lip kv x k Z T ku(; t)? v(; t)k dt: The remaining term R 3 (") must be split into two terms R 3 (")+R 32 ("), one with a dierence in velocities and one with a dierence in ux functions. There are two possible ways of rearranging the integrand F U? GV = F (U? V ) + (F? G)V = G(U? V ) + (F? G)U: Here we choose the rst form. Because the two velocities U and V in R 3 (") are evaluated at dierent variables (x; t) and (y; ), R this term must be further rearranged. Since! " has compact support, it is obvious that R h(y)! "(x)dx = for any integrable function h. Thus R 3 (") may be rewritten as follows R 3 (") = = ZZ D ZZ T ZZ D ZZ T F (u(x; t); v(y; ))[U(x; t)? V (y; )] " x (x? y; t? ) dtdxddy F (u(x; t); v(y; ))[U(x; t)? V (y; )] D T D T? F (u(y; t); v(y; ))[U(y; t)? V (y; )] " x(x? y; t? ) dtdxddy: The integrand (except the test function) can be manipulated to yield three terms F (x; t; y; )[U(x; t)? V (y; )]? F (y; t; y; )[U(y; )? V (y; )] =F (x; t; y; )[U(x; t)? U(y; t)] + [F (x; t; y; )? F (y; t; y; )][(U(y; t)? U(y; )) + (U(y; )? V (y; ))]; and the integral is split in three parts R 3 (") = R 3 (") + R 32 (") + R 33 ("):

47 A FRONT TRACKING METHOD Using the symmetry, the integrand of R 3 (") could have been rearranged using V instead of U. The rst term R 3 (") is straightforward to dominate ZZ ZZ jr 3 (")j jf (u(x; t); v(y; ))j ju(x; t)? U(y; t)j j " x(x? y; t? )j dtdxddy D T D T ZZ ku x k kfk Lip ZZ ju(x; t)? v(y; )j jx? yj j " x(x? y; t? )j dtdxddy: D T D T Recall that R R jxjj! "(x)jdx = and that " y =? " x. Thus Z R ju(x; t)? v(x; t)jdx = Z ZZ R D T ju(x; t)? v(x; t)j jx? yj j " x(x? y; t? )j dxddy: It is obvious that jx? yj j " x(x? y; t? )j M! =", since! " is of compact support in the interval [?"; "], and the derivative is bounded by M! =" 2. This is all we need in order to repeat the argument for L (") and obtain Z T lim jr 3(")j ku x k kfk Lip ku(; t)? v(; t)k dt: "! If the function f(u) satises a Lipschitz condition on the interval [?M; M] with constant L, then the function F (u; v) = sgn(u? v)[f(u)? f(v)] also satises the Lipschitz condition in u and v with the constant L, see [9, Lemma 3]. Hence it follows that jr 32 (")j ZZ D T ZZ D T sup ;t<t;jt?j<" ju(y; t)? U(y; )j jf (u(x; t); v(y; ))? F (u(y; t); v(y; ))j j " xj dtdxddy ku(; t)? U(; )k kfk Lip ZZ D T ZZ D T ju(x; t)? u(y; )j j " xj dtdxddy since! " (t? ) is zero when jt? j ". For the integral I("), we use that! " (x) and jxj j! "(x)j integrate to unity and nd that I(") = Z ZZ R ZZ D T D T ju(x; t)? u(y; t)j j! " (x? y) x j dxdydt j! " (z)j jzj Z R ju(x; t)? u(x? z; t)j jzj dxdzdt T TV(u ): Now introduce the shorthand T (U) = sup <t<t jku(; t + )? U(; t? )k. Thus we have lim "! jr 32(")j T (U)kfk Lip T TV(u ): Note that if U(; t) is continuous, R 32 (")!.

48 2 KNUT{ANDREAS LIE We have now established the dependence on initial data. Suppose that u(x; t) and v(x; t) are two solutions of (), with initial data u and v. Let f i g denote the discontinuities in the velocity, that is, U(x;? i ) 6= U(x; i + ) for i >, and let =. Then for t 2 [ i ; i+ i ku(; t)? v(; t)k ku(; + i )? v (; + i )k + Z t + i ku(; s)? v(; s)k ds for a nite constant = 3kV x k kfk Lip. Applying a Gronwall inequality gives ku(; t)? v(; t)k e (t? + i ) ku(; + i )? v (; + i )k : This inequality can be used to prove uniqueness of the solution. Obviously ku(; + i )? u(;? i )k = ; and by choosing equal initial data u = v, the uniqueness follows by induction on i. To establish the continuous dependence on ux function and velocity, the two remaining terms R 33 (") and R 32 (") need to be bounded. Fortunately, most of the work has already been done jr 33 (")j ZZ ZZ ju(y; t)? V (y; )j jf (u(x; t); v(y; ))? F (u(y; t); v(y; ))j j " xj dtdxddy D T D T ZZ ku? V k kfk Lip D T ZZ D T!T ku? V k kfk Lip TV(u ): Using once more that R R h(y)! "(x)dx =, it follows that R 32 (") = = ZZ D ZZ T ZZ D ZZ T ju(x; t)? u(y; t)j j! " (x? y) x j! " (t? ) dtdxddy (G? F )(u(x; t); v(y; ))V (y; ) " x(x? y; t? ) dtdxddy " x (G? F )(u(x; t); v(y; ))? (G? F )(u(y; t); v(y; )) V (y; ) dtdxddy D T D T ZZ kf? gk Lip kv k D T ZZ D T!T kf? gk Lip kv k TV(u ): All bounds can be summarized in the inequality where ku(; T )? v(; T )k ku? v k + ju(x; t)? u(y; t)j j! " (x? y) x j! " (t? ) dtdxddy Z T =2kU x k kfk Lip + kv x k kgk Lip ; ku(; t)? v(; t)k dt + T TV(u ); =kfk Lip? ku? V k + T (U) + kv k kf? gk Lip :

49 A FRONT TRACKING METHOD 3 As pointed out above, there are two ways of rearranging R 3 ("), and then two ways of rearranging R 3 ("). Altogether, this gives four combinations, of which we have computed one explicitly here. The other three give similar estimates. To get a sharper bound, one should therefore choose the minimum of the four. R T Either way, the inequality is on the form E(T ) E() + E(t)dt + B. Applying a Gronwall type inequality gives E(T ) e T (E() + B), and we arrive at our nal result concerning the continuous dependence Theorem 3.. Let u and v denote two entropy solutions of (7) and (8), respectively. Suppose that U x and V x are bounded, and that f and g satisfy a Lipschitz condition. Then there are constants and such that for every nite T. ku(; T )? v(; T )k e T ku? v k + T e T minftv(u ); TV(v )g; The above result can be extended to velocities that are only Lipschitz continuous in x by using a smooth approximation. When V (x; t) = U(x; t), is zero and is equal to kf? gk Lip, and the above inequality is simplied to that of Lucier [2, Theorem 3]. Moreover, by a tedious computation, the above stability result can be extended to multidimensional equations of the form () u t + dx i= V i (x; t)f i (u) xi = ; The multi-dimensional counterpart of the above bound is, where ku(; T )? v(; T )k ku? v k + = = dx i= Z T 2k@ xi U i k kf i k Lip + k@ xi V i k kg i k Lip ; u(x; ) = u (x): ku(; t)? v(; t)k dt + C(T ) TV(u ); dx? kf i k Lip kui? V i k + T (U i ) + kv i k kf i? g i k Lip : i= Note that these equations have bounded, but not necessarily diminishing total variation. Therefore the constant T TV(u ) is replaced by C(T ) TV(u ). 4. A Front Tracking Method In this section we will look further into how the construction from x2 can be developed into a numerical method. Recall that the shock paths satisfy the ordinary dierential equation _x(t) = sv (x; t), which can be solved explicitly if the approximation to V is chosen carefully (see x2). Suppose now that the velocity is given by V (x; t) = (a i x + b i )c j or V (x; t) = a i (c j t + d j ) on the squares [x i ; x i+ ] [t j ; t j+ ), which are chosen such that V has constant sign on each square. Hence, the times f k g where the algorithm is restarted

50 4 KNUT{ANDREAS LIE (because V changes sign) forms a subset of ft i g. Although a piecewise constant approximation in x and t is not covered by the analysis in x3, it is possible from a constructive point of view and is in fact used in the commercial reservoir simulator Frontline by Technical Software Consultants []. When implementing the front tracking method, all shock fronts are represented as data objects in a linked list [5, ] given by their spatial ordering from left to right. Similarly, all possible collisions are kept in a list. The two lists are established initially by solving all Riemann problems given by the initial approximation and then computing the possible interactions. In the tracking part of the algorithm each step goes as follows: We nd the next colliding fronts in the time list, remove them from the spatial list, and solve the corresponding Riemann problem. Possible new fronts are then inserted into the spatial list, and the collision list is updated. The same algorithm will be used in our new method. However, there are two complicating factors. We see that a new calculation of the future path is required each time a shock enters another interval in V. So rst, how do we compute the path of fronts passing through several spatial intervals in the velocity approximation? Somehow we must know when a front leaves a spatial interval and enters a new one. This is achieved by introducing articial stationary `fronts' to represent discontinuities in V or V x. Thus, during the tracking of fronts there will be two kinds of collisions: (i) between two shock fronts, and (ii) between a shock front and a discontinuity in V x of V. For type (ii) collisions we exchange places for the colliding fronts in the spatial list and update the collision list. Introducing articial fronts is also advantageous if we were to consider boundary value problems. The second problem is what to do when we reach a new temporal interval in the approximation of the velocity. The obvious solution would be to simply restart the algorithm at each time t = t j. However, we can be more clever. After each update in the time list we check if the next collision occurs in the current time interval [t j ; t j+ ). If not, we advance the solution forward in time to t = t j+ and compute the new velocity approximation. If the velocity does not change sign anywhere, we need only reset the start positions of each front and update the collision list using the new velocity. Notice that we do not need to solve any Riemann problems. However, if t j+ coincides with a k, we have to restart the algorithm, by solving the Riemann problems described by the piecewise constant solution at time t = t?. j+ In x2 we argued that there is a nite number of shock collisions if the number of initial jumps is nite. Assuming a nite number of intervals in the approximation of the velocity, the number of updates to front paths remains nite. The eciency of front tracking is retained if the additional work introduced by these extra collisions amounts little to the total work during the tracking. Obviously this is not the case if the length of the velocity intervals is small compared to the distance each shock travels before a collision. It is therefore important that intervals in the velocity approximation are fairly large, reducing the number of type (ii) shocks. So, what about the convergence rate of the new front tracking method? Assume that V = V (x) and let u denote the entropy solution of () and ~u the front tracking solution

51 A FRONT TRACKING METHOD 5 with ux function ~ f, velocity ~ V, and initial data ~u. Here f, V, and denotes the length of the respective intervals. Then it follows from Theorem 3. that ku(; T )? ~u(; T )k C ku? ~u k + C 2 kf? ~ fk Lip + C 3 kv? ~ V k ; where the constants C, C 2, and C 3 are nite and independent of the parameters f, V, and. By a proper choice of the initial approximation, for instance the average function on each interval, we can ensure that ku? ~u k C. Assuming that f and V are Lipschitz continuous and piecewise C 2, we have that kf? ~ fk Lip 2 fkf k and kv? ~ V k C 2 V. Thus, the error is dominated in norm as follows ku(; T )? ~u(; T )k C + C 2 f + C 3 2 V : Hence, the convergence of the front tracking method remains linear when extended to the variable coecient equation. It is also interesting to note that the convergence is quadratic in the approximation parameters for the velocity. This means that the velocity intervals may be chosen large to ensure an ecient algorithm. 5. Numerical Experiments In this section the behaviour of the front tracking method is illustrated by three simple examples. More examples can be found in Refs. [7, 8, ]. Example. Consider Burgers' equation with a time dependent velocity eld u t + V (t)? 2 u2 x = and piecewise constant initial data u (x) = I [;) (x)? I [=2;) (x). The velocity eld is V (t) = cos(t=t ) for t 2 [; T ]. The computational domain is [?:5; :5], the initial data is u (x) = I [?:5;:5] (x) (i.e, equal for x 2 [?:5; :5] and zero otherwise), and T = 4:. Figure 2 shows snapshots of the solution computed with a piecewise constant approximation of the velocity (on 8 time intervals) and exact initial data. Only ten breakpoints are used in the ux function to clearly demonstrate how rarefaction waves are approximated by the method. Compared with a reference solution generated by a Lax{Friedrichs scheme (CFL number.95), we see that the front tracking solution is very accurate, even for this relatively poor approximation of the velocity. The singular point t = 2: where V (t) = represents a problem in the nite dierence solver. Using too small time steps around t = 2: gives considerable numerical diusion, whereas too large time steps gives a delayed propagation of the two rarefaction waves. In fact, we needed an inordinately large number of grid cells to get satisfactory resolution. The front tracking algorithm on the other hand has none of these diculties. Example 2. Next, consider a nonconvex ux function f(u) = 4u 2 (? u 2 ) and strongly non-monotone initial data u (x) = sin(x)i [?5;5] (x) on the domain x 2 [?6; 6]. The velocity V (x) = :75 sin(x=2) changes sign at x n = 2n, n 2 Z, and these points will therefore be `stagnation points'. Figure 3 shows the solution at time t = : computed with 24 intervals in the initial data, 6 breakpoints in the piecewise linear velocity, and 5 breakpoints in

52 6 KNUT{ANDREAS LIE.5 t=.5.5 t=2.5.5 t=..5 t=3..5 t=.5.5 t=3.5.5 t=2..5 t=4. Figure 2. Example. Snapshots of the solution compared with a Lax-Friedrichs solution on a very ne grid (2 grid cells) Figure 3. Example 2. Front tracking solution (solid) at time t = : compared with a Lax-Friedrichs solution (dashed) on a very ne grid (24 grid cells).

53 A FRONT TRACKING METHOD Figure 4. Example 3. Solution at time t = : (solid), initial data (dashed), and velocity eld (dotted). n l -error rate e-2 4.7e e e e e e Table. Example 3. Observed error and convergence rates. the ux function. The solution is compared with a ne grid solution computed by a Lax{ Friedrichs scheme (CFL number.95). Once again, the front tracking solution is very accurate, especially at the shocks. Example 3. We now wish to investigate the error contribution from the velocity approximation. To this end, we consider Burgers' equation with exact initial data u (x) = I (;?] (x)? I [;) (x) and a very ne approximation of the ux function (5 breakpoints). For the velocity eld V (x) = sin 3 (x=2) we use a piecewise linear approximation with 2 n + breakpoints. The computational domain is [?2; 2]. Figure 4 shows the initial data, the velocity eld, and the solution at time t = :. The observed errors (with respect to a ne grid solution) and the corresponding convergence rates are shown in Table. We see that the observed rates agree with the second order convergence proved in x4. Acknowledgement I would like to thank the late Sigmund Berntsen, Harald Hanche{Olsen, Vidar Haugse, Helge Holden, Kenneth Hvistendahl Karlsen, and Nils Henrik Risebro for many valuable discussions.

54 8 KNUT{ANDREAS LIE References [] F. Bratvedt, K. Bratvedt, C. F. Buchholz, T. Gimse, H. Holden, L. Holden, and N. H. Risebro. Frontline and Frontsim, two full scale, two-phase, black oil reservoir simulators based on front tracking. Surv. Math. Ind., 3:85{25, 993. [2] C. M. Dafermos. Polygonal approximation of solutions of the initial value problem for a conservation law. J. Math. Anal. Appl., 38:33{4, 972. [3] T. Gimse and N. H. Risebro. Riemann problems with a discontinuous ux function. In Proc. 3rd Internat. Conf. Hyperbolic Problems, pages 488{52, Uppsala, 99. Studentlitteratur. [4] T. Gimse and N. H. Risebro. Solution of the Cauchy problem for a conservation law with a discontinuous ux function. SIAM J. Math. Anal., 23(3):635{648, May 992. [5] H. Holden and L. Holden. On scalar conservation laws in one-dimension. In S. Albeverio, J. E. Fenstad, H. Holden, and T. Lindstrm, editors, Ideas and Methods in Mathematics and Physics, pages 48{59. Cambridge University Press, Cambridge, 988. [6] H. Holden, L. Holden, and R. Hegh-Krohn. A numerical method for rst order nonlinear scalar conservation laws in one-dimension. Comput. Math. Applic., 5(6{8):595{62, 988. [7] K. H. Karlsen and K.-A. Lie. An unconditionally stable splitting scheme for a class of nonlinear parabolic equations. IMA Preprint Series #498, Institute of Mathematics and its Applications (IMA), University of Minnestota, Aug [8] K. H. Karlsen, K.-A. Lie, N. H. Risebro, and J. Fryen. A front-tracking approach to a two-phase uid-ow model with capillary forces. In Situ, 22(), 998. To appear. [9] S. N. Kruzkov. First order quasi-linear equations in several independent variables. Math. USSR Sbornik, (2):27{243, 97. [] J. O. Langseth. On an implementation of a front tracking method for hyperbolic conservation laws. Advances in Engineering Software, 26():45{63, 996. [] K.-A. Lie. A dimensional splitting method for nonlinear equations with variable coecients. Preprint. Mathematics 7, Norwegian University of Science and Technology, Trondheim, Norway, 997. [2] B. J. Lucier. A moving mesh numerical method for hyperbolic conservation laws. Math. Comp., 46(73):59{69, Jan [3] O. A. Oleinik. Discontinuous solutions of non-linear dierential equations. Amer. Math. Soc Transl. Ser. 2, 26:95{72, 963. [4] O. A. Oleinik. Uniqueness and stability of the generalized solution of the Cauchy problem for a quasi{linear equation. Amer. Math. Soc Transl. Ser. 2, 33:285{29, 963. [5] N. H. Risebro and A. Tveito. A front tracking method for conservation laws in one dimension. J. Comp. Phys., ():3{39, July 992. Department of Mathematical Sciences, Norwegian University of Science and Technology, N{734 Trondheim, Norway address: andreas@math.ntnu.no

55 Paper II Dimensional Splitting with Front Tracking and Adaptive Grid Renement Knut{Andreas Lie, Vidar Haugse, and Kenneth Hvistendahl Karlsen Accepted for publication in Numerical Methods for Partial Dierential Equations

56

57 DIMENSIONAL SPLITTING WITH FRONT TRACKING AND ADAPTIVE GRID REFINEMENT K.{A. LIE, V. HAUGSE, AND K. HVISTENDAHL KARLSEN Abstract. Front tracking in combination with dimensional splitting is analyzed as a numerical method for scalar conservation laws in two space dimensions. An analytic error bound is derived, and convergence rates based on numerical experiments are presented. Numerical experiments indicate that large CFL numbers can be used without loss of accuracy for a wide range of problems. A new method for grid renement is introduced. The method easily allows for dynamical changes in the grid, using, for instance, the total variation in each grid cell as a criterion for introducing new or removing existing renements. Several numerical examples are included, highlighting the features of the numerical method. A comparison with a high-resolution method conrms that dimensional splitting with front tracking is a highly viable numerical method for practical computations.. Introduction Dimensional splitting, or fractional steps, has been widely used to extend one-dimensional numerical methods to multidimensional problems. The method was rst introduced by Godunov [5] in connection with gas dynamics and later extended by Strang [25]. The idea is quite simple. Consider the two-dimensional scalar conservation law: () u t + f(u) x + g(u) y = ; u(x; y; ) = u (x; y): Let u(t) = S(t)u denote the entropy solution of (), and v(t) = S f (t)v and w(t) = S g (t)w the entropy solutions of the one-dimensional equations v t + f(v) x = ; w t + g(w) y = ; Then the rst-order Godunov splitting is dened as (2) v(x; y; ) = v (x); w(x; y; ) = w (y): S(nt)u (x; y) = S g (t)s f (t) n u (x; y); while for Strang's second-order method the approximation is (3) S(nt)u (x; y) = S f (t=2)s g (t)s f (t=2) n u (x; y): The order of the operators S f and S g could, of course, be reversed. Key words and phrases. Scalar conservation laws; dimensional splitting; front tracking; error bounds; adaptive grid renement. Lie has been supported by the Research Council of Norway under grant no. 555/4. Hvistendahl Karlsen has been supported by VISTA, a research cooperation between the Norwegian Academy of Science and Letters and Den norske stats oljeselskap a.s. (Statoil).

58 2 LIE, HAUGSE, AND HVISTENDAHL KARLSEN When used as a numerical method, the one-dimensional solution operators are approximated by some numerical scheme. Crandall and Majda [3] proved that both splitting methods produce an approximation that converges to the unique entropy solution as temporal and spatial discretization tend to zero, when using either monotone schemes, a modied Lax{Wendro scheme, or Glimm's method in each step. Teng [26] proved that in the general case (where the solution may contain discontinuities) the L error bound of the splitting methods (2) and (3) is of order O(t =2 ). We will derive a similar error bound for the method (2) when the one-dimensional solution operators are approximated by front tracking [8]. This unconditionally stable method was proposed by Holden and Risebro []. We give some numerical examples with accuracy close to O(t), indicating that the error bounds are \worst case." Numerical methods based on dimensional splitting are very computer ecient and easy to implement, but there are also some objections to such methods [24]. Higher-dimensional eects, which are important locally, may be poorly represented, and grid eects due to the introduced directional bias may be strong. However, in many applications the inherent dynamics in the scalar equation can be resolved accurately by only a few splitting steps. An example is water injection in oil reservoirs, where resolving sharp changes in water saturation due to nonmixing of water and oil has great impact on the quality of the computed solution. In the simulations presented we use outow boundaries, which are very simple to implement. Outow conditions occur in many problems, for instance, when the computational domain is a truncation of a larger physical domain, where it is important that waves leave the domain without nonphysical reections. The use of other boundary conditions will be discussed elsewhere. The front tracking method has no stability restriction on the time-steps. Numerical experiments in Section 4 show that the accuracy is improved by increasing the CFL number moderately above unity. Similar observations were made by LeVeque [7] for his related shock-capturing method. Compared to rst-order Godunov's method, discontinuous parts are resolved remarkably better. We also observe that the CFL number can be increased even further without signicant loss in accuracy. Using large time-steps means increasing the eciency. So, despite the objections to dimensional splitting, our two-dimensional front tracking method may be a preferred choice for practical computations on scalar equations due to its eciency and ability to correctly track discontinuities. To improve the spatial accuracy, we incorporate local grid renement in the front tracking method. The nontrivial part is how to treat the interface between ordinary and rened grid blocks. Having settled this, we discuss a strategy for adaptive grid renement. An intuitive method for dimensional splitting is to use properties of the solution after one step to generate a grid for the next step. The total variation in each grid block is a natural measure when determining changes in the grid. The outline of the article is as follows. In Section 2 we review the one-dimensional front tracking method and its extension to multidimensional problems by means of dimensional splitting. Then an error estimate for this numerical method is derived. In Section 3, local

59 DIMENSIONAL SPLITTING AND ADAPTIVE GRID REFINEMENT 3 grid renement is incorporated into the method, and a strategy for adaptive renement is discussed. Finally in Section 4, we present convergence rates based on numerical examples. Furthermore, we show the gain in eciency by using large CFL numbers and highlight several features of the new strategy for adaptive grid renement. 2. Dimensional Splitting with Front Tracking We begin by briey describing the front tracking method that was rst introduced by Dafermos [4], and later proved well-dened and developed into a numerical method for one-dimensional scalar conservation laws by Holden, Holden, and Hegh{Krohn [8]. The method determines exact solutions within the class of step functions to a perturbed conservation law. Assume that v is piecewise constant and that f is piecewise linear. Using front tracking, the solution of v t + f(v) x = ; v(x; ) = v (x) is constructed as follows. Each jump in the initial data v denes a Riemann problem, which is solved exactly. Since the ux function is piecewise linear, there are no rarefaction waves and each Riemann problem leads to a series of discontinuities propagating in the (x; t){ plane. The global solution is obtained by connecting the solutions of the local Riemann problems. This solution is well-dened until two or more discontinuities interact at some point. Then we have what is called a shock collision. A shock collision denes a new Riemann problem with left and right states given by the values immediately to the left and to the right of the colliding discontinuities. By solving this Riemann problem, the global solution is determined until the next shock collision, and so on. We may continue in this fashion and thereby advance the (exact) solution up to any positive time. In the general case (arbitrary f and v ), the front tracking method consists in replacing the ux function f by a continuous, piecewise linear approximation and the initial data v by a piecewise constant approximation. Then this perturbed problem is solved according to the procedure outlined above. Note that rarefaction waves are approximated by series of (small) shocks given by the breakpoints in the piecewise linear ux approximation. Therefore, the solution remains within the class of step functions. See Fig. for an illustration. For a more detailed description, we refer the reader to Holden et al. [8] or Langseth [5]. The front tracking idea can be extended to multidimensional problems by the means of dimensional splitting []. For simplicity, we consider the two-dimensional case, since a generalization to higher dimensions is straightforward. Assume that the piecewise constant initial function is given on an underlying rectangular grid with n columns and m rows. Each row or column denes a sequence of Riemann problems. (A single row or column will in the following be referred to as a tube.) In the rst step, the solution is computed up to time t for all tubes in one direction, say x, using the procedure outlined above. In each tube, the solution is a step function, but the discontinuities are not necessarily aligned with the grid lines; that is, the solution may not be constant in a grid block. Accordingly, the solution must be projected back onto the grid to give proper initial data for the next

60 4 LIE, HAUGSE, AND HVISTENDAHL KARLSEN Initial Data Flux Function Fronts in (x,t) plane.5 Solution Figure. Illustration of the front tracking method. (Top) Initial data and ux function (dashed) and ux approximation (solid). (Bottom) Fronts in the (x,t)-plane and exact solution (dashed) and front tracking solution (solid). step. Afterwards, the solution can be computed for each tube in the other direction, and so on. Now we formalize our discussion. Consider a uniform Cartesian grid dened by the nodes f(ix; jy)g, where x; y are given positive numbers and i; j 2 Z. Let be the usual grid block averaging operator dened on this grid, that is, (4) u(x; y) = xy Z z i;j u(~x; ~y) d~xd~y; 8(x; y) 2 z i;j ; where z i;j is grid block number (i; j) with lower left-hand corner in (ix; jy). Furthermore, let f and g be piecewise linear approximations to f and g, respectively, and S f (t) and S g (t) the corresponding one-dimensional solution operators. Using Godunov splitting, the dimensional splitting solution fu n g N n= is dened as (5) u n (x; y) = [Sg (t)s f (t)] n u (x; y); where u (x; y) = u (x; y) and = (x; y; ). analogously for the Strang splitting. The approximate solution is dened 2.. An Error Bound. We shall derive an error bound for the splitting method (5) using the classical approximation theory of Kuznetsov [4]. This theory has already been used to estimate the accuracy of a large class of approximate methods: the method of vanishing viscosity, the method of smoothing, and several widely used monotone nite dierence methods in Ref. [4]; the methods of Glimm, Godunov, and LeVeque in Ref. [9]; and the one-dimensional front tracking method in Ref. [2]. See also the recent work of Cockburn and Gremaud [2] and the historical overview of connected works therein.

61 DIMENSIONAL SPLITTING AND ADAPTIVE GRID REFINEMENT 5 In the analysis we have to work with approximate solutions as functions of t, and not merely dened at discrete times t n = nt. Motivated by Crandall and Majda [3], we dene the interpolation u (x; y; t) = Recall that the splitting solutions are dened by u n+ 2 ( S f? 2(t? tn ) u n (x; y); for t 2 [t n ; t n+=2 ); S g? 2(t? tn+=2 ) u n+ 2 (x; y); for t 2 [t n+=2 ; t n+ ): u n = S g (t)s f (t) n u (x; y); = S f (t) S g (t)s f (t) n u (x; y): The solution operators S f (t) and S g (t) are L -contractions, which implies that the spatial variation of the splitting solutions is non-increasing in time. Moreover, if A denotes the common Lipschitz constant associated with the ux functions f and g, the splitting solutions satisfy the uniform temporal estimate (6) ku (; ; t 2 )? u (; ; t )k Ajt 2? t j + C(t ; t 2 )(x + y) ju j BV (R 2 ); where C(t ; t 2 ) is the smallest integer greater than or equal to 2jt 2? t j=t. Let! " (x) =!( x ) be a usual " " C(?"; ") unit mass mollier, and let ";" (x; y; t) be a smooth approximation to (x)(y)(t) dened by ";" (x; y; t) =! " (x)! " (y)! " (t): Let D T = R 2 [; T ] and u; v : D T! R, and introduce the so-called Kruzkov form D(; u; a) = + and the integrated form D ";" (u; v) = ZZ U(u; a)t + F (u; a) x + G(u; a) y dtdxdy D Z T Z U(u; a) t= dxdy? U(u; a) t=t? dxdy; R 2 R 2 ZZ D T D( ";" (? x;? y;? t); u(; ; ); v(x; y; t)) dxdydt: Here (U; F; G) is the usual convex entropy associated with (); that is, U(u; a) = ju? aj, F (u; a) = sign(u? a)[f(u)? f(a)], and G(u; a) = sign(u? a)[g(u)? g(a)]. Kruzkov [3] denes u(t) as the (unique) entropy solution of (), provided that D(; u; a) for all suitable positive test functions and real numbers a. For later use, let u (t) = S (t)u be the entropy solution of u t + f (u) x + g (u) y = ; u(x; y; ) = u (x; y): By a straightforward two-dimensional extension of Lucier's stability result [9], it follows that (7) ks(t )u? S (T )u k T max (kf? f k Lip ; kg? g k Lip ) ju j BV (R 2 ):

62 6 LIE, HAUGSE, AND HVISTENDAHL KARLSEN According to Kuznetsov's lemma [4] the following bound is valid: (8) ks (T )u? u N k ku? u k + (2" + A" ) + C(x + y) ju j BV (R 2 )? D ";" (u ; u ); where C is the smallest integer greater than or equal to 2" =t. Consequently, we are in a position to prove the theorem: Theorem (Error Bound). If u 2 L \ L \ BV, and f and g are Lipschitz continuous functions with constant A, then (9) ks(t )u? u N k ku? u k + T max (kf? f k Lip ; kg? g k Lip ) ju j BV (R 2 ) + ju j BV (R 2 ) min " ;" (" ; "; x; y; t); where is given by (). In particular, if x = K y = K 2 t for some constants K ; K 2, then ks(t )u? u N k = O( p t + p x + ). Proof. Having the preceding discussion in mind, it remains to bound the error term ks (T )u? u N k, that is, the discrepancy D ";" (u ; u ). Taking advantage of the fact that the splitting solution u (t) satises \local" one-dimensional Kruzkov forms (one in each space direction), we obtain () where I i = I i (; u ; a) are dened by I =2 I 2 =2 I 3 =? I 4 =? X N? Z ZR2 tn+=2 n= X N? Z ZR2 tn+ n= n=?d(; u ; a) I + I 2 + I 3 + I 4 ; t n F (u ; a) x dtdxdy? t n+=2 G (u ; a) y dtdxdy? ZZ ZZ D T F (u ; a) x dtdxdy; D T G (u ; a) y dtdxdy; N? X ZR2 hu(u ; a) i t=t? n? U(u ; a) (x; y; t n t=t+n ) dxdy; N? X h ZR2 U(u ; a) i t=t?? U(u ; a) n+=2 t=t + (x; y; t n+=2 ) dxdy: n+=2 n= We omit the derivation of inequality (). Crandall and Majda [3] have derived an analogous inequality in the case of exact one-dimensional solution operators, and the operators S f (t) and S g (t) are indeed exact solution operators for conservation laws with ux functions f and g, respectively. Note that for piecewise constant initial data, the front tracking solution coincides with one of these solution operators. The additional two terms I 3 and I 4 are due to the projection. With I ";" i P = I ";" i (u ; u ) dened analogously to D ";" = D";" (u ; u ), we observe that?d ";" 4 i= I";" i. We start by estimating the error terms I ";" and I ";" 2, which are due to the operator splitting.

63 DIMENSIONAL SPLITTING AND ADAPTIVE GRID REFINEMENT 7 Substituting F (u (t); u (t)) = F (u (t n+=2 ); u (t)) + F (u (t); u (t))? F (u (t n+=2 ); u (t)) into I ";" yields I ";" = N? X n= J n ;(t n ; t n+=2 )? J n ;(t n+=2 ; t n+ ) + J n ;2(t n ; t n+=2 )? J n ;2(t n+=2 ; t n+ ) ; where J n ; (; ) = ZZ J n ;2 (; ) = ZZ D T Z D T Z Z R 2 Z R 2 F (u (t n+=2 ); u (t)) ";" x dt; F (u (t); u (t))? F (u (t n+=2 ); u (t)) ";" x dt: To simplify the notation, we have omitted the dierential dx dy dt dx dy. Now, writing! " (t? t) =! " (t n+=2? t) + R t t n+=2! " (z? t) dz we get that J n ;(t n ; t n+=2 )? J n ;(t n+=2 ; t n+ ) = hz tn+=2 t n Z t ZZDT Z t n+=2! " (z? t) dzdt? R 2 F (u (t n+=2 ); u (t)) " x(x? x; y? y) Z tn+ t n+=2 Z t t n+=2! " (z? t) dzdt Observe that R R F (u (x; y; t n+=2 ); u (t))! " (x? x) x dx = and, since F satises a Lipschitz condition with constant A, we deduce that jj n ;(t n ; t n+=2 )?J n ;(t n+=2 ; t n+ )j A Z t n+=2 t n Z t Z T t n+=2 ZR2 Z R 2 ju (x; y; t n+=2 )? u (x; y; t n+=2 )j j " xj! " (z? t) dtdzdt? Z tn+ t n+=2 Z t Z T t n+=2 i! " (z? t) dtdzdt: Each of the inner integrals (over t, z, and t) can be bounded in terms of t, using that R T j! " (z? t)j dt 2M! =", where M! is an upper bound on!. Now, it follows that jj n ;(t n ; t n+=2 )? J n ;(t n+=2 ; t n+ )j AM! 2 t 2 " hz R jun+ 2 R by the denition of jj BV (R) and the fact that R j! "(x)jjxj dx =. (; y)j BV (R) dy i :

64 8 LIE, HAUGSE, AND HVISTENDAHL KARLSEN Next, by exploiting the fact that u (; y; t) is Lipschitz continuous in the time variable (see (6)), we deduce the estimate Z jj n (t ;2 n; t n+=2 )j A ZZDT ZR2 tn+=2 Z 2AM! " Z tn+=2 t n AM!t (At + x) " ju (x; y; t)? u (x; y; t n+=2 )j j ";" x t n R 2 ju (x; y; t)? u (x; y; t n+=2 )j dxdydt hz R jun (; y)j BV (R) dy R where we have used the unit mass property of! " and! " and again that R j! "(x?x) x j dx 2M! =". The last term inside the brackets comes from the projection step at t = t n+=2. We can bound J;2(t n n+=2 ; t n+ ) similarly so that hz jj n (t ;2 n; t n+=2 )? J n (t ;2 n+=2; t n+ )j AM i!t (At + x) " R jun (; y)j BV (R) dy + AM i!t (At + y) " hzr jun+ 2 (x; )j BV (R) dx : The analysis and the estimates are similar for I ";" 2. Summing up, we can conclude that ji ";" j + ji ";" 2 j AM! T t 2 T 2At + x + y ju j BV (R " 2 ) + 2AM! " i ; j dt ju j BV (R 2 ); where we have taken into account that ju (t)j BV (R 2 ) ju j BV (R ). 2 It now remains to estimate the error terms ji ";" 3 j and ji ";" 4 j due to the projection operator. Recall that I ";" 3 takes the form (similar formula for I ";" 4 ) X N? I ";" 3 = n= ZZDT Z R 2 ju (x; y; t + n )? u(x; y; t)j? ju (x; y; t? n )? u(x; y; t)j ";" ; where u (t + n ) is the projection of u (t? n ) dened in (4). Lucier [9, p. 76] proposed a technique for estimating the one-dimensional versions of I ";" 3 and I ";" 4. By extending this technique to several space dimensions, the following estimate can be derived: ji ";" 3 j + ji ";" 4 j (x + y)2 2 T t k! k ju j BV (R ): " 2 By letting!! ( + x) 2 [?;) + (? x) 2 [;], the constant k! k may be chosen arbitrarily close to and M! close to. We have thereby obtained a proper bound on 2 jd ";" (";" ; u ; u)j. Taking (8) into account, all terms involving " and " can be summarized in (" ; "; x; y; t) = t 2At + x + y AT + AT 4 " " () + (2" + A" ) + l 2" t m (x + y) + 2 T t (x + y) 2 ; "

65 DIMENSIONAL SPLITTING AND ADAPTIVE GRID REFINEMENT 9 and we have proved (9). Minimizing over " and " gives some function?(x; y; t). If x = K y = K 2 t, and we choose, for instance, " = p t and " = p p p x, then? C t + C2 x for some constants C and C 2. Moreover, since u = u, the error contribution from the approximation of the initial data is xju j BV (R ), and if f is 2 a piecewise C 2 function, then kf? f k Lip C 3 (and similarly for g), and the error in approximating (rarefaction) waves is of order. Remark. The error bound suggests a convergence rate of order in both time and space. 2 The method of estimation is the best available in the literature for this type of method, and it gives optimal error bounds for linear problems. Unfortunately, it gives very crude bounds for nonlinear problems, which are not particularly useful as a priori error estimates. We observed a tendency to overestimate the actual error by several orders of magnitude, and for the test cases we have run (also others not reported here) the observed rates were much closer to than, see Section 4. On the other hand, note that the bound not necessarily 2 applies when including adaptive grid renement into the method. Remark 2. When the method is used as a computational tool, the time-step must somehow be related to the space-step. As seen in the error analysis, there are two factors contributing to the total error; the errors introduced by the splitting and by the projection. The error bound gives little information on how to choose the time-step to balance these two error sources at a minimum. Dimensional splitting is unconditionally stable in the sense that there is no restriction on the discretization parameters, which means that large time-steps can be taken. Although this is favorable in terms of computer eciency, the splitting error will certainly increase with increasing time-step. On the other hand, increasing time-steps means fewer projections and hence less projection error. The question of how to choose the time-step will, therefore, be investigated numerically in Section 4. Remark 3. Finally, note that if the solution is smooth, the calculations above together with integration by parts implies rst-order convergence. Numerical tests have been performed for pure rarefactions (i.e., smooth solutions), but they are not reported here, since they contribute little new except for conrming the rst-order accuracy. 3. Local Grid Refinement An underlying grid is introduced to obtain piecewise constant data in one direction from the solution computed in the other. When projecting the solution back onto the grid, the ne structures in the approximate solution are lost and errors are introduced; large shocks are smeared, and sequences of small discontinuities (approximating rarefactions) are made coarser. By introducing some kind of grid renement, we can hope to improve the projection, retaining more of the ne structure, and, thus, reduce the error. The commercial reservoir simulator Frontsim [] has a renement strategy where tubes follow the position of major discontinuities. With this approach, the projection operator denes the density of tubes in one direction based on the solution computed in the other. Accordingly, the positions of major discontinuities are kept.

66 LIE, HAUGSE, AND HVISTENDAHL KARLSEN Figure 2. (Left) Grid renement by local partitioning of a regular Cartesian grid. (Right) Part of a front list containing two parallel rened tubes. The shaded boxes represent the static fronts. The strategy in Frontsim is not local, and computational eort may be spent in regions where the physical process is of little interest. In view of this problem, we consider another approach, where the grid is rened by local partition of blocks in a xed (coarse) grid. This partition can remain xed throughout the computation, or be determined by, for instance, the projection algorithm. An example of a rened grid is shown in Fig. 2. The proposed grid structure requires a reformulation of the front tracking algorithm, because a tube of coarse grid blocks now may contain several parallel tubes of ne grid blocks. Inside each tube, rened or coarse, the front tracking algorithm can be applied without modications, but the interface between coarse and rened grid blocks must be treated separately. This will be discussed later. First, however, it is natural to introduce a suitable data structure to use in the front tracking algorithm. 3.. Data Structure. Risebro and Tveito [22, 23] proposed a data structure for ordinary front tracking, in which discontinuities are represented by two linked lists of objects (referred to as fronts). A front object contains the left and right state of the front, the starting point, the speed of propagation, and the point where the front possibly collides with its right-hand neighbor. All fronts are organized in a spatial list (X-list) from left to right. To keep track of possible collisions, the leftmost of two colliding fronts is kept in a time list (T-list) sorted in ascending order. Note that all fronts are stored only once; the X- and T-list refer to the same objects. In each coarse section of a tube there is an X-list, and similarly an X-list for each tube in rened sections. These lists must be connected at the interface between coarse and rened blocks. For this purpose, we introduce an articial static front; that is, a front with zero speed of propagation containing an array, where each element again is a pointer to the rst or last front in an adjacent rened tube. A schematic representation of the data structure is given in Fig. 2. It is possible to have several levels of renement; that is, a rened block may contain rened grid blocks. The renement factor can also dier from block to block. For the rest of the discussion, we assume only one level of renements and a uniform renement factor in each direction. Having the data structure, we focus on how to solve Riemann problems at an interface and how to resolve possible collisions involving static fronts.

67 DIMENSIONAL SPLITTING AND ADAPTIVE GRID REFINEMENT 3.2. The Riemann Problem at an Interface. At an interface, a Riemann problem is in general two-dimensional, but since the ux is nonzero only along the tube, the twodimensional problem may be decomposed into a series of simple Riemann problems, one for each rened tube. Suppose that the rened part is to the left of the interface and the coarse part to the right. Let u c denote the initial state immediately inside the coarse tube and u i the state immediately inside ne tube number i. Each of these Riemann problems, dened by u c and u i, will in general give waves propagating in both directions, into the coarse tube and into the rened tubes. Waves with a negative speed can simply be inserted into the corresponding X-list. Waves with positive speed propagate into the coarse part and must be treated dierently. A simple approach would be to compute some representative average u of all states u i immediately inside the rened tubes, solve the Riemann problem dened by u and u c, and insert fronts with positive speed into the coarse tube (fronts with negative speed are ignored). The average could be a spatial average or a ux average. Although both approaches would work for monotone ux functions, it is easy to construct examples for non-monotone ux functions, where conservation of mass is violated or where the state corresponding to the average ux value is not unique. For general ux functions, we, therefore, propose an approximation that will retain the structure from each individual Riemann problem (u i ; u c ) in a spatially averaged sense inside the coarse tube. All fronts going into the coarse tube (possibly from dierent Riemann problems) are assigned new states according to the spatial average across the coarse tube, collected in a list of increasing wave speeds, and inserted into the local X-list for the coarse tube. Afterwards, these fronts will generally not satisfy the Rankine{Hugoniot condition, but their states will form a monotone sequence, and the mass is conserved, see Fig. 3. However, note that this will lead to discontinuities across the interface. The next step is to resolve collisions involving static fronts. This is done by making the interface transparent. Fronts coming in from a coarse part are copied and inserted into each connected rened X-list. Fronts coming in from rened tubes are collected, assigned new states according to the spatial average, and inserted into the connected coarse list, see Fig. 3. In the special case of at least two fronts from the same rened tube colliding exactly at the interface, the resulting simple Riemann problem must be solved rst. Then the fronts moving back into the rened part are inserted into the corresponding X-list, and the fronts moving out of the rened part are collected, assigned new states, and inserted into the coarse X-list Adaptive Grid Renement. By the nature of the splitting, possible renements should be determined in the projection step. Before the projection, the solution in the tube is known as a sequence of fronts with arbitrary spatial distribution. The total variation inside each grid block could therefore be used to determine if the block should be rened. Thus, the strategy is as follows. When the total variation in a coarse grid cell exceeds an upper limit, the grid cell is rened. Similarly, when the total variation in a rened block is less than a lower limit, the solution is projected onto a coarse block and the renement removed. Thus, the grid cells will be coarse in regions with small variation and rened

68 2 LIE, HAUGSE, AND HVISTENDAHL KARLSEN Riemann problem Decomposition a a a c c b b b b 2 c Final result a () (2) (3) c b Front from refined part After collision a d a (a+c)/2 c c b b Front from coarse part After collision a a c d c c b b c Figure 3. (Top) A Riemann problem at an interface between a coarse tube and two rened tubes is decomposed into two simple Riemann problems: solid lines represent (a; c) and dashed lines (b; c). Fronts propagating into coarse part are assigned new states by cross-sectional average; (): (a + b )=2, (2): (a + b 2 )=2, and (3): (b 2 + c)=2. (Bottom) The static front is transparent during tracking: Colliding fronts from the rened part are assigned new states. Colliding fronts from the coarse part are copied. in regions with large variation. By tuning the two threshold parameters, the fraction of rened grid blocks varies. Total variation is quickly computed as part of the projection, and the renement strategy can easily be extended to systems. More sophisticated criteria exist and can be used, but the total variation was chosen for its simplicity, and it seems to work well for the test cases in Section 4. This strategy improves the projection operator and, thus, provides better initial data for the next step in the other direction. The error will be reduced, but there is still room for improvement. It is very likely that some of the structure in the rened part of a tube will move into the coarse part during the next time-step. Although Riemann problems are approximated quite well at the interface, the computation is expensive and some of the structure will be lost. It would, therefore, be desirable if one was able to predict where the rened structure will move in the next step and place renements accordingly in advance. To do this we need only an upper bound for the velocity of the fastest wave in each direction. Such a bound can easily be determined for each specic equation, but we will not go into further details here.

69 DIMENSIONAL SPLITTING AND ADAPTIVE GRID REFINEMENT 3 In a practical implementation, a smoothing step should be included, ruling out small sections of unrened blocks scattered in rened regions, since solving Riemann problems at an interface between coarse and ne grid blocks is expensive computationally. 4. Numerical Experiments The dimensional splitting methods were coded in C and compiled using gcc with optimization -O3. From now on we will refer to the standard Cartesian grid method as DimSplit and the grid renement method as GridRef. For simplicity we have used a uniform Cartesian grid for both methods, and one level of renements with a uniform re- nement factor in each direction for GridRef. All experiments were conducted on a Sun Sparc with 4 CPUs running Solaris. Unless stated otherwise, the spatial discretization parameters are equal in both directions; we use a Riemann solver designed for general nonconvex ux functions, Strang splitting, and a distance. between interpolation points in the ux function. All reported runtimes are in CPU seconds. 4.. Burgers' Equation. This example is a two-dimensional Riemann problem for which the analytical solution is easily determined. Consider Burgers' equation with initial data u t +? 2 u2 x +? 2 u2 y = u (x; y) = ( ; xy > ; xy < : Applying a 45 rotation of the coordinates, this becomes a family of one-dimensional scalar problems. The analytical solution is u(x; y; t) = 8 >< >: ; x=t < ; y=t ; or x=t ; y=t < 2 2 x=t; x=t < ; y=t > ((x=t) 2 + )=2 y=t; y=t < ; x=t > ((y=t) 2 + )=2 ; otherwise; and consists of both rarefaction and shock waves. In all computations we will use nal time t = : and domain [?:2; :] [?:2; :]. Convergence Rates. It is customary to relate the time-step t to the spatial discretization x through the CFL number, = (t=x) max jujkuk jf (u)j. Note that = 2 corresponds to a rst-order Godunov method for the approximate equation with piecewise linear ux functions. We now assume the error to be of form E Cx r. In Table the numerical rates are shown for CFL numbers, 4, and 6. We have also included the result of a dierent choice, t = :95 p x. We see that the rates for constant CFL numbers are closer to than to 2.

70 4 LIE, HAUGSE, AND HVISTENDAHL KARLSEN Table. Numerical convergence rates for DimSplit at dierent CFL numbers. The star (*) denotes that the time-step is given by t = :95 p x. The rates were determined by linear regression from runs with x = a 5, a = ; : : : ; 2?5. CFL rate st.dev *.7.6 Choosing the Time-Step. As pointed out in Remark 2, it is not obvious how to choose the time-step. Although CFL number = gives the highest convergence rate, the actual numerical error is least for = 8. Choosing t = :95 p x, on the other hand, gave favorable time-steps for larger values of x, but too large steps for small x. We determined the number of time-steps giving least numerical error for x = =5n, n = 2 ; ; 2; 3; : : : ; 6. We assumed the time-step to be given as t = Cx. Fitting this model by linear regression gave C = 8:7 and = :94 When choosing the time-step, eciency should also be taken into account. We observed that the error E(t) for a xed x is slowly varying around the minimum point, and by choosing the largest time-step with an error not exceeding the minimum by more than 5%, the runtime can be greatly reduced (by at least 25%). Fitting the model once more gave C = :6 and = :93, which we will denote as the \optimal" choice of time-steps for this particular problem. Repeating the convergence tests above with these two choices of time-steps gave rates.8 and.79, respectively. In Fig. 4 we have plotted the numerical error versus runtime for CFL numbers, 4, 6, and 32. The curve corresponding to the \optimal" time-step, is approximately equal that of CFL numbers 6 and 32. CFL= CFL=4 CFL=6 CFL=32 Error Runtime Figure 4. Numerical error versus runtime for DimSplit at dierent CFL numbers for runs with x = a 25, a = ; : : : ; 2?4.

71 DIMENSIONAL SPLITTING AND ADAPTIVE GRID REFINEMENT Figure 5. The analytical solution is given to the left. The other two plots show a typical grid after the last time-step for two dierent sets of threshold values; (.,.5) in the middle and (.5,.) to the right. The grid consists of 3 3 coarse grid blocks on domain [?:2; :3] [?:2; :3] and three time-steps were used. Grid Renement. The total variation threshold parameters will obviously determine the fraction of grid blocks being rened and, hence, the accuracy of the grid renement method. In Fig. 5, we show the result of two computations with dierent threshold values together with the analytical solution. For threshold (.,.5) we observe that the grid is rened in regions along the shock paths. The numerical error is.37. Using a smaller threshold (.5,.) improves both the resolution of the converging shocks and the rarefaction areas. The numerical error is now reduced to.25. When the technique of predicting the behavior of rened structures was included, we were able to reproduce the same error as for ordinary dimensional splitting with the same number of time-steps and grid size equal to that of the rened blocks. We repeated the above convergence rate tests with local grid renement for CFL numbers, 4, and 6, and the optimal time-step determined above. In all runs we used threshold (.5,.). The numerical rates obtained for renement factor 2 and factor 4 are shown in Table 2. We see that the observed convergence rates are well above. Note, however, 2 Table 2. Numerical convergence rates for dimensional splitting with grid renement. (Left) Renement factor 2 and grid x = a 25, a = ; : : : ; 2?4. (Right) Renement factor 2 and grid x = a 25, a = 2; : : : ; 2?3. The star (*) denotes that the time-step is given by t = :6x :93. CFL rate st.dev *.85. CFL rate st.dev *.85.3

72 6 LIE, HAUGSE, AND HVISTENDAHL KARLSEN Threshold parameters:.,.5 Threshold parameters:.5,. CFL=4 CFL=8 CFL=6 CFL=32 CFL= CFL=4 CFL=8 CFL=6 Error 2 Error Runtime Runtime Figure 6. Numerical error versus runtime for GridRef with two dierent sets of threshold parameters and four dierent CFL numbers. The error was measured for grid sizes x = a 25, a = ; : : : ; 2?3 with a renement factor 4. that with xed threshold parameters the fraction of rened grid blocks will decrease with decreasing x. The next question is how to choose the time-step. In Fig. 6, we show the numerical error plotted vs. runtime for a large and a small threshold. We see that, for the smaller choice of parameters (.5,.), the CFL number should be chosen in the range 4{8 in order to maximize eciency. In this case, a large fraction of the grid blocks are rened, so the typical grid size is that of the rened blocks. Relating the CFL number to the typical grid size means multiplying it by the renement factor. For the larger choice of parameters (.,.5) the CFL number should be chosen in the range 6{32. In this case, the fraction of rened grid blocks is small, and the typical grid size is that of the coarse blocks. Thus, we conclude that a large CFL number ({2) related to the typical grid size should be used to achieve highest eciency. Comparison with Other Methods. To evaluate the eciency of dimensional splitting, we made a comparison with two methods; a simple \low" resolution scheme, Lax{Friedrichs, and a modern high resolution scheme, the two-dimensional routine in the software package Clawpack Version 2. by LeVeque [8], which uses a multidimensional wave-propagation algorithm with ux limiters. For those familiar with the package, we can describe the conguration as method=(,2,2) and mthlim=2; that is, varying time-steps with preferred CFL number.9, second-order corrections with the superbee ux limiter, and transverse propagation of both increment and correction waves. For DimSplit we used CFL number 2.5, and for GridRef we used renement factor 4, CFL number 8, and a TV threshold decreasing with the mesh parameter.

73 DIMENSIONAL SPLITTING AND ADAPTIVE GRID REFINEMENT 7 DimSplit Clawpack Lax Friedrichs GridRef Error Runtime Figure 7. Comparison of the eciency of Lax{Friedrichs, Clawpack, Dim- Split, and GridRef measured on grids x = a 25, a = ; : : : ; 2?4 for the rst three methods and a = ; : : : ; 2?4 for GridRef. The threshold parameters for GridRef are (:a; :a) In Fig. 7, runtime is plotted vs. the observed error for the Lax{Friedrichs scheme, the Clawpack routine, DimSplit, and GridRef. We observe that the dimensional splitting codes are superior compared to Clawpack for this example. For Burgers' equation, the Riemann solver is very simple, and, by replacing our general solver by another tailored for this specic problem, even greater dierences in performance were observed. Note also that GridRef is only slightly better than DimSplit. This problem is quite demanding for the grid renement, because the large rarefaction areas contribute to the error in L -norm. In the last step the fraction of rened cells was approximately 5% in all runs Nonconvex Flux Function. For a more dicult example, we consider the following ux functions: f(u) = :5u + 8u(u? :75) 2 ; g(u) = u(u + ): Here f is nonconvex. For nonconvex ux functions, the entropy x needed by the Roe solver in Clawpack is dicult to implement (see Harten and Hyman [7]). On the other hand, the nonconvexity of the ux function will not cause any problems in a front tracking setting. We use initial data given by ( ; for (x? :4) 2 + (y? :4) 2 < :25 u (x; y) = ; otherwise:

74 8 LIE, HAUGSE, AND HVISTENDAHL KARLSEN Figure 8. (Left) Approximate solution generated by DimSplit with x = 2?7 and CFL number 4. (Middle) DimSplit with x = 2?5 and CFL number 2, i.e. a rst-order Godunov method. Runtime is 6. CPU seconds. (Right) DimSplit with x = 2?5 and CFL number 8. Runtime is.5 CPU seconds. The analytical solution is unknown, and we used DimSplit with CFL number 4 to generate a reference solution on a ne grid x = 2?9. The solution is computed at time t = :5 on domain [?:5; 3:5] [?:5; 3:5]; see Fig. 8. Convergence Rates. In Table 3, we show the numerical convergence rates obtained with CFL numbers, 2, 4, 8, and 6 for DimSplit and GridRef with factors 2 and 4. The rates are higher than for Burgers' equation; probably a bit too high, since we are now using a reference solution generated by the same numerical method. Nevertheless, we can conclude that the true rates are closer to than to. Also for this example we observe 2 that the lowest numerical error for a xed grid is obtained for CFL numbers well above, typically in the range 4{8. Choosing the Time-Step. Figure 8 shows that DimSplit with CFL number 8 resolves the discontinuities notably better than a rst-order Godunov method. The runtime is also much lower:.5 CPU seconds for DimSplit and 6. for Godunov. For the runs reported in Table 3, the numerical error was plotted vs. the observed runtime (or vs. the number of calls to the Riemann solver) to determine the CFL number leading Table 3. Numerical convergence rates for dierent CFL numbers. (Left) Dim- Split with grid x = 2?3 ; : : : ; 2?7. (Middle) GridRef with renement factor 2, and factor 4 (right) with grid x = 2?2 ; : : : ; 2?6 and threshold (.5;.) CFL rate st.dev CFL rate st.dev CFL rate st.dev

75 DIMENSIONAL SPLITTING AND ADAPTIVE GRID REFINEMENT 9 DimSplit GridRef 2 GridRef 4 DimSplit GridRef 2 GridRef 4 Error Error Runtime Runtime Figure 9. Comparison of the eciency of DimSplit and GridRef factor 2 and 4 at their best performance (left) and at CFL number (right). to the highest eciency. For DimSplit, GridRef factor 2, and GridRef factor 4, the CFL numbers were 6, 6, and 8, respectively. Figure 9 shows a plot of the eciency of the three congurations at \optimal" CFL number and at CFL number. We see that GridRef represents a great improvement in the eciency of dimensional splitting at CFL number (the same was observed for Burgers' equation and other examples not reported here). On the other hand, the CFL number can be increased more in DimSplit than in GridRef before the loss in accuracy becomes signicant, and at the optimal performance the eciency of the three congurations is approximately equal (with a slight preference to DimSplit for this particular problem) General Initial Data. In the experiments so far, we have considered initial data with a very simple structure. It is reasonable to check whether large CFL numbers are feasible for more general initial data. We, therefore, consider the following ux functions: and initial data u (x; y) = f(u) = u?? u 2 ; g(u) = 2 u2 ; ( sin? 3x sin? 2y ; for x ; y ; otherwise: The analytical solution is unknown, and we used DimSplit with CFL number 2 to generate a reference solution on a ne grid x = 2?. The solution is computed at time t = :5 on domain [?:; :775] [?:; :5]; see Fig.. Again the numerical convergence rates were estimated for DimSplit with CFL numbers, 2, 4, 8, and 6 and grid x = 2?4 ; : : : ; 2?8. The rates were.77,.97,.98,., and

76 2 LIE, HAUGSE, AND HVISTENDAHL KARLSEN Figure. (Left) Approximate solution generated by DimSplit with x = 2?9 and CFL number 4. (Middle) DimSplit with x = 2?6 and CFL number 2, i.e. a rst-order Godunov method. Runtime is 4.8 CPU seconds. (Right) DimSplit with x = 2?6 and CFL number 8. Runtime is.3 CPU seconds..4, respectively. For each grid, the lowest error was observed for CFL number 8, and the highest eciency with respect to runtime (or the number of calls to the Riemann solver) was observed for CFL number 6. This conrms once more that large CFL numbers can be used without loss of accuracy. Figure shows that, for this problem also, DimSplit with CFL number 8 gives much better resolution than the rst-order Godunov method. 5. Concluding Remarks The convergence rates conrm that the analytic error bound giving rate is a worstcase estimate and that better performance with rates closer to can be observed in actual 2 computations. Although the method is only rst-order in smooth regions, it resolves discontinuities sharply and is thus best suited for problems where they are important. We observed that surprisingly large time-steps can be used without loss in accuracy. We even observed that the numerical error was decreased by increasing the CFL number beyond and up to 4{8. Compared to a rst-order Godunov method, which corresponds to less than, there 2 is a remarkable improvement in areas containing discontinuities. This indicates that the smearing error introduced by the projection operator is more dominant than the splitting error for low CFL numbers, and that these two balance at a CFL number of about 4{8 (for our test problems). By increasing further, the splitting error becomes dominant and the total error starts to increase. On the other hand, this leads to a decrease in the runtime, and a signicant improvement in the eciency can be observed by choosing in the range {2. For the type of problems considered here, the dynamics can be resolved by a few timesteps. Scalar problems with similar dynamics typically arise when simulating water injection in an oil reservoir. The front tracking and dimensional splitting method presented here constitutes an important part of a novel operator splitting methodology for accurate

77 DIMENSIONAL SPLITTING AND ADAPTIVE GRID REFINEMENT Figure. A double Mach reection at a wedge computed by DimSplit (top) and GridRef (bottom). computations of advection dominated displacement of oil by water [, 2]. Similar observations are made concerning the size of the time-steps for these test cases, which are closer to real-life applications. Adaptive grid renement means great improvement in the performance of dimensional splitting at low CFL numbers for the test cases reported here. However, at high CFL numbers the gain in accuracy is not enough to compensate for the computational overhead in our code, and the performance is equal to DimSplit at its optimum. Still, there are cases where GridRef performs better also at high CFL numbers, for instance the 2-D Riemann problem used in [6, 7], where the error in L -norm is dominated by the representation of shocks and not by large rarefaction areas, as here. Since most eort has been spent on the front tracking part of GridRef, we believe that its performance can be improved by optimizing the management of the adaptive grid. Also both DimSplit and GridRef can be further enhanced by introducing adaptive time-steps. Only outow boundary conditions have been applied here, but in a forthcoming article both Dirichlet and \no ow" type boundary conditions will be considered. The front tracking method can be generalized to systems, for instance the Euler equations [5, 6, 23] and the nonstrictly hyperbolic polymer system [22]. For general systems, a piecewise linear approximation of ux functions will not work. Instead, shock waves and contact discontinuities in the Riemann problems are kept and rarefaction waves are approximated by step functions [2]. Preliminary experiments for the 2-D Euler equations show that DimSplit performs well at moderate (but not at high) CFL numbers, and that GridRef has improved performance compared to DimSplit. Figure shows the double Mach reection test case of Woodward and Colella [27] computed by DimSplit with x = and by GridRef with x = and renement factor 2. Both computations used time-steps, which corresponds roughly to a CFL number 2. The solutions are almost identical, but using GridRef the runtime is reduced by 2%. More details will be given later [9].

78 22 LIE, HAUGSE, AND HVISTENDAHL KARLSEN Acknowledgements. We would like to thank Helge Holden and Nils Henrik Risebro for introducing us to this problem and for guidance along the way. References [] F. Bratvedt, K. Bratvedt, C. F. Buchholz, T. Gimse, H. Holden, L. Holden, and N. H. Risebro. FRONTLINE and FRONTSIM: two full scale, two-phase, black oil reservoir simulators based on front tracking. Surveys Math. Indust., 3(3):85{25, 993. [2] B. Cockburn and P.-A. Gremaud. A priori error estimates for numerical methods for scalar conservation laws. I. The general approach. Math. Comp., 65(24):533{573, 996. [3] M. G. Crandall and A. Majda. The method of fractional steps for conservation laws. Numer. Math., 34:285{34, 98. [4] C. M. Dafermos. Polygonal approximation of solutions of the initial value problem for a conservation law. J. Math. Anal. Appl., 38:33{4, 972. [5] S. K. Godunov. Finite dierence methods for numerical computation of discontinous solutions of the equations of uid dynamics. Mat. Sbornik, 47:27{295, 959. (Russian). [6] W. D. Gropp. Local uniform mesh renement with moving grids. SIAM J. Sci. Stat. Comput., 8(3):292{34, 987. [7] A. Harten and J. M. Hyman. Self adjusting grid methods for one-dimensional hyperbolic conservation laws. J. Comp. Phys., 5:235{269, 983. [8] H. Holden, L. Holden, and R. Hegh-Krohn. A numerical method for rst order nonlinear scalar conservation laws in one-dimension. Comput. Math. Applic., 5(6{8):595{62, 988. [9] H. Holden, K.-A. Lie, and N. H. Risebro. An unconditionally stable method for the Euler equations. Manuscript. [] H. Holden and N. H. Risebro. A method of fractional steps for scalar conservation laws without the CFL condition. Math. Comp., 6(2):22{232, 993. [] K. H. Karlsen, K. Brusdal, H. K. Dahle, S. Evje, and K.-A. Lie. The corrected operator splitting approach applied to a nonlinear advection{diusion problem. Comput. Methods Appl. Mech. Engrg. To appear. [2] K. H. Karlsen, K.-A. Lie, N. H. Risebro, and J. Fryen. A front-tracking approach to a two-phase uid-ow model with capillary forces. In Situ, 22():59{89, 998. [3] S. N. Kruzkov. First order quasi-linear equations in several independent variables. Math. USSR Sbornik, (2):27{243, 97. [4] N. N. Kuznetsov. Accuracy of some approximative methods for computing the weak solutions of a rst-order quasi-linear equation. USSR Comput. Math. and Math. Phys. Dokl., 6(6):5{9, 976. [5] J. O. Langseth. On an implementation of a front tracking method for hyperbolic conservation laws. Advances in Engineering Software, 26():45{63, 996. [6] J. O. Langseth, N. H. Risebro, and A. Tveito. A conservative front tracking scheme for D hyperbolic conservation laws. In A. Donato and F. Oliveri, editors, Nonlinear Hyperbolic Problems: Theoretical, Applied, and Computational Aspects (Taormina, 992), volume 43 of Notes Numer. Fluid Mech., pages 385{392. Vieweg, Braunschweig, 993. [7] R. J. LeVeque. Large time step shock-capturing techniques for scalar conservation laws. SIAM J. Numer. Anal., 9(6):9{9, 982. [8] R. J. LeVeque. CLAWPACK User Notes. Applied Mathematics, Box 35242, University of Washington, Seattle, WA 9895{242, 995. Available from netlib.att.com in netlib/pdes/claw/doc/ or at the URL [9] B. J. Lucier. Error bounds for the methods of Glimm, Godunov and LeVeque. SIAM J. Numer. Anal., 22:74{8, 985. [2] B. J. Lucier. A moving mesh numerical method for hyperbolic conservation laws. Math. Comp., 46(73):59{69, 986.

79 DIMENSIONAL SPLITTING AND ADAPTIVE GRID REFINEMENT 23 [2] N. H. Risebro. A front{tracking alternative to the random choice method. Proc. Amer. Math. Soc, 7(4):25{29, 993. [22] N. H. Risebro and A. Tveito. Front tracking applied to a nonstrictly hyperbolic system of conservation laws. SIAM J. Sci. Stat. Comput., 2(6):4{49, 99. [23] N. H. Risebro and A. Tveito. A front tracking method for conservation laws in one dimension. J. Comp. Phys., ():3{39, 992. [24] P. L. Roe. Discontinuous solutions to hyperbolic systems under operator splitting. Numer. Methods Partial Dierential Equations, 7:277{297, 99. [25] G. Strang. On the construction and comparison of dierence schemes. SIAM J. Numer. Anal., 5(3):56{57, 968. [26] Z.-H. Teng. On the accuracy of fractional step methods for conservation laws in two dimensions. SIAM J. Numer. Anal., 3():43{63, 994. [27] P. Woodward and P. Colella. The numerical simulation of two-dimensional uid ow with strong shocks. J. Comp. Phys., 54(5):5{73, 984. (Knut{Andreas Lie) Department of Mathematical Sciences, Norwegian University of Science and Technology, N-734 Trondheim, Norway address: andreas@math.ntnu.no (Vidar Haugse) Department of Petroleum Engineering and Applied Geophysics, Norwegian University of Science and Technology, N-734 Trondheim, Norway address: vidarh@ipt.ntnu.no (Kenneth Hvistendahl Karlsen) Department of Mathematics, University of Bergen, Johs. Brunsgt. 2, N-58 Bergen, Norway address: kennethk@mi.uib.no

80

81 Paper III A Dimensional Splitting Method for Nonlinear Equations with Variable Coecients Knut{Andreas Lie

82

83 A DIMENSIONAL SPLITTING METHOD FOR NONLINEAR EQUATIONS WITH VARIABLE COEFFICIENTS KNUT{ANDREAS LIE Abstract. A numerical P method is presented for the variable coecient, nonlinear advection equation u t + i= V i(x; t)f i (u) xi = in arbitrary space dimension for bounded d velocities that are Lipschitz continuous in the x variable. The method is based on dimensional splitting and uses a recent front tracking method to solve the resulting onedimensional non-conservative equations. The method is unconditionally stable, and it produces a subsequence that converges to the entropy solution as the discretization of time and space tends to zero. Three numerical examples are presented. (). Introduction We consider variable coecient, hyperbolic equations of the form u t + dx i= V i (x; t)f i (u) xi = ; u(x; ) = u (x): An important example is nonlinear advection of a scalar quantity u in a specied velocity eld V (x; t) in arbitrary space dimension. If the ow is incompressible, the conservation law governing the process can be written in the non-conservative form (). This type of equation is frequently occurring in simulation of ow phenomena. An important application which was the initial motivation for this study is the modelling of displacement of oil by water in petroleum reservoirs. In this case the ux function has a typical s-shape and the initial value problem is sometimes called a Buckley{Leverett problem. Other applications are containment transport in saturated groundwater ow, atmospheric models of trace gases, and models for chemical reactors. The equation also occurs when simulation advection processes on curvilinear grids. In the following we will develop a numerical method for (). The development is strongly inspired by a dimensional splitting P method proposed by Holden and Risebro [5] for the d constant coecient equation u t + f i= i(u) xi =. Dimensional splitting decomposes the problem into a series of one-dimensional problems, one in each direction, and is a widely used technique to extend one-dimensional numerical methods to multi-dimensional problems. Holden and Risebro used a very ecient front tracking method [4] to solve the Date: April 3, Mathematics Subject Classication. 35L65, 65M2, 65M99. Key words and phrases. Variable coecients, scalar conservation laws, dimensional splitting, front tracking. My research has been supported by the Research Council of Norway under grant 555/4.

84 2 KNUT{ANDREAS LIE one-dimensional equations, and thus obtained a numerical method that is unconditionally stable and very ecient []. The front tracking method has recently [9] been extended to the variable coecient equation (2) u t + V (x; t)f(u) x = ; u(x; ) = u (x): We use this new method as a building block for generalizing Holden and Risebro's method to the variable coecient equation (). See Ref. [8] and the references therein for other approaches, mainly for linear ux functions, for which our method coincides with the method of characteristics. The outline of the paper is as follows. x2 describes the construction of approximate solutions, and thereby introduces the numerical method implicitly. In x3 we verify that the approximate solutions converge to the entropy weak solution. Finally, three numerical experiments are presented in x4: two simple linear advection problems and a model problem from two{phase reservoir ow. 2. Construction of Approximate Solutions For simplicity, the dimensional splitting method will be presented for an equation in two spatial dimensions with time independent velocity eld. That is, we consider the equation (3) u t + U(x; y)f(u) x + V (x; y)g(u) y = ; u(x; y; ) = u (x; y): It is straightforward to generalize the method to higher dimensions and time dependent velocities. Our interest is with solutions that may contain discontinuities. Existence and uniqueness of discontinuous solutions were proved by Kruzkov [7], who also proposed an entropy condition to identify the unique physical solution, see x3. Let u(t) = S(t)u denote the entropy solution of (3). Then dimensional splitting approximations can be dened as S(nt)u (x; y) = S g;v (t)s f;u (t) n u (x; y); S(nt)u (x; y) = S f;u (t=2)s g;v (t)s f;u (t=2) n u (x; y); (Godunov) (Strang) where S f;u (t)u and S g;v (t)u are the exact solutions of (2) with ux functions f and g and velocities U and V, respectively. Here we consider numerical approximations dened on a uniform Cartesian grid with nodes f(ix; jy)g, where x; y are given positive numbers and i; j 2 Z. The onedimensional solution operators will be approximated using front tracking for equation (2). One-Dimensional Front Tracking. In the front tracking method for (2) we seek to construct an approximation within the class of piecewise constant functions (step functions). First the initial data u are approximated by a step function. This denes a sequence of local Riemann problems. If the ux function f is approximated by a piecewise linear function, the similarity solution of each Riemann problem is again a step function. Each discontinuity (or front) in the Riemann solution propagates along a path x(t) described by an ordinary dierential equation _x = V (x)s, where s is the Rankine{Hugoniot velocity s = (f(u + )? f(u? ))=(u +? u? ). If we approximate the velocity by a piecewise linear

85 DIMENSIONAL SPLITTING FOR VARIABLE COEFFICIENT EQUATIONS 3 function, each dierential equation can be solved explicitly. The local Riemann problems are then connected, and we track the outgoing fronts up to the time of the rst wave interaction. This interaction is a new Riemann problem which is solved by a step function, and so on. The front tracking algorithm thus consists of solving Riemann problems and tracking fronts until they collide. The method is rst order and has no associated time step [9]. If the velocity is time dependent, the algorithm is essentially the same, except that special care should be taken when the velocity changes sign in time, see Lie [9]. (The velocity approximation is now, for instance, piecewise constant in time). Dimensional Splitting. Let be the usual grid block averaging operator dened on the uniform grid f(ix; jy)g; that is, ZZ (4) u(x; y) = u(; ) dd; 8(x; y) 2 z i;j; xy z i;j where z i;j is grid block number (i; RR j) with lower left-hand corner in (ix; jy). This projection has the property that ju? uj = O(max(x; y)). For the velocity approximations U ; V we assume that U (V ) is piecewise linear in the x-direction (ydirection) and piecewise constant in the y-direction (x-direction). Furthermore, assume that ku j+? U j k C U y and kv i+? V i k C V x for positive constants C U ; C V. Now, let S f;u (t) and S g;v (t) denote the front tracking solution operators. Using Godunov splitting, the dimensional splitting solution fu n ijg N n= is then dened as (5) u n ij (x; y) = S g;v (t)s f;u n (t) u (x; y): The approximate solution is dened analogously for the Strang splitting, and the extension to arbitrary space dimension is obvious. 3. Convergence to the Entropy Solution The one-dimensional solutions constructed by front tracking have the three following important properties [9, Lemma 2.3]: Suppose that f is continuous and piecewise linear, V is bounded, and u is a bounded step function with nite total variation. Moreover, assume that for each nite T > there are a nite number of 's less than T such that sgn V (x;? ) 6= sgn V (x; + ), and assume that sgn V (a + ; t) = sgn V (a? ; t) at every point of discontinuity (a; t). Then the solution of u t + V (x; t)f(u) x = satises () a maximum principle, kuk ku k, (2) Lipschitz continuity of the L -norm, ku(t 2 )? u(t )k Cjt 2? t j, (3) TVD-property, TV(u) TV(u ). We will now prove that the dimensional splitting solution has the same three properties. This will in turn ensure the existence of a convergent subsequence. For convenience we assume that x = C y = C 2 t, for nonzero constants C ; C 2. Lemma 3.. The solution u n (x; y) remains bounded in time, ku n (x; y)k ku (x; y)k. Proof. The one-dimensional solution operators S f;u and S g;v do not introduce new maxima or minima into the solution, and neither does the projection operator.

86 4 KNUT{ANDREAS LIE Lemma 3.2. If u has compact support, then there is a positive constant C such that X? ju m ij? u n ijjxy Ct + O max(x; y) jm? nj: ij Proof. The lemma follows by induction if we can prove that X ij ju n+ ij? u n ijjxy Ct + O? max(x; y) : One time step in our algorithm can be described as u n ij = u n j () Sf;U?! u n j (t)?! u n+ 2 ij = u n+ i 2 () Sg;V?! u n+ 2 (t) i?! u n+ ij : The L -norm of the one-dimensional front tracking solution is Lipschitz continuous in time, and hence we see that X ju n j ( k; t)? u n j ( k; )j(x k+? x k ) Dt; k where k 2 [x k ; x k+ ] and the intervals f[x k ; x k+ ]g are given such that both u n j (x; t) and u n j (x; ) are constant on each interval. A similar inequality is valid for the y-sweep from () to u n+=2 (t). For convenience we assume that the compact support of u n for all u n+=2 i i nite n is embedded in the rectangle with corners x = Nx and y = My. This is a reasonable assumption, as u has nite support and all waves propagate with nite speed. Using the above inequality and the properties of the projection operator now gives X ij ju n+ ij? u n ij jxy ZZ + + ju n+ ij? u n+ 2 i (t)j dxdy + R 2 NX i=?n x X k NX j=?n y X k ju n+ 2 Ct + O? max(x; y) : ZZ 2 ju n+ ij R 2? u n j (t)j dxdy i ( k ; t)? u n+ 2 i ( k ; )j(y k+? y k ) ju n j ( k; t)? u n j ( k; )j(x k+? x k ) Lemma 3.3. There is a constant C such that TV(u n ) e Cnt TV(u ); that is, the total variation of the solution u n (x; y) is nite in nite time. Proof. Using induction, it is sucient to prove that TV(u n+ ) e Ct TV(u n ). The total variation for a two-dimensional function v(x; y) can be written TV(v(; )) = Z R TV x(v(; y)) dy + Z R TV y(v(x; )) dx:

87 DIMENSIONAL SPLITTING FOR VARIABLE COEFFICIENT EQUATIONS 5 Let us rst consider the x-sweep of the algorithm. The front tracking solution is total variation diminishing by construction. If v is a step function, then TV x (v) TV x (v), and we get that X ju n+ 2 i+;j? un+ 2 ij X (6) j ju n i+;j? un ij j: i i Let v denote the solution of v t + U(x)f(u) x = with initial data v and w the solution of w t + V (x)f(u) x = with initial data w. Then we have that [9, Lemma 3.2] kv(; t)? w(; t)k L (R) e t kv? w k L (R) + te t kfk Lip ku? V k TV(v ); for some constant. Now let v = u n j (x; t) and w = un j+ (x; t) be two step functions obtained by front tracking in tube j and j +, respectively. The corresponding velocities are U j (x) and U j+ (x). Assume that u and v are constant on the intervals f[x k ; x k+ ]g. If k 2 [x k ; x k+ ], then Z R jun j+(x; t)?u n j (x; t)j dx X k ju n j+( k ; t)? u n j ( k ; t)j(x k+? x k ) X e t ju n? i;j+ un ij jx + tet kfk Lip C U y TV x (u n ;j ): i After applying the projection operator we have that and hence (7) X i ju n+ 2? j+ un+ 2 j X i jx = X k ju n+ 2? j+ un+ 2 j ju n j+( k ; t)? u n j ( k ; t)j(x k+? x k ); X jx e t ju n? i;j+ un ij jx i + te t kfk Lip C U y TV x (u n ;j): Summing (7) and (6) times y over j and adding the result gives Z TV(u n+ 2 ) ZR TV x(u n ) dy + e ZR t TV y(u n ) dx + tkfk Lip kuk Lip e t R TV x(u n ) dy ( + t)e t TV(u n ): A similar results holds for the y-sweep. Using the fact that ( + a) e a for positive a gives that TV(u n+ ) e Ct TV(u n ). Assume rst that u has compact support. Let denote all the discretization parameters, = (x; y; ; t). Then the construction in x2 gives a family fu (t)g of approximate solutions. We can now show that the sequence fu (t)g is convergent by using Lemmas 3.{3.3 and Helly's theorem, see Crandall and Majda [2]. Moreover, the sequence converges in L loc (R2 [; T ]) for any T >, and the limit u(x; y; t) is a solution of (3). Using a similar argument as in Ref. [2], we can then dispense with the assumption of compact support on the initial data.

88 6 KNUT{ANDREAS LIE (8) The entropy solution of (3) satises the following Kruzkov entropy condition ZZ R 2 Z T n? t ju? kj + F (u; k) U + G(u; k)? o V dxdydt x y ZZ ZZ? ju(t )? kj(t ) dxdy + ju()? kj() dxdy : R 2 R 2 where F (u; k) = sgn(u? k)(f(u)? f(k)). We use (U) x as a shorthand for the generalized derivative U x + x U. We want to show that the limit solution u(x; y; t) satises this entropy condition and that it hence is a unique entropy solution. The argument is a slight variation to that by Crandall and Majda []. For the approximate solutions we use the time interpolation u (x; y; t) = 8 < : S f;u S g;v? 2(t? tn ) u n ij(x; y); for t 2 [t n ; t n+=2 );? 2(t? tn+=2 ) u n+ 2 ij (x; y); for t 2 [t n+=2 ; t n+ ): The solution obtained after one sweep in either direction is the entropy solution of an equation similar to (2) and thus satises a corresponding one-dimensional entropy condition. Note that time now goes `twice as fast'. We therefore introduce a modied test function ~(x; y; t) = (x; y; 2t). Then u n j (x; t) satises Z R Z tn+=2 t n Z n? 2 tju n j (x; t)? kj + F (u n j (x; t); k) U dxdt x u n j (x; t? )? k Z n+=2 (x; tn+=2 ) dx + u n 2 j (x; t + n )? k (x; tn ) dx :? 2 R A similar inequality is valid for the y-sweep Z Z tn+ R 2 n t n+=2 2 2 R tju n+ 2 i (y; t)? kj + G (u n+ Z? n+ u 2 2 R R We integrate the two inequalities over y and x, respectively, add them, and sum over n ZZ Z T n o dxdydt? 2 2? i (y; t); k) V dydt y Z i (y; t? n+)? k (y; tn+ ) dy + n+ u 2 i (y; t + n+=2 2 )? k (y; tn+=2 ) dy :?? 2 tju? kj + n F (u ; k) U + (? x n)g (u ; k) V y ZZ ZZ u (x; y; T )? k (x; y; T ) dxdy + u (x; y; )? k (x; y; ) dxdy R 2 2 R X ZZ 2 u (x; y; t? R )? k n=2? u (x; y; t + )? k (x; y; t n=2 n=2 ) dxdy: 2 2N? n= R

89 DIMENSIONAL SPLITTING FOR VARIABLE COEFFICIENT EQUATIONS 7 Here n denotes the characteristic function of f(x; y; t)jt n t t n+=2 g and Nt = T. In the limit n! we have that n!. The sum on the right-hand side reects the 2 projection operator used after each one-dimensional sweep. As the spatial discretization tends to zero, the projection operator tends to the identity operator and the right-hand side disappears. We then let the parameters in the approximation of ux and velocity tend to zero. By using the bounded convergence theorem for Lebesgue integrals we obtain the entropy condition (8). Thus we have proved the following lemma: Lemma 3.4. The limit solution u(x; y; t) is a weak entropy solution of (3); that is, it fullls the entropy condition (8). In the case of time dependent velocities, the above analysis goes through with the obvious modications. Similarly, extending these results to arbitrary space dimension is also straightforward. The results can be summarized in a theorem: Theorem 3.5. Let u be a bounded function with bounded total variation. Let f i be Lipschitz continuous functions and V i (x; t) be bounded functions that are Lipschitz continuous in x. Moreover, assume that for each nite T > there are a nite number of points < T such that sgn V i (x;? ) 6= sgn V i (x; + ). Then the sequence of approximate solutions dened by u n (x; t) = S f d;v d (t) S f ;V n (t) u (x) converges to the unique entropy solution of (). 4. Numerical Examples The front tracking method has been tested on various examples. Here we present three problems. The rst is a simple counterclockwise rotation of a cylinder. Its purpose is to illustrate the two error mechanisms in the dimensional splitting; the splitting and the projection. The second example introduces an important application of the method; solution of equations on curvilinear grids. Although both examples are simple advection problems, this is by no means a prerequisite for the method. The two examples were chosen merely for their simplicity. The front tracking method was developed for, and is most successfully applied to nonlinar problems. Linear advection problems are in many aspects a worst case for the method, since they contain no self-sharpening that counteracts the smearing introduced by the projection operator. The third example is nonlinear and has a stronger avour of real-life. It models water injection in a homogeneous petroleum; a two-phase ow process. Neglecting capillary forces, the process is described by a hyperbolic{elliptic system. Similar examples with capillary forces included (and with a real pressure solver) can be found in Karlsen et al. [6]. There the front tracking method constitutes an important part of a novel methodology for obtaining the correct balance of advection and diusion in petroleum reservoirs. See also Evje et al. [3] for applications of the method to degenerate hyperbolic{parabolic problems.

90 8 KNUT{ANDREAS LIE Runtime: 2.49 sec Runtime: 4.5 sec Runtime: 9.4 sec Figure. Example. Contour plots of the cylinder at ve equally spaced points in time during the rst rotation. The number of time steps is 2, 4, and 8 from left to right corresponding to CFL numbers 5.7, 7.9, and 3.9, respectively. Example : A Rotating Cylinder. Consider a cylinder that rotates counterclockwise around the origin in a rectangular domain [?; ] [?; ], where u t? yu x + xu y = ; u (x; y) = u(x; y; ) = u (x; y); ( ; if (x? :5) 2 + y 2 :6 ; otherwise: By introducing cylindrical coordinates (see Example 2 below), this problem can be transformed to a family of one-dimensional problems and solved exactly. However, since the problem is a pure linear advection problem, it allows us to study the two factors contributing to the total error; the errors introduced by the splitting and by the projection. We have earlier pointed out that the front tracking method is unconditionally stable. Hence very large time steps can be used to reduce the number of splitting steps. Although this is favourable in terms of computer eciency, it obviously leads to large splitting errors. On the other hand, the number of projections is reduced and hence the corresponding smearing. In Figure we have plotted the contours of the cylinder at ve equally spaced points in time during one revolution using 2, 4, and 8 time steps. The number of unknowns in each direction is. The eect described above is clearly evident. With 2 time steps there is little smearing after one rotation. However, the cylinder appears rather deformed during the revolution. On the other hand, using 8 time steps gives an adequate representation of the shape throughout the rotation, but also introduces considerable smearing due to the large number of projections. Figure 2 shows the error in L and L 2 -norm after one revolution versus runtime for CFL numbers 2, 4, 8, and 6. The norms were computed using a fourth order numerical quadrature on each rectangle in the grid. The number of unknowns in each direction was 25 2 n, for n = ; : : : ; 4. Based on the measurements of the error, we can determine

91 DIMENSIONAL SPLITTING FOR VARIABLE COEFFICIENT EQUATIONS 9 CFL=6 CFL=8 CFL=4 CFL=2 CFL=6 CFL=8 CFL=4 CFL=2 L error L2 error Runtime Runtime Figure 2. Example. Errors in L -norm (left) and L 2 -norm (right) after one rotation versus runtime for CFL numbers 2, 4, 8, and CFL=6 CFL=8 CFL=4 CFL=2 CFL=6 CFL=8 CFL=4 CFL=2 Rate.7 Rate run no run no. Figure 3. Example. Instantaneous convergence rates for error in L -norm (left) and L 2 -norm (right) after one rotation versus runtime for CFL numbers 2, 4, 8, and 6. instantaneous convergence rates. If e n denotes the error for run n, then the instantaneous convergence rate is dened as r n = log 2 (e n =e n+ ). Plots of observed rates are given in Figure 3. Notice that the highest eciency is observed for CFL number 6 (except on the coarsest grid). Furthermore, the rates are well above for the coarser grids, but seem to 2 go asymptotically to as the grid is rened. The rates are not surprisingly low, as there is 2 no self-sharpening eect in the equation to counteract the O(x =2 ) smearing introduced by the projection operator. For nonlinear equations a higher rate can be observed, see Ref. []. Example 2: Curvilinear Grids. The second example introduces an important application of the method computations on curvilinear grids. For simplicity consider the linear advection equation u t + U(x; y)u x + V (x; y)u y = ; u(x; y; ) = u (x; y);

92 KNUT{ANDREAS LIE Figure 4. Example 2. Snapshots of solution during time interval t 2 [; ]. (Left) Cylindrical 5*5 grid with 4 time steps. (Middle) Cartesian 5*5 grid with 8 time steps. (Right) A ne grid solution on a 8*8 Cartesian grid. where the velocities are superpositions of the rotation from Example and a radial movement (a = :5) U(x; y) =?y + ax ay ; V (x; y) = x + x 2 + y2 x 2 + y : 2 The initial function is equal one inside a circle with radius :2 centred at (; :5) and zero elsewhere. The cylinder will rotate around the origin and at the same time be deformed due to the decreasing radial velocity component. Now, introduce cylindrical coordinates (r; ) by the coordinate transform x = r cos ; y = r sin : In the new coordinates the equation becomes where u t + R(r; )u r + (r; )u = ; R(r; ) = cos U(r cos ; r sin ) + sin V (r cos ; r sin ) (r; ) = r? sin U(r cos ; r sin ) + r? cos V (r cos ; r sin ): We thus get the simple advection equation u t + u r + (a=r)u =. To avoid the singularity at the origin, the computational domain is chosen equal [:2; :] [; 2], and we impose periodic boundary conditions at = and = 2. Figure 4 shows ve snapshots of the solution in the time interval t 2 [; ] computed on a 5*5 grid with 4 time steps and on a 5*5 Cartesian grid with 8 time steps. For reference, a solution computed on a ne Cartesian grid has been included. Not surprisingly, we observe that the curvilinear grid gives a superior resolution of the movement of the cylinder. On the other hand, the grid cells have approximately equal area and give almost the same amount of smearing of the discontinuities.

93 DIMENSIONAL SPLITTING FOR VARIABLE COEFFICIENT EQUATIONS Example 3: Water Injection in An Oil Reservoir. The nal example describes water injection into a homogeneous and horizontal oil eld. The ow of oil and water is assumed to be immiscible and incompressible. If we choose total Darcy velocity V, total uid pressure p, and water saturation s as primary variables, the displacement of oil by water is governed by a coupled system of nonlinear partial dierential equations. We have the elliptic pressure equation r? ( w + o )rp = ; where w and o are the mobilities (relative permeability k ri divided by viscosity i ) of water and oil and are assumed to be known functions of the saturation. As a simple model we use w (s) = s 2 and o (s) = (? s) 2. The pressure equation is coupled via the total Darcy velocity V =?( w + o )rp to the hyperbolic saturation equation s t + V rf(s) = ; where the fractional ow function f = f(s) is given by the expression f = w w + o : In the saturation equation we have neglected diusion due to capillary forces. The system is constrained by appropriate initial and boundary conditions; here we will use s = initially and `no ow' boundary conditions, that is, V n = on the boundary. In the saturation equation, the production wells are modelled as outow boundaries and the injection wells as inow boundaries with a saturation kept xed at. A sequential time stepping procedure is used to decouple the equations. First the pressure equation is solved with the initial saturation as input to generate a total velocity eld. Subsequently, the velocity eld is held constant when solving the saturation equation. Then the pressure is recomputed, and so on. This strategy is common and reects the dierent nature of the two equations; see Refs. [] for an analysis of this procedure. Instead of solving the pressure equation by a numerical method, we use a simple analytic approximation to the pressure: Assume that each well is a point source. From well number i located at (x i ; y i ) we add the contribution q 2 i ln((x? x i ) 2 + (y? y i ) 2 ) to the total pressure, where q i is a constant (positive P for injection and negative for production). The Darcy velocity becomes V = r i q 2 i ln((x?x i ) 2 +(y?y i ) 2 ). Although crude, this approximation is reasonable away from each well. The computational domain is [; ] [; ]. We have used one injection well and four production wells; the strength ratio is 4:. In Figure 5. To reduce the error contribution from the velocity approximation, we start with an initial saturation surrounding the injection well, see Figure 5. We show the water saturation as contour plots (with ten contours) at times t = : and :3. To reach nal computing time :3 we have used 3 time steps on a * grid, corresponding to CFL numbers in the range {2 away from the wells. The reference solution is generated on a 5*5 grid using 6 time steps.

94 2 KNUT{ANDREAS LIE Reference solution Solution on a * grid t= t= t= t=.3 Figure 5. Example 3. Saturation proles initially (top) and at time t = :3 (bottom). The injection well in the centre is marked by an `o' and production wells by an `x'. Acknowledgement. I thank Vidar Haugse, Helge Holden, Kenneth Hvistendahl Karlsen, and Nils Henrik Risebro for many fruitful discussions. References [] M. G. Crandall and A. Majda. The method of fractional steps for conservation laws. Numer. Math., 34:285{34, 98. [2] M. G. Crandall and A. Majda. Monotone dierence approximations for scalar conservation laws. Math. Comp., 34(49):{2, Jan. 98. [3] S. Evje, K. H. Karlsen, K.-A. Lie, and N. H. Risebro. Front tracking and operator splitting for nonlinear degenerate convection{diusion equations. Report No., Institut Mittag{Leer, 997/98. [4] H. Holden, L. Holden, and R. Hegh-Krohn. A numerical method for rst order nonlinear scalar conservation laws in one-dimension. Comput. Math. Applic., 5(6{8):595{62, 988. [5] H. Holden and N. H. Risebro. A method of fractional steps for scalar conservation laws without the CFL condition. Math. Comp., 6(2):22{232, Jan [6] K. H. Karlsen, K.-A. Lie, N. H. Risebro, and J. Fryen. A front-tracking approach to a two-phase uid-ow model with capillary forces. In Situ (A Special Issue on Reservoir Simulation), 22():59{89, 998. [7] S. N. Kruzkov. First order quasi-linear equations in several independent variables. Math. USSR Sbornik, (2):27{243, 97.

95 DIMENSIONAL SPLITTING FOR VARIABLE COEFFICIENT EQUATIONS 3 [8] R. J. LeVeque. High-resolution conservative algorithms for advection in incompressible ow. SIAM J. Numer. Anal., 33:627{665, 996. [9] K.-A. Lie. A front tracking method for one-dimensional nonlinear advection equations with variable coecients. Preprint. Mathematics No. 6, Norwegian University of Science and Technology, Trondheim, Norway, 997. [] K.-A. Lie, V. Haugse, and K. H. Karlsen. Dimensional splitting with front tracking and adaptive grid renement. Numer. Methods Partial Dierential Equations. To appear. [] H. J. Schroll and A. Tveito. Local existence and stability for a hyperbolic{elliptic system modeling two{phase reservoir ow. Preprint 36, RWTH Aachen, 997. (Knut{Andreas Lie) Department of Mathematical Sciences Norwegian University of Science and Technology N-734 Trondheim, Norway address: andreas@math.ntnu.no

96

97 Paper IV An Unconditionally Stable Method for the Euler Equations Helge Holden, Knut{Andreas Lie, and Nils Henrik Risebro

98

99 AN UNCONDITIONALLY STABLE METHOD FOR THE EULER EQUATIONS HELGE HOLDEN, KNUT{ANDREAS LIE, AND NILS HENRIK RISEBRO Abstract. We discuss how to combine a front tracking method with dimensional splitting to solve numerically systems of conservation laws in two space dimensions. In addition we present an adaptive grid renement strategy. The method is unconditionally stable and allows for moderately high cfl numbers (typically {4), and thus it is highly ecient. The method is applied to the Euler equations of gas dynamics. In particular, it is tested on an expanding circular gas front, a wind tunnel with a step, a double Mach reection as well as a shock-bubble interaction. The method shows very sharp resolution of shocks.. Introduction Front tracking has proved to be an ecient tool to analyze rigorously hyperbolic conservation laws, both scalar equations and systems, in one space dimension. We here show how to use front tracking for systems of conservation laws as an unconditionally stable numerical method in two space dimensions, and we test it on the Euler equations of gas dynamics. Let us rst discuss the method of front tracking. Consider the hyperbolic conservation law () u t + f(u) x = ; uj t= = u : If we approximate the initial data by a step function, that is, a piecewise constant function, the problem is locally reduced to solving a series of problems with Riemann initial data, i.e., a single jump separating two constant states. In the case of general systems, the solution of a Riemann problem is locally characterized by the Lax construction where one has a set of wave curves forming a local system of coordinates around two nearby constant states. Shocks and contact discontinuities are unchanged in the front tracking technique. However, if two states are connected by a rarefaction wave, we sample points along the rarefaction curve and approximate the (continuous) rarefaction wave by a (discontinuous) function with several small jumps. In this way the approximate solution is a step function for any xed time. We denote all discontinuities in the solution as fronts. When two fronts collide we will have another local Riemann problem, which can Date: April 5, Mathematics Subject Classication. 65M2, 65M5, 76L5, 76N5, 35L65. Key words and phrases. Front tracking, dimensional splitting, grid renement, Euler equations. The research has been supported in part by the Research Council of Norway under grant 99/42. The second author has been supported by grant 555/4 from the Research Council of Norway.

100 2 HOLDEN, LIE, AND RISEBRO be solved using the same construction. In this way the solution will remain a step function. Notice that there is no associated time step in the construction, and hence the method is unconditionally stable. For the strictly hyperbolic system and for suciently small initial data, one can prove that the approximate solution converges in L loc to a weak solution of () as the sampled points approximate the rarefaction wave better and the approximate initial data approaches u, see Risebro [2] and Bressan and LeFloch [5]. A modication of this method, the wave front tracking method of Bressan, has recently been used to show stability, and thereby uniqueness, of solutions of (), see [5, 4]. It is natural to explore the front tracking method numerically. Risebro and Tveito [22, 23] and Langseth, Risebro and Tveito [5] have presented one-dimensional numerical implementions of front tracking for systems. In [22] front tracking is applied to the nonstrictly hyperbolic system of polymer ooding. Some examples of gas dynamics in one dimension are studied in [23]. In [5] a modied version of the earlier schemes is introduced and the method is compared with Godunov methods. Implementation issues are discussed by Langseth in [3]. See also the related large time step method of LeVeque [7]. For a recent application of the front tracking method to the shallow water equations we refer to [8, 9]. We here extend the application of front tracking as a numerical method to multidimensional problems. The resulting method is unconditionally stable; that is, the time step is not restricted by the spatial discretization. In this paper we exclusively discuss the two-dimensional case, but conceptually the approach works in higher dimensions as well. A fundamental issue with the front tracking method is the potential build-up of innitely many fronts in nite time. Analytically this is discussed in [2, 5] and [2]. Numerically, it is treated as follows. At each Riemann problem we measure the total variation of each elementary wave. Employing pre-set user-dened cut-o values small waves are eliminated, thus resulting in nitely many fronts in the large. The extension from one to two space dimensions is accomplished by dimensional splitting. Front tracking is intrinsically grid-independent. In order to use dimensional splitting we introduce a rectangular Cartesian grid, and solve the conservation laws in each coordinate direction followed by a projection onto the grid. In the scalar case one can prove that this method converges to the unique solution, see Holden and Risebro []. This code is referred to as dimsplit. Lie et al. [8] have recently developed an adaptive grid renement in the context of front tracking in the scalar case. Here we implement this in the case of systems, and this code is denoted gridref. Both codes include common boundary conditions like absorbing, periodic, Dirichlet, as well as reective boundary conditions. Let us now turn to the discussion of the test cases. The rst example, suggested by Toro [24], concerns an outward explosion caused by a high density circular region of gas. The radial symmetry allows us to test the eects coming from the Cartesian grid. The front tracking solution is compared with the second order central dierence scheme of Jiang and Tadmor [2]. The front tracking method shows less smearing and is more timeeective than the dierence scheme. Both schemes show some minor grid orientation eects. Moreover, a convergence study shows that the front tracking method converges to the nonsmooth solution of this problem at a rate.7{.8. In the second example we study a wind tunnel with a small step which is hit by a planar shock with speed Mach 3, see Woodward and Colella [25]. Here the corner of the step is a

101 AN UNCONDITIONALLY STABLE METHOD 3 singular point in the ow which is treated as in [25] by adjusting the physical values near the corner. The front tracking method resolves the major ow properties accurately. The adaptive grid renement code gridref reduces the runtime substantially compared with dimsplit with the same accuracy. The next example addresses the question of a planar shock with speed Mach hitting a reecting wall, resulting in the familiar double Mach reection. Front tracking recovers the ner features of the ow, and again gridref is substantially faster. Both the second and the third example are run on the same grids as Woodward and Colella [25], but with substantially higher cfl numbers. In the nal example we consider a planar shock hitting a circular region of gas at low density. A three-dimensional version of this problem was analyzed by Langseth and LeVeque [4]. The interaction creates complicated wave patterns. Front tracking is here compared with the clawpack software [6] developed by LeVeque, as well as the difference scheme of Jiang and Tadmor. clawpack allows for several dierent techniques. We observe that front tracking is better than the rst order methods tested and performs similarly to the second order method with minmod limiter. Quirk [2] has identied certain fundamental problems with Godunov type numerical methods, some of which we have encountered here. The most fundamental surfaces in the case of expansion shocks as can be seen on Figs. 7{9, and is common to most dierence and volume techniques. Moreover, generation of post-shock oscillations requires the use of moderate cfl numbers. We have not been able to solve these problems in a completely satisfactory way. Nevertheless, front tracking has proved to be a highly accurate and ecient numerical technique which compares well with second order methods. 2. The One-Dimensional Front Tracking Method We will here give a brief explanation of the front tracking method; a thorough description can be found in, e.g., [2, 23, ], and implementation issues are discussed in [3]. Consider the system of conservation laws given by (). The idea behind front tracking is to construct an approximate solution within the class of piecewise constant functions. First we approximate the initial data u by a step function (piecewise constant function) u where measures the approximation. This denes a family of local Riemann problems. The solution of each of these Riemann problems consists of constant states separated by elementary waves (rarefaction waves, shock waves, and contact discontinuities). For the Riemann problem (u L ; u R ) we write the solution as u L w?! u w 2?! u 2 : : : w N?! u R, where the notation u w?! u 2 means that the constant states u (left) and u 2 (right) are connected by an elementary wave w. The solution of the Riemann problem is scale invariant and we can express it as a function of = x=t. The next step in the front tracking algorithm is to approximate the solution of each Riemann problem by a step function, where gives the approximation along rarefaction waves, (2) u () = u i for i < < i+ ; i = ; : : : ; N; u = u L ; u N + = u R :

102 4 HOLDEN, LIE, AND RISEBRO ξ k ξ k ξ k+ ξ k ξ k+ ξ k+2 ξ k+3 ξ k+4 u k+ u k+2 u k+3 ξ u k =u j ξ u k =u j u k+ =u j+ ξ u k =u j u k+4 =u j+ u =u L u =u L u =u L Figure. Adding a new wave w j+ to the approximate Riemann solution given the approximation of waves w ; : : :; w j (left); wave w j+ is a shock or a contact discontinuity (middle) or a rarefaction wave (right). Assume that we have approximated u L w?! u : : :?! u j ; that is, we have dened i for i = ; : : : ; k such that u k = u j, see Figure. If wave u j w j+?! u j+ is a shock (or a contact discontinuity) we dene u k+ = u j+ ; k+ = (u j ; u j+ ); where (u j ; u j+ ) is the shock speed given by the Rankine{Hugoniot condition. If w j+ is a rarefaction, we dene u k+l = R j+ (u j ; l ~ ); k+l = 2 ( j+(u k+l? ) + j+ (u k+l )); l = ; : : : ; M; where R j+ (u; ) is the (j+)th rarefaction curve emanating from u, j+ (u) is the (j+)th eigenvalue of the matrix f (u), and j+ (u j+ )? j+ (u j ) = M, ~ ~. Here u k+m = u j+. Using this approach, we get a sequence of constant states separated by moving discontinuities for each local Riemann problem. The discontinuities, which we will refer to as fronts, can now be collected globally. This is typically implemented as a linked list of data objects representing the fronts. We track the outgoing fronts up to the time of the rst wave interaction. This interaction gives a new Riemann problem which we again can approximate by a step function, and so on. The front tracking algorithm thus consists of solving Riemann problems (rearranging the list of objects) and tracking fronts until they collide (updating a collision list). In order to avoid an innite build-up of fronts, we have to do some data reduction. Several approaches have been suggested [2, 2, 3, 5]. Here we will apply a strategy inspired by Glimm's interaction estimate P ([6]), see [3]. Dene the size of the j th wave connecting states u j and u j+ n as j = k= juj+ k? u j k j=k j, where K j is the number of components that are non-constant over the wave. The wave structure of every Riemann problem is always computed, and wave j is included provided j > c, for a given positive constant c. In this way we will have only nitely many fronts for all time. w j

103 AN UNCONDITIONALLY STABLE METHOD Boundary Conditions. The description of the front tracking algorithm is not complete before we have explained how to impose boundary conditions in the method. During the tracking phase of the algorithm, a boundary is represented as a front with a special identifying tag. This way, the algorithm for computing possible collisions need not distinguish whether a front collides with a boundary or another front. Moreover, this easily allows for moving boundaries. The computation of the solution at the boundary depends upon the boundary condition. In general there are three kinds of boundary conditions that may be imposed on any system. Absorbing boundaries allow the passage of waves without any eect on them and is realized by simply removing fronts that propagate out of the boundary and then updating the collision list. For periodic boundaries, the fronts that collide with a boundary are removed from one end of the front list and inserted at the other. Then the collision list is updated. Dirichlet boundary conditions mean that the boundary value are prescribed. In this case, Riemann problems are solved as above, with the xed value as either left or right state. However, only fronts that propagate into the domain are inserted into the front list. For some systems it also makes sense to talk about reective boundary conditions, for instance for the Euler equations, or other systems with a velocity component. This case is handled as for Dirichlet boundaries, except that only one state is given in the Riemann problem. The other state is a ctitious state, determined from the known state inside the domain. For the Euler equations this ctitious state is obtained by reversing the sign of the velocity component. The same construction is used for symmetry about lines Front Tracking with Projection. The front tracking method described above is grid independent in the sense that a grid is only used to describe the piecewise constant initial data. However, when the method is extended by operator splitting to equations with source terms [3] or to multidimensional problems by dimensional splitting (see Section 3) it is convenient to introduce a xed Cartesian grid onto which the front tracking solution is projected. Unfortunately, this projection has certain undesired eects that we will discuss next. The creation of post-shock oscillations has been studied by several authors (see e.g., []), especially for slowly moving shocks. For the front tracking method (in one dimension) the mechanism behind this phenomenon is easily revealed; Figure 2 shows the creation of post-shock oscillations for a single propagating shock. When a shock is projected onto the grid, we introduce small waves in the passive families, unless the shock exactly traverses an integer number of grid cells in each time step. These waves produce (small) oscillations and increase the number of interactions that need to be resolved, thus slowing down the algorithm. Note that this phenomenon is observed for all shock speeds, not only slowly moving shocks (see also []). For the results reported for multidimensional problems in Section 4, this eect seems to have little inuence on the (visual) quality of the solutions. (In fact, we observed a more pronounced eect for one-dimensional problems). At moderate cfl numbers, the (multidimensional) numerical diusion introduced by the projections seem to dampen the oscillations, as does the data reduction.

104 6 HOLDEN, LIE, AND RISEBRO Fronts in (x,t) plane Solution Discrepancy step 5 step 5 step 3 step 3 step step (3) Figure 2. Illustration of how post-shock oscillations are created; fronts in (x; t)- plane (left), projected solution for each step (middle), and dierence from the true solution projected onto the same grid (right). 3. Two Dimensions: Dimensional Splitting For the two-dimensional conservation law u t + f(u) x + g(u) y = ; u(x; y; ) = u (x; y); with entropy solution u(t) = S(t)u, the dimensional splitting approximation is dened as S(nt)u (x; y) = S g (t)s f (t) n u (x; y); S(nt)u (x; y) = S f (t=2)s g (t)s f (t=2) n u (x; y); (Godunov) (Strang) where S f (t)u and S g (t)u are the solutions of () with ux functions f and g, respectively. In numerical computations, S f and S g are replaced by some numerical method. For scalar equations Holden and Risebro [] proposed to combine Dafermos' method with dimensional splitting on a Cartesian grid to yield an unconditionally stable method. The algorithm is: Solve along each row in the grid. Project the solution back onto the grid. Solve along each column of the grid, and so on. This method has been applied to the simulation of ow of hydrocarbons in a porous medium, see Bratvedt et al. [3]. To the best of our knowledge, the only results reported in the literature for a similar front tracking approach to systems is a simple test problem by Langseth [3] for the Euler equations of gas dynamics. (Preliminary results for the double Mach reection problem were reported in [8].) Lie et al. [8] recently observed that this front tracking method is highly ecient for scalar problems with absorbing boundary conditions, due to its lack of a cfl condition and the relatively simple dynamics of these problems. They also proposed a method for

105 AN UNCONDITIONALLY STABLE METHOD 7 Figure 3. (Left) Grid renement by local partitioning of a regular Cartesian grid. (Right) Part of a front list containing two parallel rened tubes. The shaded boxes represent the static fronts. improving the spatial accuracy by using (one-level) adaptive grid renement on a xed regular Cartesian grid. The grid may contain a local regular partition at any cell, see Figure 3. These sub-partitions may appear or disappear during the projection step or remain xed throughout the computation. The inclusion of local renement requires a reformulation of the front tracking algorithm. Inside each tube of coarse or rened grid blocks we will now have a local list of moving fronts (discontinuities). At the interface between a coarse and a rened grid block, we insert a special front, hereafter referred to as a static front. This front connects the coarse tube with the rened tubes, see Figure 3. Altogether, this gives a global list, where each local list can be updated as usual except for the static fronts. At interfaces initially, we solve Riemann problems as described in Figure 4. For each rened tube, the Riemann problem is given by the value in the rst rened cell and the connected coarse cell. All fronts going into the rened tube are inserted into the corresponding local front list. Then all fronts going into the coarse tube (possibly from dierent Riemann problems) are assigned new states according to the spatial average across the coarse tube, collected in a list of increasing wave speeds, and inserted into the local list for the coarse tube. During the tracking, collisions at static fronts are handled as follows: Fronts coming in from a coarse part are copied and inserted into each connected rened list. Fronts coming in from rened tubes are collected, assigned new states according to the spatial average, and inserted into the connected coarse list, see Figure 4. The tracking step is followed by a projection step. In this step we measure the onedimensional total variation of the front tracking solution and use this as a monitor function. A coarse grid block is rened if the variation inside the block in the direction we are solving exceeds TV max. After the projection we post-process the grid to remove unnecessarily rened blocks. If the two-dimensional total variation over all rened cells inside a coarse block is below TV min, the block is made coarse. This is the adaptive part of the grid renement, where (TV min ; TV max ) are two adjustable parameters. The choice of adaptivity criterion is not special and could for instance be replaced by a heuristic monitor function based on physical quantities. In addition it pays o to include some kind of extra postprocessing to reduce the number of interfaces between coarse and rened blocks. In this

106 8 HOLDEN, LIE, AND RISEBRO Riemann problem Decomposition a a a c c b b 2 b b c Final result a d =.5(a + b ) d d 2 d 3 d 4 d 2 =.5(a + b 2 ) b d 3 =.5(c + b 2 ) d 4 = c Front from refined part After collision a d a (a+c)/2 c c b b Front from coarse part After collision a a c d c c b b c Figure 4. (Top) A Riemann problem at an interface between a coarse tube and two rened tubes is decomposed into two simple Riemann problems: solid lines represents (a; c) and dashed lines (b; c). Fronts propagating into coarse part are assigned new states by cross-sectional average. (Bottom) The static front during tracking: Colliding fronts from the rened part are assigned new states. Colliding fronts from the coarse part are copied. step some blocks are rened to make larger continuous patches of rened blocks. Moreover, one can include a preprocessing step to predict movement of rened structures (based on cheap estimates of wave speeds). 4. Numerical Results The Euler equations form the most frequently used hyperbolic system for testing new numerical methods. In two dimensions they read (4) u v E t u u 2 + p uv u(e + p) x v uv v 2 + p v(e + p) y = :

107 AN UNCONDITIONALLY STABLE METHOD 9 Here denotes the density, u and v the velocity in the x and y directions, p the pressure, and E the total energy (kinetic plus internal energy). We assume that the gas is ideal and polytropic. Then the energy is given by E = (u 2 + v 2 )=2 + p=(? ). In all computations we use = :4. For this non-linear system there are three elementary waves: shocks (S), rarefactions (R), and contact discontinuities (C). The possible wave congurations are SCS, SCR, RCR, and RCS. We will apply a very ecient Riemann solver reported by Gottlieb and Groth [7]. In this solver, all computations are performed in the non-conserved variables (p; u; v; a), where a denotes the sound speed a 2 = p=. However, the projection step in our method proceeds in conserved variables. This induced mapping and remapping of the variables (according to explicit formulas) means a slight decrease in the eciency of the code. The eigenvalues of the one-dimensional version of (4) are u and u a. These are easily computed, and may be used as an ecient tool for predicting the movement of rened structures during a preprocessing step. We consider four dierent test cases. First, a problem with cylindrical symmetry is used to evaluate grid alignment eects in the method. A comparison is made with the central schemes of Jiang and Tadmor [2]. The next two problems, ow past a forward facing step and reections at a wedge, were proposed by Woodward and Colella [25] and are well established as test cases in the literature. In the fourth problem we consider numerical viscosity and the generation of vortices when a planar shock interacts with a region of low density. Comparisons are made with wave propagation methods in clawpack [6]. All numerical schemes (except clawpack) were coded in C. In the following, the discretization parameters will be equal in both spatial directions, unless stated otherwise. If local grid renement is included, the ratio between the coarse and the rened grid size is 2 in each direction. In all examples we use a uniform Cartesian grid. This is no prerequisite, and the code works on any regular Cartesian grid. 4.. A Cylindrical Explosion Problem. Problems with cylindrical symmetry are good test examples for Cartesian grid methods, since a reliable numerical solution can easily be computed for the equivalent one-dimensional inhomogeneous problem. The following test case has been proposed by Toro [24]. Consider a square domain [?; ][?; ]. The initial data are constant in two regions separated by a circle of radius.4 centered at the origin. Inside the circle we have in = p in = : and zero velocity. Outside the circle out = :25, p out = :, and the velocities are zero. The solution consists of a circular shock wave propagating outwards from the origin, followed by a circular contact discontinuity propagating in the same direction, and a circular rarefaction wave traveling towards the origin. We impose absorbing boundary conditions. As time evolves, the shock wave becomes weaker. The contact discontinuity also becomes weaker, and at some time it stops and then travels inwards. The rarefaction wave reects at the center, as a rarefaction wave, and then overexpands and creates an inward propagating shock wave. The shock implodes into the origin, reects, and travels outwards colliding with the contact discontinuity surface, and so on.

108 HOLDEN, LIE, AND RISEBRO Density Radial velocity Pressure Internal energy Figure 5. Comparison between the one-dimensional radial solution (solid line) and a scatter plot of the two-dimensional dimsplit solution at time t = :2. Density Radial velocity Pressure Internal energy Figure 6. Comparison between the one-dimensional radial solution (solid line) and a scatter plot of the two-dimensional central dierence scheme solution at time t = :2.

109 AN UNCONDITIONALLY STABLE METHOD Table. Errors in density, radial momentum, and energy for the radially symmetric problem. Grid Steps u r E 5 5 :873?2 4:372?2 :59?2 :24?2 2:525?2 9:22? :75?3 :475?2 5:6? :24?3 9:246?3 2:93?3 Averaged rate :73 :75 :8 For the computations, we used a uniform grid. The initial data were assigned according to the average over each cell. A reference solution was generated by solving the corresponding one-dimensional inhomogeneous problem on a ne grid, using front tracking combined with operator splitting for the source term. Figure 5 shows a comparison of the one-dimensional radial solution at time t = :2 and a scatter plot the two-dimensional solution computed by dimsplit with time steps. This gives a cfl number varying between.2 and 2.2. The parameters for the Riemann solver are = : and c = :. As expected, the symmetry is not preserved perfectly. The shock wave is typically resolved within two grid cells and the contact discontinuity by three or four cells. We compare our computations with the second order, central dierence scheme of Jiang and Tadmor [2]. This method has the advantage that it is easy to implement, especially since a complete program listing is given in [2]. Figure 6 shows the numerical solution at time t = :2 computed on a grid, using cfl number.3 and the minmod (MM ) limiter. The results are more diusive than those obtained by dimsplit; for instance, the shock is typically resolved within 3{4 grid cells and the contact discontinuity with 5{7 cells. The runtimes were 2 cpu seconds for dimsplit and 4 cpu seconds for the central dierence scheme. Note however, that the latter code was implemented directly from [2] and probably has a potential for optimization. For other choices of limiters in the central dierence code (MM 2 or UNO), the cfl number had to be reduced to at least. to avoid oscillations and large overshoots in internal energy. These results are therefore of little interest in this context. The same problem can be used to investigate the order of convergence for the method. The solution is computed by dimsplit with N time steps on a N N grid. In Table the relative L errors are given for N = 5,, 2, and 4. The errors are computed by comparing with the one-dimensional reference solution, using a standard four-point numerical quadrature for each grid cell. Convergence rates are estimated by the formula rate = log 2 error(x) error(x=2) Since the solution is nonsmooth, we cannot expect to retain rst order convergence. However, the observed rates are well above =2; see [8] for a discussion of the scalar case. On a Sun SPARCstation with four MHz hypersparc CPUs. :

110 2 HOLDEN, LIE, AND RISEBRO Figure 7. Flow past a forward facing step computed by dimsplit A Mach 3 Wind Tunnel With a Step. The test case begins with a Mach 3 ow in a wind tunnel. The tunnel is length unit high and 3 length units long. The step is.2 units high and is located.6 units from the left-hand end of the tunnel. Inow boundary conditions are assumed at the left-hand side, and absorbing conditions at the right-hand side. The walls are assumed to be reective. The corner of the step is a singular point in the ow. We have adopted the technique proposed by Woodward and Colella [25] to reduce the inuence of this point: We reset the values in six grid cells on top of the step, so that the entropy and the sum of enthalpy and kinetic energy per unit mass has the same value as in the grid cells just to the left and below the corner. Figure 7 shows the density at time t = 4: computed by dimsplit on three dierent grids (x = =2; =4; =8) corresponding to those used by Woodward and Colella [25]. The number of time steps are 6, 32, and 64, respectively, giving a cfl number approximately equal 2. in each step. The parameters for the Riemann solver are = : and c = :. The general shape and position of the shocks are accurately represented by dimsplit. The shocks are thin, and thus some numerical instabilities of strong shocks are evident at the bottom and behind the Mach stem where the shocks are nearly aligned with the grid. The contact discontinuity emerging from the Mach stem is present on all grids, but is spread somewhat as it moves away from the three-shock interaction point. On the other

111 AN UNCONDITIONALLY STABLE METHOD Figure 8. The eect of dierent time steps in dimsplit; from top to bottom, 28 (Godunov's method), 32, and 6 time steps (x = =4). hand, the weak shock emerging from the corner of the step and the discontinuity formed when this shock hits the reected shock is only represented on the nest grid. The results are slightly marred by a unphysical expansion shock embedded in the rarefaction fan at the step. The same eect is produced by Godunov's method [25]. Although the front tracing method coincides with Godunov's method for low cfl numbers (less than =2), they are distinct for the results reported here. For the runs in Figure 7 the total number of wave interactions are 59.5, , and , respectively. Increasing the number of time steps for a xed spatial discretization leads to wider shock fronts and less accurate representation of the Mach stem, see Figure 8. Decreasing the number of time steps gives sharper resolution of shock fronts and contact discontinuities, but also introduces more numerical instabilities, which gradually will destroy the solution. Choosing the appropriate number of time steps is therefore a subjective decision, upon which we do not venture to give general advice. Similar results obtained by gridref are shown 2 in Figure 9. The number of time steps are 32, 64, and 28, respectively, giving an approximate cfl number of. relative to the coarse grid and 2. relative to the ne grid. The coarsest grid in Figure 9 corresponds to 2 The contours are plotted in Matlab by patching contour plots on the coarse and the rened grid. As a result, some contour lines are discontinuous or entwine at interfaces between coarse and rened cells.

112 4 HOLDEN, LIE, AND RISEBRO Figure 9. Flow past a forward facing step computed by gridref. Figure. The adaptive grid after the nal projection for x = =4. the middle grid in Figure 7, and the middle grid in Figure 9 to the nest grid in Figure 7. The TV threshold parameters used in the projection are (TV min ; TV max ) = (:5; 2:). Initially the grid is rened in an L-shaped domain placed upside-down around the corner of the step. We see that gridref produces equally good results for the two runs where the size of the rened grid cells corresponds to those used by dimsplit. The runtime, however, is reduced by approximately 3% on the coarse and 5% on the middle grid. On the nest grid we see that the rarefaction shock has nearly disappeared, and the contact discontinuity arising from the step is much better resolved. Figure shows the adaptive grid after the

113 AN UNCONDITIONALLY STABLE METHOD Figure. A double Mach reection at a wedge computed by dimsplit. projection at time t = 4:. Note how the renement neatly aligns with the major shocks. For xed TV parameters, this eect becomes more pronounced as x decreases. This explains the larger improvement in eciency for the middle grid Double Mach Reection of a Strong Shock. This test problem describes the reection of a planar Mach shock in air hitting a wedge. The setup is of a Mach shock which initially makes a 6 angle with a reecting wall. Ahead of the shock the undisturbed air has density :4 and pressure :. The computational domain is [; 4] [; ] and the reecting wall lies at the bottom of the domain starting at x = =6. The short region from x = to =6 and the left boundary are assigned values for the initial post-shock ow. Along the upper boundary, the ow values are set to describe the exact motion of the Mach shock. At the right boundary, absorbing conditions are imposed. See [25] for a more detailed description of the setup. Figure shows the density at time t = :2 computed by dimsplit on three dierent grids (x = =3; =6; =2) corresponding to those used by Woodward and Colella [25]. The number of (equally spaced) time steps are 35, 7, and 4, respectively, giving a cfl number varying between 2. and 3.5. The parameters for the Riemann solver are = : and c = :. The double Mach reection and the jet produced by it are clearly discernible on the coarsest grid, and adequately described on the middle grid. The weak shock generated

114 6 HOLDEN, LIE, AND RISEBRO Figure 2. A double Mach reection at a wedge computed by gridref. at the kink in the main reected shock and the contact discontinuity emerging from the three-shock interaction are fairly broad. This is improved on the nest grid. Similar results obtained by gridref are shown in Figure 2. The number of time steps are 7, 4, and 28, respectively, giving cfl numbers in the interval (:; :75) relative to the coarse grid and (2:; 3:5) relative to the ne grid. The TV threshold parameters used in the projection are (TV min ; TV max ) = (5:; 2:). Initially the grid is rened around the shock. On the coarsest and the middle grid the solution is resolved as accurately as on the middle and the nest grid in Figure. On the coarsest grid 54% of the grid cells are rened and there is only a slight reduction in runtime (5%). However, on the middle grid the fraction of rened cells is lower (35%), giving a 25% reduction in the runtime. On the nest grid all features in the solution are accurately described. Here 2% of the grid cells are rened. Notice that in all runs for both dimsplit and gridref, there is hardly a trace of numerical instabilities. However, the principal Mach stem is slightly kinked A Shock-Bubble Interaction. In this example we consider the interaction between a planar shock and a circular region of low density. The example is a two-dimensional version of a three-dimensional problem studied by Langseth and LeVeque [4]. The purpose is to illustrate the induced vorticity and mixing when a shock wave runs through an inhomogeneous medium.

115 AN UNCONDITIONALLY STABLE METHOD 7 t=. t=. t=.2 t=.3 t=.4 Figure 3. Emulated Schlieren images of a shock-bubble interaction. The setup is as follows, cf. Figure 3. A circle with radius :2 is centered at (:3; :). The gas is initially at rest and has unit density and pressure. Inside the circle the density is :. The incoming shock wave starts at x = and propagates in the positive x-direction. The pressure behind the shock is, giving a 2.95 Mach shock. The domain is [?:; :5] [?:5; :5], but due to symmetry, we use computational domain [?:; :5] [?:5; :]. Figure 3 shows ve snapshots at times t = : to t = :4, computed by dimsplit with x = =4 and 256 equally spaced time steps. After hitting the bubble, the shock wave separates into a reected smooth wave and a penetrating shock wave. Due to the higher sound speed inside the low density region, the latter wave will speed up towards the undisturbed bubble wall ahead, where it reects. At time t = : the incident shock has captured the bubble and deformed it. A complex pattern of discontinuities has formed at the top and bottom of the bubble. Near the front wall we see the reected wave, and near the back wall the rst traces of vortex formation. At time t = :2 the remnants of the bubble are contained inside two rotating semi-circular vortex regions that are connected by a \duct". At time t = :3 the \duct" has closed, the vortices have separated, and new secondary vortices have formed. Resolving the vorticity is a question of resolution and numerical viscosity. We nd it futile to discuss the resolution on dierent grids. Instead we focus on the numerical viscosity in our two schemes. We compare our computations with computations using clawpack [6] on the same grid. clawpack allows the user to choose between rst and second order and dierent limiters. Figure 4 shows computations by dimsplit and gridref, compared with the unsplit rst order method (T ; ) in clawpack and the unsplit second order method (T 2;2 ) with minmod limiter (the most diusive limiter) and superbee limiter (the most compressive). dimsplit produces results that are superior to the rst order method and approximately equal that of minmod. However, notice that

116 8 HOLDEN, LIE, AND RISEBRO clawpack (T ; ) clawpack (T 2;2 ), minmod clawpack (T 2;2 ), superbee dimsplit, n = 28 gridref, n =, x = = gridref, n = 2, x = =2 Figure 4. Emulated Schlieren images of a shock-bubble interaction at time t = :4 on a =2 grid. (Top) Simulations with clawpack. (Bottom) Simulations with dimsplit and gridref. the leading shock wave is narrow compared with minmod. On a = grid, gridref produces equal results as dimsplit does on the =2 grid. By increasing the resolution of the coarse grid to =2, gridref gives a slightly better resolution than minmod. The second order central dierence scheme of Jiang and Tadmor [2] with the MM and the UNO limiter gave results that were more diusive than dimsplit and clawpack with the minmod limiter (plots not included here) A word of caution. Quirk [2, 9] has catalogued a number of instances where Godunov type methods give unreliable results. Some of these shortcomings can also be observed when using the front tracking scheme. The most serious is expansion shocks, as seen in Figures 7, 8, and 9. Quirk [2] presents an example of this problem for a strong shock diracting around a 9 degree corner, where for instance Roe's method gives an expansion shock and fails to converge to the correct solution. The front tracking method performs similarly; in fact, the same problem is observed for shock diraction around other geometries, for instance over a half-diamond [2]. For nite dierence or volume methods this problem can be circumvented by locally using a more diusive approximative Riemann solver [2]. So far, we have not found a proper workaround for the front tracking scheme. Quirk [2] also discusses what he calls odd-even decoupling, which is seen for strong shocks nearly aligned with the grid. When solving Riemann problems in the transverse direction, where nothing should happen, small perturbations may grow unstably. Numerical experiments indicate that the data reduction in the algorithm counteracts this tendency,

117 AN UNCONDITIONALLY STABLE METHOD 9 but does not eliminate it completely. If the perturbations exceed the cut-o value in the reduction, they grow unstably. 5. Discussion and Conclusions Front tracking has proved to be a very ecient numerical method for one-dimensional problems and scalar problems in multidimensions. Here we have shown an unconditionally stable extension to multidimensional systems and tested it on the Euler equations. As all shock capturing methods, the method generates post-shock oscillations. However, the mechanism behind this phenomenon is easily explained for the one-dimensional method and was discussed in x2. In two dimensions, oscillations prevent the use of large time steps in the unconditionally stable method (as opposed to the scalar case [8]). However, for moderate cfl numbers ({4) the numerical diusion (and the data reduction) in the scheme seems to dampen the oscillations to an acceptable level. A natural consequence of using the front tracking method is low order and possible grid eects due to the dimensional splitting. Moreover, some deciencies have been pointed out. Despite these limitations, the front tracking method produces surprisingly good results and gives very sharp resolution of shocks even on coarse grids. Comparisons show that the method performs similarly to some second order methods both with respect to accuracy and eciency. Similar observations have been made for the shallow water equations [8, 9] and the nonstrictly hyperbolic system describing polymer ooding. The eciency of the method may be improved by including one level of adaptive grid renement. Here the total variation inside coarse grid cells has been used as a monitor function, but other choices are possible. Moreover, the method has a natural potential for parallel implementation. Acknowledgements We thank Jan Olav Langseth for many valuable discussions and for providing the clawpack simulations. References [] M. Arora and P. L. Roe. On postshock oscillations due to shock capturing schemes in unsteady ows. J. Comp. Phys., 3:25{4, 997. [2] P. Baiti and H. K. Jenssen. On the front tracking algorithm. J. Math. Anal. Appl., 27:395{44, 998. [3] F. Bratvedt, K. Bratvedt, C. F. Buchholz, T. Gimse, H. Holden, L. Holden, and N. H. Risebro. Frontline and Frontsim, two full scale, two-phase, black oil reservoir simulators based on front tracking. Surv. Math. Ind., 3:85{25, 993. [4] A. Bressan, G. Crasta, and B. Piccoli. Well-posedness of the Cauchy problem for n n systems of conservation laws. Mem. Amer. Math. Soc. To appear. [5] A. Bressan and P. LeFloch. Uniqueness of weak solutions to systems of conservation laws. Arch. Rational Mech. Anal., 4(4):3{37, 997. [6] J. Glimm. Solutions in the large for nonlinear hyperbolic systems of equations. Comm. Pure Appl. Math., 8:697{75, 965. [7] J. J. Gottlieb and C. P. T. Groth. Assessment of Riemann solvers for unsteady one-dimensional inviscid ows of perfect gases. J. Comp. Phys., 78:437{458, 988.

118 2 HOLDEN, LIE, AND RISEBRO [8] R. Holdahl. Front tracking for the shallow water equations. Diploma thesis, Department of Mathematical Sciences. Norwegian University of Science and Technology, 998. [9] R. Holdahl, H. Holden and K.-A. Lie. Unconditionally stable splitting methods for the shallow water equations. Preprint. Norwegian University of Science and Technology, 998. [] H. Holden and N. H. Risebro. Front tracking for conservation laws. Department of Mathematics, Norwegian University of Science and Technology. Lecture Notes. [] H. Holden and N. H. Risebro. A method of fractional steps for scalar conservation laws without the CFL condition. Math. Comp., 6(2):22{232, 993. [2] G.-S. Jiang and E. Tadmor. Non-oscillatory central schemes for multidimensional hyperbolic conservation laws. Report 96-36, UCLA CAM, 996. To appear in SIAM J. Sci. Comput. Available at the URL [3] J. O. Langseth. On an implementation of a front tracking method for hyperbolic conservation laws. Advances in Engineering Software, 26():45{63, 996. [4] J. O. Langseth and R. J. LeVeque. A wave propagation method for three-dimensional hyperbolic conservation laws. Available at the URL [5] J. O. Langseth, N. H. Risebro, and A. Tveito. A conservative front tracking scheme for D hyperbolic conservation laws. In Nonlinear Hyperbolic Problems: Theoretical, Applied, and Computational Aspects (Taormina, 992), volume 43 of Notes Numer. Fluid Mech., pages 385{392. Vieweg, Braunschweig, 993. [6] R. J. LeVeque. clawpack software. Available from netlib.att.com in netlib/pdes/claw/ or at the URL [7] R. J. LeVeque. A large time step generalization of Godunov's method for systems of conservations laws. SIAM J. Numer. Anal., 22(6):5{73, 985. [8] K.-A. Lie, V. Haugse, and K. H. Karlsen. Dimensional splitting with front tracking and adaptive grid renement. Numer. Methods Partial Dierential Equations. To appear. [9] J. J. Quirk. Godunov-type schemes applied to detonation ows. ICASE Report No [2] J. J. Quirk. A contribution to the great Riemann solver debate. Internat. J. Numer. Methods Fluids, 8(6):555{574, 994. [2] N. H. Risebro. A front{tracking alternative to the random choice method. Proc. Amer. Math. Soc, 7(4):25{29, 993. [22] N. H. Risebro and A. Tveito. Front tracking applied to a nonstrictly hyperbolic system of conservation laws. SIAM J. Sci. Stat. Comput., 2(6):4{49, 99. [23] N. H. Risebro and A. Tveito. A front tracking method for conservation laws in one dimension. J. Comp. Phys., ():3{39, 992. [24] E. F. Toro. Riemann Solvers and Numerical Methods for Fluid Dynamics. Springer, Berlin Heidelberg, 997. [25] P. Woodward and P. Colella. The numerical simulation of two-dimensional uid ow with strong shocks. J. Comp. Phys., 54(5):5{73, 984.

119 AN UNCONDITIONALLY STABLE METHOD 2 (Helge Holden) Department of Mathematical Sciences, Norwegian University of Science and Technology, N-734 Trondheim, Norway address: holden@math.ntnu.no (Knut{Andreas Lie) Department of Mathematical Sciences, Norwegian University of Science and Technology, N-734 Trondheim, Norway address: andreas@math.ntnu.no (Nils Henrik Risebro) Department of Mathematics, University of Oslo, P.O. Box 53, Blindern, N-36 Oslo, Norway address: nilshr@math.uio.no

120

121 Paper V A Shock-Tracking Method for One-Dimensional Inhomogeneous Hyperbolic Systems Knut{Andreas Lie

122

123 A SHOCK-TRACKING METHOD FOR ONE-DIMENSIONAL INHOMOGENEOUS HYPERBOLIC SYSTEMS KNUT{ANDREAS LIE Abstract. Front tracking is an unconditionally stable, grid-independent method for onedimensional homogeneous hyperbolic systems. When applied as part of a fractional steps strategy for inhomogeneous problems, it is natural to use front tracking as a shockcapturing method by projecting solutions onto a xed grid. Unfortunately, this leads to certain undesired eects, but these eects can be avoided by converting front tracking into a shock-tracking method instead, as demonstrated in three numerical examples.. Introduction This paper presents a new shock-tracking method for inhomogeneous systems of conservation laws () u t + f(u) x = h(u); u(x; ) = u (x); u 2 IR m : The homogeneous system u t +f(u) x = is assumed to be hyperbolic. Moreover, we assume that the solution of the Riemann problem is computable. Examples of such systems are the Euler equations of gas dynamics and the shallow water equations that model free surface ow for a uid under the inuence of gravity. Although computations in a single space variable are of limited interest, there are situations where systems such as () are important. An example is chemically reacting ows. The compressible Navier{Stokes systems describing such processes are extremely complex, and, therefore, simpler models of the form () have been derived, see, e.g., []. Similarly, geometric source terms arise when reducing problems with radial symmetry to one dimension or for problems with homogeneous cross-sectional ow. These simplied equations are used both to predict and analyse mathematical phenomena and as test problems for numerical codes that are designed for more complex problems. Front tracking [] is an unconditionally stable method for homogeneous systems of conservation laws. The method employs a grid-independent, piecewise constant approximation and resolves nonlinear wave interactions explicitly. Although the method is only rst-order, it is ecient and gives very sharp resolution of discontinuities. This has been demonstrated in several studies [4, 5,, 2]. When front tracking is applied as part of a fractional steps procedure, it is convenient to project solutions onto a xed grid, i.e., turn the method into a shock-capturing scheme. Unfortunately, this has certain undesired eects that reduce the quality of the hyperbolic solutions, see, e.g., [3]. I demonstrate how these problems can be strongly reduced in one spatial dimension by adopting a shocktracking strategy. The idea is to retain the xed grid and introduce extra cell boundaries

124 2 KNUT{ANDREAS LIE at the location of strong shocks or contact discontinuities in the solution. These (moving) grid points are created at the end of each hyperbolic step, and destroyed at the outset of the next. No grid points are used during the hyperbolic step, since wave interactions are resolved by the tracking algorithm. The new shock-tracking method is related to several existing methods, for instance, the front-tracking methods of LeVeque and Shyue [7] and Swartz and Wendro [3]. See, for instance, the discussion in [7, x2]. The unique feature of our method is that the hyperbolic solver is unconditionally stable and resolves nonlinear wave interactions explicitly throughout an arbitrary time step. Thus, we avoid stability problems which arise in most shock-tracking methods due to the presence of arbitrary small grid cells. For instance, for combustion problems, such small grid cells are very important for resolving the structure of the reacting ow, as demonstrated in Section 4. The note is organized as follows. In Sections 2 and 3, homogeneous systems of conservation laws are discussed. First, I review some of the problems encountered when using front tracking as a shock-capturing method, i.e., when projecting solutions onto a xed grid at regular time intervals. Then, the shock-tracking method is introduced. At the end, I compare the shock-tracking and the shock-capturing method on three inhomogeneous problems. All three examples demonstrate that the shock-tracking method gives a remarkable improvement in resolution. The rst example is the Euler equations with a geometric source term. The second example describes ow of water over a varying bottom topography. In the third example, the ZND structure of a reacting ow is studied. 2. Front Tracking as a Shock-Capturing Method Since dierent naming conventions may cause confusion, I start by dening what I mean by front tracking, shock capturing, and shock tracking. In the following, front tracking refers to the method proposed by Risebro []. Shock capturing refers to the front-tracking method with projections onto a xed grid. Shock tracking refers to the shock-capturing method with extra grid points added at the location of strong discontinuities. To motivate the shock-tracking method, let us rst review some of the problems introduced by the projection operator, when front tracking is used in a shock-capturing setting to solve homogeneous hyperbolic systems. Figure (from [3]) shows the creation of postshock oscillations for a single propagating shock. When a shock is projected onto a grid, new states are introduced, unless, of course, the shock is exactly aligned with the boundary of a grid cell. These new states lead to extra waves in the next front-tracking step, and hence post-shock oscillations are created. For a contact discontinuity, the same eect is observed, but here the numerical diusion introduced by the projection is more serious, due to the lack of self-sharpening eects at contact discontinuities. Consider next the approximation of a single rarefaction wave. Figure 2 shows the rst three steps of the shock-capturing method. Before the rst projection, the front-tracking solution consists of a series of small jumps (seen as a straight line in the plot). After the projection, the rarefaction is represented by six jumps. Since the rarefaction wave is steep, ve of the jumps are large. In the next step, the solution consists of constant states

125 FRONT TRACKING FOR INHOMOGENEOUS SYSTEMS 3 Fronts in (x,t) plane Projected solution Discrepancy step 5 step 5 step 3 step 3 step step Figure. Illustration of how post-shock oscillations are created; fronts in (x; t)- plane (left), projected solution for each step (middle), and dierence from the true solution projected onto the same grid (right). Figure 2. Illustration of how jumps are created in rarefaction waves. Plot of initial data (dotted), front-tracking solution (dashed) and projected solution (solid) in three consecutive steps. For comparison the exact solution (dash{dotted) is included in the last step. separated by rarefaction waves. Each constant state is projected onto two grid cells, and the solution therefore contains a repeated pattern of two small jumps followed by a larger jump. After the third step the solution contains a repeated pattern of three small jumps followed by a larger jump, and so on. Consequently, jumps may appear as long as the number of projections is less than the number of grid points in the rarefaction wave. This eect has been observed for both scalar problems and systems, but the jumps are not of a serious nature, since they disappear as the discretization parameters decrease.

126 4 KNUT{ANDREAS LIE Figure 3. Propagation of a single shock by shock tracking; denotes uniform grid cells and the cell used to track the shock. 3. The Shock-Tracking Method It is evident from the above discussion that one should focus on how to improve the representation of shocks and contact discontinuities on the grid; that is, try to do some kind of shock tracking. This is almost trivial when using the front-tracking method, since the wave type of each front is obtained as a byproduct from the Riemann solver. (For scalar problems all waves are of the same family.) The wave type can therefore easily be used as a monitor function for an adaptive grid strategy as follows: In each projection we start with a given grid, e.g., a uniform grid, and add extra grid cells at the location of shocks and contact discontinuities with strength exceeding a certain predened threshold, see Figure 3. This way, strong discontinuities are tracked and post-shock oscillations are eliminated. Notice that this strategy introduces hardly any computational overhead in the method and typically only a few extra grid points. No special attention is paid to the projection of rarefaction waves. However, if sharper resolution of these waves is needed locally, both the shock-capturing and the shock-tracking method can easily be modied to incorporate adaptive mesh renement. One possibility is described in [3, 8]. 4. Numerical Examples A fractional steps method consists of splitting the inhomogeneous equation () into a homogeneous hyperbolic problem v t + f(v) x = and an ordinary dierential equation v t = h(v). Let S t and R t denote the corresponding solution operators. Then the fractional steps approximation to () reads u(x; nt) R t S t nu :

127 FRONT TRACKING FOR INHOMOGENEOUS SYSTEMS 5 Shock capturing Shock tracking Figure 4. Internal energy in the radially symmetric solution computed by shock capturing (left) and shock tracking (right). Three numerical examples are presented using this approach to resolve source terms. The rst two examples are of the Euler equations and the shallow water equations with geometric source terms, while the third describes the ZND structure of a reacting ow. Example. For problems with cylindrical or spherical symmetry, the multidimensional Euler equations of gas dynamics can be reduced to the one-dimensional inhomogeneous equation (2) 2 4 u E 3 5 t u u 2 + p u(e + p) 3 5 r =? r 2 4 u u 2 u(e + p) Here r denotes the radial direction, the density, u the radial velocity, p the pressure, and E the total energy. We assume that the gas is ideal and polytropic, i.e., the energy is given by E = u 2 =2 + p=(? ), where the constant is set to.4. For equal, (2) is equivalent to a the two-dimensional equations with cylindrical symmetry. For three-dimensional systems with spherical symmetry, equals 2. Consider now an explosion problem described in e.g., [4]. The initial data are constant in two regions separated by a circle of radius.4 centred at the origin. Inside the circle in = p in = :, and outside out = :25, p out = :. The velocity is zero everywhere. Figure 4 shows the radial solution (internal energy) computed by the shock-capturing and the shock-tracking method at time t = :2. In both runs, the uniform grid had 25 points and we used 2 equally spaced time steps. The shock-tracking method added only two extra grid points, one at the shock and one at the contact discontinuity. Still, the improvement in the quality of the solution is striking. The oscillations in the region between the shock and the contact discontinuity have almost disappeared and the latter wave is not smeared, as for the shock-capturing method. Example 2. The next example is taken from [2]. We study free surface ow of water over a topography in one dimension. The process is described by the inhomogeneous shallow 3 5 :

128 6 KNUT{ANDREAS LIE.5 t=5.5 t= Figure 5. Shallow water ow over a topography in one-dimension computed by lwlf4 (top), the shock-tracking method (middle), and by the shockcapturing method (bottom). water equations h + hu t hu (3) hu 2 + = : 2 x gh2?(z b ) x gh Here h denotes water depth, u is depth-averaged velocity, and g is the acceleration of gravity. On the right-hand side, z b denotes the bottom topography. The initial conditions are h(x; ) = :? z b (x); u(x; ) = :; with absorbing boundary conditions, and the bottom prole reads ( :2? x2 ;?2 x 2; 4 z b (x) = ; otherwise: The spatial domain is x 2 [?; ] and we set g =. Figure 5 shows solutions at times t = 5 and computed with and 2 grid cells by shock capturing, shock tracking, and by the composite scheme lwlf4 [9]. We use a xed

129 FRONT TRACKING FOR INHOMOGENEOUS SYSTEMS 7 CFL number.75 for the two front-tracking methods and.8 for lwlf4. In the shocktracking method, only two extra grid cells were added. Although the shock-capturing method gives better resolution than lwlf4 on the same grid, it can by no means compete with the shock-tracking method. This method resolves both shocks within one grid cell. Example 3. In this example we consider the combustion of a gas, see for instance [6]. We are interested in the so-called ZND structure of a detonation wave, especially the spike in pressure. The gas is assumed to consist of two species: `unburnt' and `burnt' gas. Introduce now the fraction of unburnt gas Z. Then the combustion process is described by the system u E Z t u u 2 + p u(e + p) uz x = 2 6 4?K(T )Z Here K is the reaction rate of the burning process and depends upon the temperature T = p=r. For K we use the simple model ( =; T T K(T ) = ; T < T ; where T is the ignition temperature and is a (small) time scale of the reaction. The model reects that reactions are negligible for temperatures below the ignition temperature and almost instantaneous above. The unburnt gas contains chemical energy and the total energy reads E = p? + 2 u2 + q Z; where q is the heat released when the gas burns. This system is sti, since the reaction occurs on a very small time scale inside a reaction zone with spatial width proportional to. In practise, is much smaller than both the time scale of the front propagation and the possible sizes of grid cells. However, notice that a fractional steps approach is very simple here, since the corresponding ODE for the reaction can be solved exactly. In the computations we use q = R =, T = :22, and =?5. Figure 6 shows the pressure and fraction of unburnt gas at time t = :4 computed by the shock-capturing method on a uniform grid with 25 cells. The solution is computed using equally spaced time steps. This corresponds to a CFL number varying between.56 and.74, i.e., the shock-capturing method coincides with Godunov's method. Although the plots seem reasonable, the results are nonphysical. The exact solution consists of a shock front propagating at speed s =, followed by a deagration wave. To explain what goes wrong in the Godunov method, consider the right plot in Figure 6, which shows the solution in the (x,t)-plan up to time.2. In the rst hyperbolic step, the solution consists of a shock followed by a contact discontinuity, both propagating with positive speeds, and a rarefaction wave propagating with negative speed. The passing :

130 8 KNUT{ANDREAS LIE Pressure Mass fraction unburnt gas 2 Fronts in (x,t) plane Figure 6. Structure of the combustion front computed by the shock-capturing method with time step. shock heats the gas such that reaction takes place in the zone between the shock and the contact discontinuity and burns the gas almost instantaneously. The width of this reaction zone is a mere fraction of the width of the cells in the uniform grid. In the shock-capturing method, on the other hand, we rst project the solution from the hyperbolic step back onto the uniform grid before we allow the chemical reaction. Thus, the whole grid cell, and not just the true reaction zone, is heated above the ignition temperature. The zones `burned' in the ODE steps are represented by thick, horizontal lines in the right plot of Figure 6. Since the time step is much larger than, the gas burns instantaneously. Hence the interface between burnt and unburnt gas moves faster than it should. (The true wave speed of the reaction front is indicated by a dashed line.) The problem of unphysical wave speeds is discussed in greater detail by Colella, Majda, and Roytburd [] and by LeVeque [6]. An obvious idea to x the problem would be to add the source term before the projection. This leads to an interface that propagates slower as only a fraction of the grid cells is burnt after the projection. Unfortunately, the interface still moves too fast. Next, we can try to increase the time step, since the shock-capturing method is unconditionally stable. Figure 7 shows the solution computed with 45 time steps, giving a CFL number between.25 and.58. In this case, waves are allowed to cross cell interfaces and this counteracts the smeared reaction zone. The unphysical waves are eliminated and the pressure peak in the ZND structure is captured. On the other hand, the quality of the solution is quite poor due to oscillations behind the deagration wave. Even larger oscillations were observed for other CFL numbers. As in Example, we can almost eliminate all oscillations by applying the shock-tracking method. Figure 8 shows the solution computed with an underlying 25 grid (as above) and equally spaced time steps (CFL between.56 and.74). There is still a small dip behind the shock, but the solution is remarkably accurate. Notice, for instance, the extremely narrow reaction zone and the increased pressure at the peak.

131 FRONT TRACKING FOR INHOMOGENEOUS SYSTEMS 9 2 Pressure Mass fraction unburnt gas Fronts in (x,t) plane Figure 7. Structure of the combustion front computed by the shock-capturing method with 45 time steps. 2 Pressure Mass fraction unburnt gas Fronts in (x,t) plane Figure 8. Structure of the combustion front computed by the shock-tracking method with time steps. References [] P. Colella, A. Majda, and V. Roytburd. Theoretical and numerical structure for reacting shock waves. SIAM J. Sci. Stat. Comput., 7(4):59{8, 986. [2] R. Holdahl, H. Holden, and K.-A. Lie. Unconditionally stable splitting methods for the shallow water equations. Manuscript. [3] H. Holden, K.-A. Lie, and N. H. Risebro. An unconditionally stable method for the Euler equations. Manuscript. [4] J. O. Langseth. On an implementation of a front tracking method for hyperbolic conservation laws. Advances in Engineering Software, 26():45{63, 996. [5] J. O. Langseth, N. H. Risebro, and A. Tveito. A conservative front tracking scheme for D hyperbolic conservation laws. In A. Donato and F. Oliveri, editors, Nonlinear Hyperbolic Problems: Theoretical, Applied, and Computational Aspects (Taormina, 992), volume 43 of Notes Numer. Fluid Mech., pages 385{392. Vieweg, Braunschweig, 993.

132 KNUT{ANDREAS LIE [6] R. J. LeVeque. Nonlinear conservation laws and nite volume methods for astrophysical uid ow. In O. Steiner and G. Gautschy, editors, Computational Methods for Astrophysical Fluid Flow, 27th Saas{Fee Advanced Course Lecture Notes. Springer Verlag. [7] R. J. LeVeque and K. M. Shyue. One-dimensional front tracking based on high resolution wave propagation methods. SIAM J. Sci. Comput., 6(2):348{377, 995. [8] K.-A. Lie, V. Haugse, and K. H. Karlsen. Dimensional splitting with front tracking and adaptive grid renement. Numer. Methods Partial Dierential Equations. To appear. [9] R. Liska and B. Wendro. 2d shallow water equations by composite schemes. Technical Report LAUR , Los Alamos National Laboratories, Los Alamos, 997. [] N. H. Risebro. A front{tracking alternative to the random choice method. Proc. Amer. Math. Soc, 7(4):25{29, 993. [] N. H. Risebro and A. Tveito. Front tracking applied to a nonstrictly hyperbolic system of conservation laws. SIAM J. Sci. Stat. Comput., 2(6):4{49, 99. [2] N. H. Risebro and A. Tveito. A front tracking method for conservation laws in one dimension. J. Comp. Phys., ():3{39, 992. [3] B. K. Swartz and B. Wendro. AZTEC: a front tracking code based on Godunov's method. Appl. Numer. Math., 2(3-5):385{397, 986. [4] E. F. Toro. Riemann Solvers and Numerical Methods for Fluid Dynamics. Springer, Berlin Heidelberg, 997. Department of Mathematical Sciences Norwegian University of Science and Technology N-734 Trondheim, Norway address: andreas@math.ntnu.no

133 Paper VI An Unconditionally Stable Splitting Scheme for a Class of Nonlinear Parabolic Equations Kenneth Hvistendahl Karlsen and Knut{Andreas Lie

134

135 AN UNCONDITIONALLY STABLE SPLITTING SCHEME FOR A CLASS OF NONLINEAR PARABOLIC EQUATIONS KENNETH HVISTENDAHL KARLSEN AND KNUT{ANDREAS LIE Abstract. We propose and analyse a numerical scheme for a class of advection dominated advection{diusion{reaction equations. The scheme is essentially based on combining a front tracking method for conservation laws, which tracks shock curves dened by a varying velocity eld, with a suitable operator splitting. The splitting is formulated for an equation in non-conservative form and consists of a nonlinear conservation law modelling advection, a heat equation modelling diusion, and nally an ordinary dierential equation modelling lower order processes. Since no CFL condition is associated with the front tracking scheme, our numerical scheme is unconditionally stable in the sense that the advection time step is not restricted by the spatial discretization parameter. Nevertheless, it is observed that when the splitting time step is notably larger than the diusion scale, the scheme can become too diusive. This can be inferred with the fact that the entropy condition forces the hyperbolic solver to throw away information regarding the structure of shock fronts. We will demonstrate that it is possible to identify what is thrown away as a residual ux term. Moreover, if this residual ux is taken into account via, for example, a separate correction step, the shock fronts can be given the correct amount of self sharpening. Two numerical examples are presented and discussed. The rst example is academic while the second is drawn from glacier modelling.. Introduction Mathematical models that involve a combination of advective, diusive, and reactive processes are among the most widespread in all of sciences, engineering, and other elds where mathematical modelling is important. Applications range from models of turbulence [4], via trac ow [36] and modelling of share options on the nancial market [3], to multiphase ow in porous media [43]. Other applications include, to mention a few, polymer chemistry [6], combustion modelling [38], modelling of semi-conductor devices [37], and contaminant transport in groundwater and surface water [2]. We consider a class of nonlinear advection{diusion{reaction equations of the F (x; t; u) 2u + G(x; t; u); (x; t) 2 Q T R h; T ]; Key words and phrases. Nonlinear advection{diusion{reaction equation, operator splitting, front tracking. The research of the rst author has been supported by VISTA, a research cooperation between the Norwegian Academy of Science and Letters and Den norske stats oljeselskap a.s. (Statoil). The research of the last author has been supported by the Research Council of Norway under grant 555/4.

136 2 KARLSEN AND LIE with initial data u imposed at t =. Here the ux function F and the reaction/source/sink term G are bounded, smooth functions of all their arguments and the initial data u is of bounded total variation. When () is advection dominated, conventional numerical methods exhibit some combination of diculties, from non-physical oscillations (central dierence/galerkin schemes) to excessive numerical diusion (upwind schemes) at moving shock fronts. In the last two decades we have seen a tremendous activity on developing sophisticated numerical schemes that are designed to accurately capture discontinuous solutions of hyperbolic conservation laws [22, 27, 33]. It may therefore seem reasonable to employ some of these methods as \building blocks" in numerical schemes for advection{diusion{reaction problems, at least for those that are of advection dominated nature. A natural strategy is to split the equation into a hyperbolic conservation law modelling advection, a parabolic equation modelling diusion, and nally an ordinary dierential equation modelling lower order terms, and then try to reproduce the solution using these simpler equations as building blocks. Variations on this operator splitting approach have indeed been taken several authors, we mention Demkowitz and Oden [5], Douglas and Russell [6], Espedal and Ewing [7], Dahle [], and Arbogast and Wheeler []. A more general approach is the Eulerian{Lagrangian localized adjoint methods of Celia et al. [5] and Wang et al. [45]. We also refer to [4, 9, 2, 23, 4, 42, 48], and the references therein, for more details on this type of methods, which are all based on some kind of time stepping along the characteristics to realize the hyperbolic part of (). Dawson [2, 3, 49] employs Godunov (or upwind) methods to realize the hyperbolic part of (), giving an approach closer to the one we advocate here. We also mention the recent work of Cockburn and Shu [7] on the (unsplit) local discontinuous Galerkin method, which is an extension of the Runge-Kutta Discontinuous Galerkin method for hyperbolic conservation laws. The purpose of our paper is to continue and improve the work initiated recently by Karlsen, Risebro, Lie, and coworkers on the corrected operator splitting (COS) approach [3, 3, 28, 29]. This approach is based on a front tracking method for conservation laws and a dynamical splitting of the partial dierential equation (). Here we extend the method to include velocity elds and source terms. An ultimate goal is to accurately and eectively solve the partial dierential equations describing multi-phase ow in porous media, including the strongly heterogeneous case where the coecients in () vary discontinuously with the space variable. Although we will use a simple linear diusion term "u xx here, a nonlinear and possibly strongly degenerate diusion term "(d(x; t; u)u x ) x could have been considered. But in the degenerate case, weak solutions must be sought that are, in general, not uniquely determined by their data. Consequently, an entropy condition must be imposed to pick out the physical weak solution. The use of entropy conditions (inequalities) are outside the scope of this paper, and we refer instead to Evje and Karlsen [8] for details in the case F f(u) and G. We restrict ourselves to a (physically reasonable) class of equations in which the ux function F has the form F (x; t; u) = V (x; t)f(u). This will enable us to write the parabolic

137 FRONT TRACKING AND CORRECTED SPLITTING FOR PARABOLIC EQUATIONS 3 equation () in the non-conservative @2 u + V (x; t) f(u) @x2u + Q(x; t; u); where Q(x; t; u) = G(x; t; u)? f(u)v x (x; t). This equation will be our starting point for constructing approximate solutions. The non-conservative form is natural when seeking to dene an operator splitting because the term f(u)v x represents accumulation and should therefore be grouped with the source G. Furthermore, the front tracking method we will use for the advective part seeks solutions that are constant within polygons dened by discontinuity paths and is accordingly dened for a non-conservative equation without accumulation terms, see x2. Let S(t), H(t), and R(t) denote the solution operators associated with the hyperbolic equation v t + V (x; t)f(v) x =, the parabolic equation w t = "w xx, and the ordinary dierential equation z t = Q(x; t; z), respectively. Then the basic splitting takes the form (3) u(x; nt) R(t) H(t) S(t) n u : In the numerical method we will replace S(t) with a front tracking method, H(t) with an explicit dierence scheme, and R(t) with the forward{euler method. Note, that the main emphasis in this paper will be on front tracking and the corrected operator splitting. Consequently, our choice of numerical schemes for H(t) and R(t) will be very simple to allow us to focus on the main ideas of our solution strategy as well as keeping the details in the convergence analysis at a minimum. The front tracking method we will use was rst introduced by Dafermos [], then suggested as a numerical method by Holden, Holden, and Hegh-Krohn [25], and later extended to systems by Risebro [4]. Our method deviates slightly from the original [25] in that we track shock curves in a piecewise linear velocity eld, yielding curves that vary piecewise exponentially in time as opposed to piecewise linearly. Applying front tracking for the advective step has some striking advantages. First, the method is unconditionally stable in the sense that there is no CFL condition restricting the time step and it is very ecient for scalar equations. Hence arbitrary large time steps can be used in the splitting scheme. Second, as we shall see later, the method easily allows for a dynamical splitting of the equation (2), which contrasts the xed splitting (3) that is usually employed [2, 3, 3]. Although unconditionally stable, the method contains splitting errors. This means that a reasonable choice of t is highly dictated by the degree of interplay between advective, diusive, and reactive forces. Here we will focus on the interaction between advection and diusion. A thorough discussion of the inuence from reactive terms is left to a separate report. Instead, we refer to some papers [9, 26, 32, 46, 47] concerned with splitting o lower order terms in hyperbolic and parabolic conservation laws. Let us for the moment assume that Q so that (2) is of advection{diusion type. When t is larger than the diusion scale ", the splitting (3) is too diusive near selfsharpening shock fronts [28, 3]. The reason is that the entropy condition forces the hyperbolic solver S(t) to throw away the information controlling the structure of the (self-sharpening) fronts. We will show how to compensate for this \loss of information",

138 4 KARLSEN AND LIE which manifests itself in the form of a residual ux term f res. For instance, assume that the solution of (2) is simply a moving shock front. Applying S(t) gives a discontinuity, with left and right limits u l and u r, respectively. Then we can identify the residual term as f res = f? f c, where f c denotes the convex envelope (dictated by the entropy condition) of f on the interval bounded by u l and u r. There are several ways to take the residual ux term f res into account. We can, for instance, perform a separate correction step after the diusion step. Correction is then realized by solving the \residual" conservation law v t + V (x; t)f res (v) x = over a time interval h; ], where > is some parameter that has to be chosen. Another approach is to include the residual term in the equation modelling diusion, that is, instead of solving (only) the heat equation w t = "w xx, we solve w t + V (x; t)f res (w) x = "w xx. This equation contains the necessary information needed to produce the correct structure of the shock front, but contains a less severe nonlinearity than (2). We will here mainly discuss the rst approach. But to demonstrate the potential of the second approach, a numerical example is presented where we compare these two slightly dierent corrected operator splitting schemes. A simpler form of the techniques developed here has been implemented in a twodimensional prototype two-phase reservoir simulator [29]. The idea is to treat multidimensional equations by means of dimensional splitting. To be more precise, let us consider the following multi-dimensional analogue of u + i F i (x ; : : : ; x d ; t; u) = " dx 2 u + 2 ; : : : ; x d ; t; u): i Letting E x (t) denote our approximate one-dimensional solution (evolution) operator associated with (), we can then realize the solution of (4) using the product formula (5) u(x ; : : : ; x d ; nt) E x d (t) Ex (t) n u : For scalar hyperbolic equations, combining front tracking and dimensional splitting gives not only a simple, but also an ecient and reliable method [35]. This approach is also attractive for (5) since each E x i (t) represents an unconditionally stable scheme, which implies that a large time step t is feasible. In [29], a Petrov-Galerkin nite element method is employed to solve the diusion equation instead of the simple nite dierence scheme used here. Compared with a standard approach, the results are very promising. By combining the analysis found in x3 with the analysis found in [3], it is possible to prove convergence of the multi-dimensional splitting formula (5); we omit the details. Our paper is organized as follows. In x2 we describe in detail the front tracking method and the construction of the (corrected) operator splitting solutions. In x3 we establish convergence of these approximate solutions by making use of a L compactness argument. Finally, in x4 we present and discuss some numerical applications of our solution strategy.

139 FRONT TRACKING AND CORRECTED SPLITTING FOR PARABOLIC EQUATIONS 5 2. Construction of Approximate Solutions The splitting approach results in three dierent equations that each must be solved numerically. Therefore, before we describe the operator splitting in more detail, we introduce numerical schemes for solving these three equations. But as mentioned earlier, the schemes for the diusive and the reactive part are deliberately chosen as simple as possible in order to focus on the main ideas of our front tracking/corrected splitting strategy. For less academic purposes, these simple methods obviously can and will be replaced by other schemes. Advection Equation. Let us begin with front tracking. Consider therefore the nonlinear (6) v + V (x; t) f(v) v(x; ) = v (x); where we assume that f(v) is a continuous piecewise linear function and v (x) is a step function with a nite number of jumps. The piecewise constant initial function yields a sequence of Riemann problems of the form v(x; ) = ( v l ; when x <, v r ; when x > : Each of these Riemann problems can be solved analytically, and since the ux function f is piecewise linear, the solution will be a step function. Rarefaction waves are replaced by sequences of small shocks. Recall that a discontinuity (v l ; v r ) with associated shock speed s = (f(v l )? f(v r ))=(v l? v r ) is admissible provided the entropy condition f(v)? f(vr ) f(v)? f(vl ) sgn(v (x; t)) sgn(v (x; t)) s sgn(v (x; t)) v? v r v? v l is satised for all v between v l and v r. This condition, which is due to Oleinik [39], ensures that the solution is physically correct. To give the complete solution of the Riemann problem, assume rst that V (x; t) is positive and introduce the envelope function ( the lower convex envelope of f between v l and v r if v l < v r, f c (v ; v l ; v r ; V ) = the upper concave envelope of f between v r and v l if v l > v r. For negative V (x; t) the envelope function f c is dened similarly with the roles of convex and concave interchanged. Suppose that fv i g are the breakpoints of f, i.e., the points where f is discontinuous. Since f is piecewise linear, then so is f c, and the breakpoints fv i g of f c form a subset of fv i g. If we set v = v l and v M = v r, we can write the solution of the Riemann problem as v(x; t) = 8 >< >: v l ; x < x (t); v i ; x i (t) x x i+ (t), i = ; : : : ; M? ; v r ; x > x M? (t);

140 6 KARLSEN AND LIE where each x i (t) satises a Rankine{Hugoniot condition dx i fi+ dt = V (x? f i; t) i (7) = V (x i ; t)s i ; v i+? v i with f i = f c (v i ; v l ; v r ). The shock paths x i (t) can be computed explicitly if the function V (x; t) has a simple form. For instance, if V = V (x) = (ax + b) with nonzero a, the path of a shock with speed s starting from x at time t is given by x(t) = (x + b=a) exp[as(t? t )]?b=a. Connecting the solutions of the local Riemann problems gives the global solution of (6) up to the rst time when two waves from neighbouring Riemann problems interact. This interaction denes a new Riemann problem with left and right states given by the values immediately to the left and right of the collision point. The new Riemann problem is then solved as outlined above, thereby, giving the global solution until the next interaction occurs, and so on. Summing up, the front tracking algorithm goes as follows: Solve the Riemann problems dened by the piecewise constant initial data. Keep track of shock collisions and solve Riemann problems at the collision points. The front tracking method for a general conservation law (arbitrary V, f, and v ) consists in replacing f with a piecewise linear approximation, v with a piecewise constant approximation, and V by a function on a form such that (7) can be solved explicitly; typically piecewise linear in space and time, which is assumed from now on. Then an approximate solution is found by solving the resulting (perturbed) problem exactly according to the procedure described above. For a more detailed treatment of the front tracking method we refer to Lie [34]. Diusion Equation. As pointed out earlier, diusion is modelled by realizing an equation of w 2w; w(x; ) = w (x) where we assume that the data w (x) is of bounded variation. When integrating this kind of parabolic equations, one can choose from a diversity of numerical schemes. Here we will simply employ an explicit nite dierence scheme. Let h and k be the spatial and temporal increments; that is, x i = ih and t m = mk for i 2 Zand m 2 Z +. We assume that the stability condition "k=h 2 is satised. The approximation to w(x 2 i; t m ) will be denoted by wi m. To start the scheme we set wi = (w )(x i ), where denotes the usual grid cell averaging operator on fx i ; hg. We compute wi m+ from the nite dierence equation (8) w m+ i = w m i? + (? 2)w m i + w m i+; (i; n) 2 Z Z + : For later use, introduce the interpolation w (x; t) = w m i for (x; t) 2 [x i ; x i+ i [t m ; t m+ i. Reaction Equation. To realize reactive/source/sink processes we use the forward{euler method to solve an ordinary dierential equation of the z = Q(x; t; z(x; ) = z (x):

141 FRONT TRACKING AND CORRECTED SPLITTING FOR PARABOLIC EQUATIONS 7 To start the scheme we set z i = z (x i ) and then compute z m+ i from z m i using the equation (9) z m+ i = z m i + kq m i ; (i; n) 2 Z Z + ; Q m i = Q(x i ; t m ; z m i ): For later use, introduce the interpolation z (x; t) = z m i for (x; t) 2 [x i ; x i+ i [t m ; t m+ i. Splitting Algorithm. From now on, let h > and t > denote the spatial and temporal discretization parameters, i.e., x i = ih for i 2 Zand t n = nt where n N and Nt = T. Dene V (x; t) and f (u) to be proper piecewise linear approximations to V (x; t) and f(u), respectively ( > denotes a polygonal approximation parameter). Here, and in the following, will indicate several discretization parameters which we choose not to specify. Assume that we know the approximate solution u n at time t = t n, for some xed n < N. Next, we describe how to construct u n+ from u n. Step (advection): Let v(x; t) = S (t)u n be the front tracking solution to the conservation v + V f (v) = ; v(x; ) = u n (x); (x; t) 2 R h; t]; and introduce the intermediate solution u n+=3 = S (t)u n. Step 2 (diusion): Choose a local time step k d such that k d N d = t and d = "k d =h 2 2. Let w (x; t) = H (t)u n+=3 be the nite dierence solution of the parabolic w 2w; w(x; ) = un+=3 (x); (x; t) 2 R h; t]: Then introduce the intermediate solution u n+2=3? = H (t)u n+=3. As pointed out earlier, it can be necessary to do a correction step to get the structure of the shock fronts right. To this end, recall that the function u n+=3 (x) is piecewise constant on a nite number of intervals given by fy i g. Let f~u i g denote the values that u n+=3 takes; that is, ~u i and ~u i+ denote the left and right limits, respectively, of u n+=3 at the discontinuity point x = y i. Choose positions fx i g such that y i is located somewhere in the interval hx i ; x i+ i. Then dene the residual ux function (suppressing dependency on n) by ( fres(x; f (u)? fc (u; ~u i ; ~u i+ ; V ); for x 2 [x i ; x i+ i and u 2 [~u i ; ~u i+ ]; (2) u) = ; for x 2 [x i ; x i+ i and u 62 [~u i ; ~u i+ ]: Introduce a small positive parameter, later referred to as the correction time, and let v i (x; t) denote the front tracking solution to the (local) residual conservation v i + V f ;i res(v i ) = ; (x; t) 2 [x i ; x i+ i h; ] with data v i j t= = u n+2=3? restricted to [x i ; x i+ i. Here f ;i res denotes the residual ux function f res restricted to the interval [x i; x i+ i. Connect the solutions of (3) for all i and let v(x; t) denote this solution (dened for all x 2 R). Moreover, let C(t) denote the associated solution operator. We then dene u n+2=3 = P ; (t)u n+=3, where P ; (t) is the compound operator C() H (t).

142 8 KARLSEN AND LIE (4) Step 3 (reaction/source/sink): Let z (x; t) = R (t)u n+2=3 be the z = Q(x; z); z(x; ) = un+2=3 (x); (x; t) 2 R h; t] computed by the forward{euler scheme using N r time steps of length k r, i.e, N r k r = t. Finally, dene the splitting solution at time t = t n+ by u n+ = R (t)u n+2=3. The splitting solution fu n g N n= is constructed inductively. First, set u = u and then compute u n+ from u n for all n < N using the product formula (5) u n+ = R (t) P ; (t) S (t) u n : 3. Convergence It is well known that there exists a unique classical solution u(x; t) to the initial-value problem (). For t > the solution has all the continuous derivatives occurring in the equation. Furthermore, the initial data is in general assumed in the weak sense, i.e., Z?u(x; t)? u (x) (x) dx! ; t! +; 8 2 C (R): We recall that a function u(x; t) is called a weak or generalized solution to () provided (6) ZZ Q + F (x; 2? G(x; t; u) dt dx + Z u t= dx = ; for all test functions 2 C (Q T ) with j t=t. Moreover, the weak solution u(x; t) is unique and possesses for t > all the continuous derivatives occurring in () and satises this equation. Consequently, the notion of classical and weak solutions coincide. All these claims are rigorously proved by Oleinik [39]. We will now show that a sequence of splitting solutions is compact in the L topology. For simplicity we rst assume that the residual term f res is zero, and then towards the end of this section discuss the case with a nonzero residual ux term. The splitting scheme in our analysis then takes the form (7) u n+ = R (t) H (t) S (t) u n : By making appropriate assumptions (see Theorem 3.) on V (x; t), f(u), and G(x; t; u), we obtain the following bounds on the source term Q(x; t; u) = G(x; t; u)? f(u)v x (x; t): (8) jq(x; t; u)j Q ; T V (Q(; t; u)) Q V ; kq(x; t; )k Lip Q L ; where Q, Q v, and Q L are nite constants independent of x, t, and u. We shall in what follows assume (for convenience) that h = O()t. Lemma 3.. The splitting solution u n is bounded; that is, ku n k M (T ) for some constant M (T ) independent of the discretization parameters and n.

143 FRONT TRACKING AND CORRECTED SPLITTING FOR PARABOLIC EQUATIONS 9 Proof. Fix an integer l < n. By construction we know that the solution operator S (t) does not introduce new extrema and neither does H (t). The latter is true due to the convex nature of the nite dierence scheme (8) and because is the simple grid cell averaging operator. Furthermore, (9) gives that kz m+ k kz m k + k r Q, for each m N r. Induction on m and l implies that ku n k ku k + ntq M (T ). Lemma 3.2. The total variation of the splitting solution u n is nite; that is, T V (u n ) M 2 (T ) for some constant M 2 (T ) independent of the discretization parameters and n. Proof. Fix an integer l < n. Let us rst consider the front tracking operator S (t). The variation only changes when shock fronts (discontinuity lines) from neighbouring Riemann problems collide. Suppose that two or more fronts collide and let u ; : : : ; u K be the values that meet in the collision. After the collision, there will be at least one new shock front, unless the values u and u K are equal. When u = u K, all the intermediate values disappear and the total variation decreases in the collision. If the collision produces new shocks, u will be the value to the left of the leftmost shock and u K the value to the right of the rightmost shock, and the values in between will form a monotone sequence. Accordingly, all of the values u 2 ; : : : ; u K? that are not between u and u K disappear and the total variation decreases. Consequently, we can conclude that T V? S (t)u l T V? u l. The operator does not increase the total variation. By using the convex nature of (8), it easily follows that T V? H (t)u l+=3 T V? u l+=3. Let us nally look at the reaction operator R (t). Fix an integer m < N r. We then readily get X z m+? X i+ zm+ i z m i+? z m X i + kr i i i X +k r i Q(xi+ ; t m ; z m i+ )? Q(x i; t m ; z m i+ ) Q(xi ; t m ; z m i+)? Q(x i ; t m ; z m i ) : This implies that T V (z m+ ) ( + k r Q L )T V (z m ) + k r Q V and can be further expanded as T V (z m+ ) ( + k r Q L ) m T V (z ) + mk r Q V ( + k r Q L ) m. Consequently, the splitting solution u l+ = R (t)u l+2=3 at time level t = (l + )t satises T V? u l+ e tq L T V? u l+2=3 + te tq L Q V e tq L T V? u l + te tq L Q V : By induction on l we get T V (u n ) e ntq L T V (u ) + nte ntq L QV M 2 (T ). Lemma 3.3. The splitting solution u n is L Holder continuous in the time variable with exponent 2 ; that is, kup? u q k M 3 (T ) p j(p? q)tj for some constant M 3 (T ) independent of the discretization parameters and q and p. Proof. Fix an integer l between q and p, for q < p. Since all waves in the front tracking solution have nite speed of propagation and the total variation is nite, it follows that ks (t)u l? u l k = O()t. Moreover, using (8) it is easy to see that the reaction operator R (t) obeys the bound kr (t)u l+2=3? u l+2=3 k = O()t. It is well known that the solution of the dierence equation (8) is P merely L Holder continuous in time with exponent (consult e.g. [24, section 2]); i.e., 2 i w N d p i? w i h = O() t. Taking into

144 KARLSEN AND LIE account the projection error ku l+=3? u l+=3 k = O()h, we get the following strong L Holder continuity result for the approximate heat operator kh (t)u l+=3? u l+=3 k = O()( p t + h) = O() p t: Therefore, we rst need to establish a weak Lipschitz continuity result of the nite dierence solution. To this end, let (x) be a test function (with compact support) and h (x) its piecewise constant approximation; h (x) = P i i [xi ;x i+ ](x), where i = (x i ). Using the dierence equation (8) and summation by parts, we get X i i? w N d i = d h? w i h = X i? w m+ i? w m i h = X m;i X? i w m i?? 2wi m + w i+ m = d h X m;i m;i X d h 2 N d k x k sup m i w m i+? w m i m;i = O()tkx k ; h i d (w m i?? 2w m i ( i+? i )? w m i+? w m i + w m i+) where we also have used Lemma 3.2. From this inequality, we get the weak estimate Z? H (t)u l+=3? u l+=3 dx Z? h H (t)u l+=3? u l+=3 dx X i + Z? (? h ) H (t)u l+=3? u l+=3 dx i? w N d i? w i h + O()hkk + hk x k kh (t)u l+=3? u l+=3 k = O()t? kk + k x k + O()kx k h p t = O()t? kk + k x k : We thus conclude that Z? u p? u q dx? = O()(p? q)t kk + k x k : This weak estimate can now be interpolated into a strong L Holder estimate with exponent along the lines of [3]. This concludes our proof of the lemma. 2 Now we need to consider functions dened in the interval h; T ], and not merely on the time-strips t = t n. To accomplish this, dene the sequence fu g by (9) u (x; t) = 8? >< S 2(t? tn ) u n ; t 2 ht n ; t n+=2 i;? H 2(t? tn+=2 ) >: u n+=3 ; t 2 [t n+=2 ; t n+ i; R (t)u n+2=3 ; t = t n+ ; where u n+=3 and u n+2=3 are as dened above. Note that u (x; t n ) = u n for all n. This method of extending u n to a function dened for all t > is motivated by [8] and [3]. In view of the previous lemmas, we conclude that there exists a nite constant M = M(T )

145 FRONT TRACKING AND CORRECTED SPLITTING FOR PARABOLIC EQUATIONS (independent of ) such that u (x; t) obeys: ku (; t)k M; T V (u (; t)) M; ku (; t 2 )? u (x; t )k M p jt 2? t j: Now a standard application of Helly's theorem (see e.g. [39]) yields the desired L loc (Q T ) convergence of a subsequence, still denoted by fu g, to a function u. We nally justify the term \approximate solution" by proving that u(x; t) is the (classical) solution of (). Lemma 3.4. The limit u(x; t) is the classical solution of the Cauchy problem (). Proof. Let L (u) denote the left-hand side of (6). It then suces to prove that L (u) = for all proper test functions with j t=t =. To this end, let v n (t) = S (t)u n, t 2 h; t], and dene a new test function ' by '(x; t) = (x; t=2). Then, since v n (t) is an exact solution to the (perturbed) conservation law (), the following equality holds (2) Z Z tn+=2 i t n + f Z Z = t v n ' + f (v = 2 Z wi m m<n d u n+=3 t=tn+=2 dx? 2? V (x; t) dt dx Z? V (x; ) d dx u n t=tn dx; where we have used the substitution = 2(t? t n ). Let ft m g denote the local time levels associated with the time step k d and let m i = (x i ; t m ). Multiplying the nite dierence equation (8) by m i k d h and applying summation by parts, we get X X h m+ h i m i?? 2 m i + m i+ = X i w N d i? m i k d i + "w m i X N d i h? i h 2 i k d h w i i h; w i = (un+=3 )(x i ): Letting w (x; t) = H (t)u n+=3, we can obviously replace this equality by Z Z dt dx = Z Z u n+2=3 t=t dx? u n+=3 t= dx + Z?u n+=3? u n+=3 t= dx; making an allowable error of order O()(th + tk d ) = O()t 2. Within an allowable error of order O()t 2, we can then deduce that Z Z tn+ t n+= dt dx = 2 Z (u ) t=t? n+dx? 2 Z u n+=3 t=tn+=2 dx + 2 Z?u n+=3? u n+=3 t=tn+=2 dx:

146 2 KARLSEN AND LIE Having in mind (9) and (8), a straightforward calculation yields Z (u ) t=t? dx = n+ Z Z Z tn+ u n+ t=tn+ dx? t n Q(x; t; u ) dt dx within an allowable error of order O()t 3=2. If we now add the approximate weak formulations for u (x; t) on ht n ; t n+=2 i and ht n+=2 ; t n+ ], and sum over n, the resulting global weak formulation takes the form ZZ Q T (2) + S N(t)f + 2 Z u t= dx = 2? V (x; t) + T N 2 n= Here S N (t) and T N (t) denote the characteristic functions S N (t) = N? X Q(x; t; u ) dt dx N? X Z u n+=3? u n+=3 t=tn+=3 dx + O() p t: hnt;(n+=2)ti (t); T N (t) = N? X n= [(n+=2)t;(n+)t] (t): Note that S N (t) and T N (t) both tend weakly in L 2 to 2. We assume that f and V are chosen such that kf? f k W ;! and kv? V k W ;! as!. Furthermore, the global projection error (the right-hand side of the equality (2)) tends to zero as! (see e.g. [3]). In view of the dominated convergence theorem, we can thus pass to the limit as! in (2), obtaining (remember that Q = G? fv x ) L (u) = lim L (u ) = ;! where u = lim! u. This concludes the proof of the lemma. Consequently, we have the following main theorem. Theorem 3.. Let F (x; t; u) = V (x; t)f(u) be the ux term and G(x; t; u) the reaction term. Suppose that V, f, and G are bounded and smooth functions of all their arguments. In addition, suppose that G(; t; u) and V x (; t) have bounded variation and that the initial data u is a function of bounded variation. Then the operator splitting solutions (7) converge to the unique classical solution of the F (x; t; u) 2u + G(x; t; u); u(x; ) = u (x); (x; t) 2 Q T : Let us now consider the corrected splitting formulas (5). Introduce the slightly modied interpolation u ; (x; t), u ; (x; t) = 8? >< S 2(t? tn ) u n ; t 2 ht n ; t n+=2 i;? H 2(t? tn+=2 ) u >: n+=3 ; t 2 [t n+=2 ; t n+ i; R (t) C()u n+2=3? ; t = t n+ ;

147 FRONT TRACKING AND CORRECTED SPLITTING FOR PARABOLIC EQUATIONS 3 where we assume that = O()t. Lemmas 3.{3.3 are still valid (the operators S and C() have similar properties). Thus the sequence fu ; (x; t)g is compact in L loc(q T). In view of Lemma 3.4, we get that u ; (x; t) satises the weak formulation (2) with an extra \error" term (22) N? X n= Z C()u n+2=3?? u n+2=3? (x) dx = N? X n= Z X i Z xi+ x i? f ;i res(v i ) dx dt; where v i (x; t) is the solution of (3). Assume rst that there is only one residual ux term. For notational convenience we name it g and let v(x; t) denote the solution of the corresponding residual conservation law (3), which is to be understood, of course, in the sense of measures and dened on R h; ]. Recall that v(x; t) depends on n and the discretization parameters. The next lemma implies that the term (22) can in fact be viewed as an allowable error term of order O() p t. Lemma 3.5. Let 2 C (R) and let (x; t) = (x)v (x; t). Then we have Z (x; t) d ; p = O() t; g(v)dx: Proof. Observe rst that the measure g(v) x has nite variation because of Lemma 3.2, and that x is uniformly bounded independently of and. Now a classical BV argument (consult e.g., [3, 44]) allows us to calculate as follows Z (x) d jg(v)j dx = O()Z g(v)? g? u n+=3 dx = O()Z v(x; t)? u n+=3 (x) dx = O() p t; where we have used the key property g(u n+=3 ) for all n, the Lipschitz continuity of g, and Lemma 3.3. Let us now briey comment on the case with several residual ux terms. Let v i (x; t) be the solution of (3) with residual ux function g i. We stress that in \worst case" scenarios the operator H (t) can destroy signicant structures of u n+=3 (e.g. monotonicity properties and local extrema), so that C() possesses no correction eect when applied to u n+2=3. We will therefore apply the correction operator on an interval [x i ; x i+ i only if the following two conditions are fullled. First, we require that (23) sgn(v (x i ; t))g i? u n+2=3 (x i ) ; sgn(v (x i+ ; t))g i? u n+2=3 (x i+ ) : Note that (23) is necessary for the conservation law (3) to actually possess a correction eect on u n+2=3. Consequently, on intervals hx i ; x i+ i where (23) is violated, the correction operator operator is not applied since it would not have a correction eect there. Secondly, we require the relation (24) u n+2=3? (x i )? u n+=3 (x i ) C p t;

148 4 KARLSEN AND LIE where C is a nite constant independent of the discretization parameters and the position x i, but dependent on the initial data and the ux function. This condition is, however, merely a technical assumption associated with the convergence analysis. The assumptions (23) and (24) imply that the following relation holds vi (x i ; t)? ~u i p = O() t: (25) The proof of Lemma 3.5 can now be applied to each of the integrals on the right-hand side of the equality (22). The result coincides with that of Lemma 3.5 except for additional boundary terms (due to \integration by parts") of the form (26) BT i = V (x i+ ; t)g i (v i (x i+ ; t))(x i+ )? V (x i ; t)g i (v i (x i ; t))(x i ): Using the property g i (~u i ) = g i (~u i+ ) =, the Lipschitz continuity of g i and the relation (25), we get that BTi = O() p t. By summing over all i, we obtain that the error term (22) is bounded by O() p t. Consequently, we have our second and nal main theorem. Theorem 3.2. In addition to the hypotheses of Theorem 3., assume that the correction operator C(), = O()t, is only applied where (23) and (24) are fullled. Then the conclusion of Theorem 3. is also valid for the corrected operator splitting formula (5). Of course, the above convergence theorems are also true for equations that are in nonconservative form to begin with, i.e., equations of @2 u + V (x; t) f(u) @x2u + G(x; t; u): 4. Numerical Examples We present and discuss two numerical examples which each will focus on an aspect of the method. The rst example purely academic, but is chosen to clearly demonstrate the eect of correction. The next is drawn from modelling of glacier movement and growth. First, a few words on the implementation of the correction step. Although the residual term is dened for every discontinuity in the advection solution, it is zero for all steps of size (i.e., rarefaction waves). Similarly, it has little eect for \small" discontinuities. To increase code eciency, one should therefore introduce a threshold which a shock in the advection solution must exceed before the corresponding residual ux term is computed. We stress that the conditions (23) and (24) therefore have no practical consequences. 4.. Academic Case. In our rst example we consider (2) with f(u) = 4u 2 (? u 2 ), V (x) = + sin(x), and G. This example serves the purpose of showing the schemes ability to resolve the balance of advection and diusion correctly. Source terms will be considered in the next example. Note that the ux function is nonconvex, which represents no additional challenge since the front tracker is able solve Riemann problems for any ux function. We will consider two dierent initial data, rst a Riemann problem and then a highly non-monotone initial function. The Riemann problem is given by u (x) = sgn(x). We put Q and use = :75, " = :5. The computational domain is taken to be [?2; 2].

149 FRONT TRACKING AND CORRECTED SPLITTING FOR PARABOLIC EQUATIONS Figure. The reference solution (dashed) at time t = :3 compared to the OS solution with one time step (left), COS with a separate correction step and = :2t (middle), and COS with a modied diusion equation (right). Instead of having a separate correction step, the residual ux term can be included in the equation modelling diusion. We then get the following parabolic w + V f res(x; w) 2w; (x; t) 2 R h; t]; that must be solved with data wj t= = u n+=3. It is not dicult to modify the dierence scheme (8) so that it takes into account the residual term fres. To this end, consider a xed interval hx i ; x i+ i on which f is nonzero (on intervals where f res res is zero, the scheme is not altered). Let g i denote this residual term. Restricted to the ith interval, we compute the solution according to the following modied dierence formula (28) w m+ j =? d V (x j ; t m )? g i m j+? g i m j? + d w m j? + (? 2 d )w m j + d w m j+; n for all j such that x j 2 hx i ; x i+ i. Here d = k d =(2h) and g ij = g i (wj n ). Recall that (28) is stable provided d and h 2 2"kg ik. Consult, for example, [24] for a discussion of this scheme when V =. In applications a more sophisticated scheme should of course be used; we have successfully applied a Petrov{Galerkin nite element method [29] instead of (28). The advantage with (27) is that we avoid choosing the parameter, but at the expense of solving a more complicated diusion equation. In the computations we use a grid with uniform grid cells. Figure shows the solution computed by OS and the two formulations (5) (with = :2t) and (28) of COS using one time step (i.e., a CFL number of ). Note that the solutions are plotted as step functions, and thus do not appear as smooth as if we had used a linear interpolation. We see that both formulations of COS give notable improvement over OS, with a slight preference to COS with a modied diusion equation. We observed that OS needed approximately time steps to gain the same resolution of the shock front. In Figure 2 (left) we have given the residual ux used by COS. Figure 2 (right) shows intermediate solutions for COS. Large shocks where the correction operator is applied is indicated by circles (at y i values).

150 6 KARLSEN AND LIE Figure 2. (Left) The ux function (dotted), upper concave envelope (dashed), and residual ux function (solid) used by COS. (Right) Intermediate solutions for COS with separate correction: advection solution (dotted), diusion solution (dashed), and after correction (solid) Figure 3. (Left) A section of the solution at time t = :3 computed by OS (dashed) and COS (solid) together with a ne grid reference solution (dotted). (Right) Intermediate solutions for COS during the last time step. In the second test we use initial data u (x) = sin(x), = :, " = :2, and G =?V (x)f(u). The computational domain is now [?5; 5]. Figure 3 (left) shows a section of the solution at time t = :3 computed on a grid with 2 uniform cells using three time steps (i.e., a CFL number of 7). Here COS uses = :2t and gives an improved resolution of shock fronts compared to OS. In Figure 3 (right) we have plotted the intermediate solutions for COS during the last time step, similarly as in Figure 2. Observe that only a few shocks in the advection solution have sucient strength to introduce a nonzero residual ux. The conclusion of the rst example is that the correction step implies that the accuracy in shock regions is largely independent of the size of the time step, which contrasts strongly with standard splitting. The eect is even more pronounced for a larger time step (t ").

151 FRONT TRACKING AND CORRECTED SPLITTING FOR PARABOLIC EQUATIONS Glacier Growth. In our second example we look at a simple one-dimensional model for glacier growth. Although the equations are realistic for describing a glacier, the computations are carried out for two simple examples. However, we wish to point out that our methodology is applicable for actual computations and it is currently being used in a study of Briksdalsbreen, which is a part of Jostedalsbreen (Norway), the largest glacier in continental Europe. A glacier with height h(x; t) rests upon a at mountain, making an angle with the horizontal direction, see Figure 4. Following Fowler [2], the ow is described by the conservation of mass and momentum in an incompressible ow. The stress tensor is proportional to the deformation velocity; that is, ij = O()_ ij. The deformation velocity is given by _ ij = 2 j i ). The glacier is a viscoplastic uid, and the deformation is described approximately by an experimental relation called Glen's law, ij = 2 A n? ij. The factor A generally depends upon the temperature, but here we assume that it is a constant. The exponent n is measured to be typically in the range 3{4. We now make the approximation of a shallow ice; that is, the typical length scale l of the glacier is much larger than the typical depth d. Scaling variables and neglecting terms of lower order, Fowler derives = A? "h x n (h? y) n ; where " = d l cot is a small parameter. Letting u b denote the sliding velocity at the bottom of the glacier, the volume ux becomes u b h + A? "h x n h n+2 n + 2 : The accumulation and ablation (melting) can be modelled by a source term a(x; t; h). If we make the approximation that (?"h x ) n?n"h x, we arrive at the following u b h + A n + n"a n = a(x; t; h): y h(x,t) glacier (,) u(x,y,t) α x Figure 4. A simplied model of a glacier

152 8 KARLSEN AND LIE.2.2 Ref OS COS Ref OS COS Figure 5. Snapshots of a moving glacier at times t = 2:, t = 4: computed with CFL=. Note that the dierence between OS and COS is not so pronounced as in the previous example. The reason is that t is not signicantly larger than ". Here the diusion term is nonlinear and of the form "((h)h x ) x, where the function (h) has a one point degeneracy; that is, () =. Since nonlinear diusion terms are not treated in this paper, we replace "((h)h x ) x by "h xx and refer instead to [8] for a treatment of the nonlinear, possibly degenerate case. This replacement does not eect the solution to a large extent, except at the foot of the front, where we now gain more regularity. We rst look at a Riemann problem with h(x; ) = (?;]. (A very simple model of an outlet into a valley). We are not interested in the glacier upstream and therefore use only a short interval of positive accumulation above zero (x < ) and increasing ablation further downstream, We assume that the rate of accumulation and ablation (depending on the sign of the source term) is only dependent upon the altitude, i.e., on x. To model this, we use the source a(x; t; h) = a (x) if h(x; t) > and max(a (x); ) if h(x; t) =, thus disregarding any seasonal variation in the accumulation, a (x) = 8 >< >: (x + :4); 2 for x 2 [?:4;?:2];? x; 2 for x >?:2; ; otherwise: As a simple scaling we have used u b = 4, n = 4, A = (?u b)(n+2), and " = :. Figure 5 shows two snapshots of the movement of the glacier front (snout). At time t = 2: (left) the snout is advancing, while at t = 4: (right) it has reached a stationary state where the ablation balances the forward movement. In both plots the grid is uniform with 64 grid blocks and we used 64 time steps to advance the solution up to time t = 4: (corresponding to a CFL number of approximately ). The reference solutions computed on a 24 grid are shown as dotted lines. In both plots a small splitting error (due to the source term) is evident, giving a too low height of the glacier. At time t = 2: the corrected operator splitting (solid line) resolves the shock front slightly sharper than the operator splitting (dashed line) due to the presence of strong shocks in the advection step. However, at time t = 4: the glacier front is now longer sharp, and the two solutions coincide. We stress

153 FRONT TRACKING AND CORRECTED SPLITTING FOR PARABOLIC EQUATIONS Glacier profile at times t=5,, 2, 3, 4, Figure 6. Prole of a growing glacier. that the dierence between OS and COS is not supposed to be large in this example, since t is not signicantly larger than the diusion scale ". Second, we look at the growth of a new glacier. The glacier is to be restricted approximately to the interval [?5; 5], and hence we use the source term, (?:x + :5 sin(2t); x >?5:; a(x; t) = ; x <?5:: Here the second term models seasonal variations; zero accumulation at the top in the middle of summer and no ablation at the bottom in the middle of winter. Figure 6 shows snapshots of a very accurate simulation of the glacier growth. The solution is computed by OS on a grid with 96 nodes using 8 time steps to reach time t = :. This corresponds to a CFL number 5 and t ". In Figure 7 we compare this accurate solution with COS using 8 time steps on a grid with 24 cells; that is a CFL number 32! Even for this extreme case COS seems able to resolve the solution fairly well. Note however, that the solution is best resolved in the beginning when the process is dominated by the accumulation. Running OS with the same parameters gave a more diused snout during the advancing phase, but otherwise comparable results.

154 2 KARLSEN AND LIE Glacier profile at times t=5, 25, Figure 7. Proles computed by COS with CFL number 32 on a 24 grid (solid line) compared to the very accurate solution (dashed line). Acknowledgement We thank Helge K. Dahle, Magne S. Espedal, Steinar Evje, Helge Holden, and Nils Henrik Risebro for interesting discussions. We thank Harald E. Krogstad, Runar Holdahl, and ystein Stemme for help with the glacier example. This work was carried out while the rst author was a guest at the Institute for Mathematics and its Applications (IMA) at the University of Minnesota. This author would like to thank IMA for nancial support and great hospitality. References [] T. Arbogast and M. F. Wheeler. A characteristic-mixed nite element method for advection-dominated transport problems. SIAM J. Num. Anal., 32:44{424, 995. [2] J. Bear and A. Verruijt. Modeling groundwater ow and pollution. Reidel, Dordrecht, 987. [3] F. Black and M. Scholes. The pricing of options and corporate liabilities. Jour. Pol. Econ., 8:637{659, 973. [4] J. M. Burgers. The nonlinear diusion equation. Reidel, Dordrecht, 974. [5] M. A. Celia, T. F. Russell, I. Herrera, and R. E. Ewing. An Eulerian-Lagrangian localized adjoint method for the advection-diusion equation. Adv. Water Resources, 3:87{25, 99. [6] R. Chella and J. M. Ottino. Modelling of rapidly-mixed-fast-crosslinking exothermic polymerizations. AIChE J., 29:373{382, 983. [7] B. Cockburn and C.-W. Shu. The local discontinuous Galerkin method for time-dependent convection{ diusion systems. Supercomputer Institute Research Report UMSI 97/26, University of Minnesota, 2 Washington Avenue South, Minneapolis, Minnesota 5545, Feb. 997.

155 FRONT TRACKING AND CORRECTED SPLITTING FOR PARABOLIC EQUATIONS 2 [8] M. G. Crandall and A. Majda. The method of fractional steps for conservation laws. Numer. Math., 34:285{34, 98. [9] G. Crasta and B. Piccoli. Viscosity solutions and uniqueness for systems of inhomogenous balance laws. Preprint, SISSA, Italy, June 995. [] C. M. Dafermos. Polygonal approximation of solutions of the initial value problem for a conservation law. J. Math. Anal. Appl., 38:33{4, 972. [] H. K. Dahle. Adaptive characteristic operator splitting techniques for convection-dominated diusion problems in one and two space dimensions. PhD thesis, Department of Mathematics, University of Bergen, 988. [2] C. N. Dawson. Godunov-mixed methods for advective ow problems in one space dimension. SIAM J. Num. Anal., 28(5):282{39, Oct. 99. [3] C. N. Dawson. High resolution upwind-mixed nite element methods for advection{diusion equations with variable time-stepping. Numer. Methods Partial Dierential Equations, :525{538, 995. [4] C. N. Dawson, C. J. van Duijn, and M. F. Wheeler. Characteristic-Galerkin methods for contaminant transport with non-equilibrium adsorption kinetics. SIAM J. Num. Anal., 3:982{999, 994. [5] L. Demkowitz and J. T. Oden. An adaptive characteristic Petrov-Galerkin nite element method for convection-dominated linear and nonlinear parabolic problems in two space variables. Computer Methods in Applied Mechanics and Engineering, 55:63{87, 986. [6] J. Douglas and T. F. Russell. Numerical methods for convection-dominated diusion problems based on combining the method of characteristics with nite element or nite dierence procedures. SIAM J. Num. Anal., 9(5):87{885, Oct [7] M. S. Espedal and R. E. Ewing. Characteristic Petrov-Galerkin subdomain methods for two-phase immiscible ow. Comput. Methods Appl. Mech. Engrg., 64:3{35, 987. [8] S. Evje and K. H. Karlsen. A note on viscous splitting of degenerate convection{diusion equations. Preprint, Institute of Mathematics and its Applications (IMA), University of Minnestota, Minneapolis, Minnesota, 997. Available at the URL [9] R. E. Ewing. Operator splitting and Eulerian-Lagrangian localized adjoint methods for multiphase ow. In Whiteman, editor, The Mathematics of Finite Elements and Applications VII MAFELAP, pages 25{232. Academic press, San Diego, CA, 99. [2] R. E. Ewing and T. F. Russell. Ecient time stepping methods for miscible displacement problems in porous media. SIAM J. Num. Anal., 9:{67, 982. [2] A. C. Fowler. Glaciers and ice sheets. In J. I. Diaz, editor, The Mathematics of Models for Climatology and Environment, volume 48 of NATO ASI Series, pages 32{336. Springer Verlag, 997. [22] E. Godlewski and P.-A. Raviart. Numerical approximation of hyperbolic systems of conservation laws. Springer Verlag, 996. [23] I. Herrera, R. E. Ewing, M. A. Celia, and T. F. Russell. Eulerian-lagrangian localized adjoint methods: The theoretical framework. Numer. Meth. for PDEs, 9:43{457, 993. [24] D. Ho and J. Smoller. Error bounds for nite-dierence approximations for a class of nonlinear parabolic systems. Math. Comp., 45(7):35{49, July 985. [25] H. Holden, L. Holden, and R. Hegh-Krohn. A numerical method for rst order nonlinear scalar conservation laws in one-dimension. Comput. Math. Applic., 5(6{8):595{62, 988. [26] H. Holden and N. H. Risebro. Conservation laws with a random source. To appear in Applied Mathematics and Optimization. Available at the URL [27] H. Holden and N. H. Risebro. Front tracking for conservation laws. Book in preparation. [28] K. H. Karlsen, K. Brusdal, H. K. Dahle, S. Evje, and K.-A. Lie. The corrected operator splitting approach applied to a nonlinear advection{diusion problem. Comput. Methods Appl. Mech. Engrg. To appear. [29] K. H. Karlsen, K.-A. Lie, N. H. Risebro, and J. Fryen. A front-tracking approach to a two-phase uid-ow model with capillary forces. In Situ, 22():59{89, 998.

156 22 KARLSEN AND LIE [3] K. H. Karlsen and N. H. Risebro. Corrected operator splitting for nonlinear parabolic equations. Preprint, University of Bergen, Norway, 997. Available at the URL [3] K. H. Karlsen and N. H. Risebro. An operator splitting method for convection-diusion equations. Numer. Math., 77(3):365{382, 997. [32] J. O. Langseth, A. Tveito, and R. Winther. On the convergence of operator splitting applied to conservation laws with source terms. SIAM J. Appl. Math., 33(3):843{863, June 996. [33] R. J. LeVeque. Numerical methods for convservation laws. Lectures in Mathematics. ETH Zurich. Birkhauser Verlag, Basel, second edition, 992. [34] K.-A. Lie. A front tracking method for one-dimensional nonlinear advection equations with variable coecients. Preprint (mathematics) 6, Norwegian University of Science and Technology, 997. [35] K.-A. Lie, V. Haugse, and K. H. Karlsen. Dimensional splitting with front tracking and adaptive grid renement. Numer. Methods Partial Dierential Equations. To appear. [36] M. J. Lighthill and G. B. Whitham. On kinematic waves. II. Theory of trac ow on long crowded roads. Proc. Roy. Soc, 229A:37{345, 955. [37] M. S. Mock. Analysis of mathematical models of semi-conductor devices. Boole Press, Dublin, 983. [38] K. K. Mohanty, J. M. Ottino, and H. T. Davis. Reaction and transport in disordered composite media. Chem. Eng. Sci., 37:95{924, 982. [39] O. A. Oleinik. Discontinuous solutions of non-linear dierential equations. Amer. Math. Soc Transl. Ser., 26:95{72, 963. [4] N. H. Risebro. A front{tracking alternative to the random choice method. Proc. Amer. Math. Soc, 7(4):25{29, Apr [4] T. F. Russell. Galerkin time stepping along characteristics for Burgers' equation. In Stepleman et al., editor, Scientic computing, pages 83{92. IMACS, North-Holland, 983. [42] T. F. Russell and R. V. Trujillo. Eulerian-Lagrangian localized adjoint methods with variable coecients in multiple dimensions. In G. Gambolati et al., editor, Proc. 8th Int. Conf. on Computational Methods in Water Resources, pages 357{363. Computational Mechanics Publications, Southampton, UK, 99. [43] J. A. Trangenstein. Mathematical structure of the black-oil model for petroleum reservoir simulation. SIAM J. Appl. Math., 49:749{783, 989. [44] A. I. Vol'pert. The spaces BV and quasi-linear equations. Math. USSR Sbornik, 2(2):225{267, 967. [45] H. Wang, H. K. Dahle, M. S. Espedal, R. E. Ewing, R. C. Sharpley, and S. Man. An ELLAM scheme for advection-dispersion equations in two dimensions. Preprint. [46] H. Wang and R. E. Ewing. Optimal-order convergence rates for ELLAM for reactive transport and contamination in groundwater. Numer. Methods Partial Dierential Equations, :{35, 995. [47] H. Wang, R. E. Ewing, and M. A. Celia. Eulerian-Lagrangian localized adjoint methods for reactive transport with biodegradation. Numer. Methods Partial Dierential Equations, :229{254, 995. [48] H. Wang, R. E. Ewing, and T. F. Russell. Eulerian-Lagrangian localized adjoint methods and their convergence analysis. IMA J. Numer. Anal., 5, 995. [49] M. F. Wheeler, W. A. Kinton, and C. N. Dawson. Time-splitting for advection-dominated parabolic problems in one space variable. Comm. Appl. Numer. Methods., 4:43{423, 988.

157 FRONT TRACKING AND CORRECTED SPLITTING FOR PARABOLIC EQUATIONS 23 (K. Hvistendahl Karlsen) Department of Mathematics University of Bergen Johs. Brunsgt. 2 N-58 Bergen, Norway address: kennethk@mi.uib.no (K.{A. Lie) Department of Mathematical Sciences Norwegian University of Science and Technology N-734 Trondheim, Norway address: andreas@math.ntnu.no

158

159 Paper VII A Front{Tracking Approach to a Two-Phase Fluid{Flow Model with Capillary Forces Kenneth Hvistendahl Karlsen, Knut{Andreas Lie, Nils Henrik Risebro, and Johnny Fryen In Situ, 22(), 59{89 (998)

160

161 A FRONT{TRACKING APPROACH TO A TWO-PHASE FLUID{FLOW MODEL WITH CAPILLARY FORCES K. Hvistendahl Karlsen Department of Mathematics, University of Bergen Johs. Brunsgt. 2, N{58 Bergen, Norway K.{A. Lie Department of Mathematical Sciences, NTNU N{734 Trondheim, Norway N. H. Risebro Department of Mathematics, University of Oslo P.O. Box 53, Blindern, N{36 Oslo, Norway J. Fryen RF-Rogaland Research Thormhlensgt. 55, N{58 Bergen, Norway ABSTRACT We consider a prototype two-phase uid-ow model with capillary forces. The pressure equation is solved using standard nite-elements and multigrid techniques. The parabolic saturation equation is addressed via a novel corrected operator splitting approach. In typical applications, the importance of advection versus diusion (capillary forces) may change rapidly during a simulation. The corrected splitting is designed so that any combination of advection and diusion is resolved accurately. It gives a hyperbolic conservation law for modelling advection and a parabolic equation for modelling diusion. The conservation law is solved by front tracking, which naturally leads to a dynamically dened residual ux term that can be included in the diusion equation. The residual term ensures that self-sharpening fronts are given the correct structure. A Petrov{Galerkin nite-element method is used to solve the diusion equation. We present several examples that demonstrate potential shortcomings of standard viscous operator splitting and highlight the corrected splitting strategy. This is the rst time a front-tracking simulator is applied to a ow model including capillary forces.

162 2 HVISTENDAHL KARLSEN ET AL. INTRODUCTION The nonlinear partial dierential equations that describe certain twophase ow situations in porous media can be separated into an elliptic pressure equation and a parabolic saturation equation. The saturation equation is often advection dominated and describes a physical problem where abrupt changes occur in the physical data (steep fronts). In commercial reservoir simulation the nite-dierence method is the most commonly used discretization technique. Because of the advection dominated nature of the saturation equation, one uses upstream weighting methods to prevent non-physical oscillations from polluting the simulation. However, these methods introduce large amounts of numerical diusion, destroying the structure of important fronts. Since the ow is advection dominated, some people argue that capillary forces can be neglected. This gives a hyperbolic saturation equation that possesses exact discontinuities instead of the steep (discontinuity like) fronts seen in the parabolic saturation equation. Several groups within the petroleum community have taken such an approach, which enables them to choose from a diversity of sophisticated numerical methods developed over the last two decades for hyperbolic conservation laws. See Ref. for a comprehensive introduction to modern numerical techniques for conservation laws. Here we choose to mention the front-tracking approach developed by Glimm et al. 2, the higher-order Godunov methods employed by Bell et al. 3;4, and the front-tracking approach developed by Bratvedt et al. 5;6. Of particular interest to us is the latter approach, which is based on an idea of Dafermos 7 (see also Ref. 8). It has been documented in previous studies 5;6 that this front-tracking concept, which diers from the nite-dierence-based method of Glimm et al., produces highly accurate and CPU-ecient simulations of two-phase ow models based on a \hyperbolic formulation". It is well known that the importance of advection versus diusion (capillary forces) may change rapidly during a simulation in the sense that the ow can be highly advection dominated in certain parts of the reservoir, whereas in other parts the diusion can be more important. From this point of view, the capillary forces should not be neglected; instead it becomes increasingly important to have a numerical solution strategy that can handle various balances of advection and diusion within the same application. In particular, we want a strategy that maintains the advantages of the front-tracking method and uses the algorithms developed when the partial dierential equations are \almost hyperbolic".

163 TWO{PHASE FLUID{FLOW MODEL 3 A standard method for including capillary forces in hyperbolic solvers is viscous operator splitting (OS henceforth). A second-order, diusive term appears in the saturation equation and the OS strategy is to isolate the hyperbolic part in order to apply, e.g., front tracking. The remaining diusive part can be handled by some standard nite-element or -dierence method. This approach, or at least certain variations on this approach, has indeed been taken by several authors; see Refs. 9 to 6. However, numerical experiments 6;7 suggest that OS can be severely diusive near steep fronts, at least when the splitting timestep is large. OS is therefore not particularly well suited to use with hyperbolic solvers that allow for large timesteps. Let us elaborate on this feature by studying an application of OS to a one-dimensional? model equation. Consider therefore Burgers' equation t s s2 x = "@ 2 2 xs, with Riemann data s(x; ) = for x < and s(x; ) = for x >. The true solution is a single (shock) front moving with positive velocity. In particular, the size of the shock layer is O(") (see, e.g., Ref. 9), which contrasts the well-known O( p "){layers seen for linear equations. Formally, let S f (t) denote the solution operator associated with the nonlinear conservation t v x f(v) = ; () and let H(t) denote the solution operator associated with the heat equation Then the OS approximation takes the t w = "@ x 2 w: (2) s(x; nt) H(t) S f (t) n s (x): (3) Let us calculate the rst step in Eq. (3) for Burgers' equation. The entropy solution to the convex conservation law, Eq. (), is v(x; t) = for x < t 2 and for x > t. Using v(x; t) as discontinuous initial data when solving 2 the heat equation, Eq. (2), we obtain the following explicit formula for the OS approximation: Z?(x? y) 2 s(x; t) p exp v(y; t) dy: (4) 4"t 4"t? It is not dicult to deduce from this expression that the shock layer has size O( p "t). Consequently, the shock layer is not properly resolved unless a small timestep (t = O(")) is used, a claim that is in fact supported by numerical evidence in Refs. 6 and 7.

164 4 HVISTENDAHL KARLSEN ET AL. An interesting observation is the following. Let f c (u) denote the upper concave envelope of f(s) = 2 s2 in the interval [; ]. Applying OS to the linear t s x f c (s) x = "@ 2 xs still yields the solution Eq. (4). In fact, applying OS to the t s x g(s) = "@ 2 xs for any ux function g(u) that lies below or equals f c (u) will give the approximation Eq. (4). As opposed to the exact solution, the OS solution does not take into account the particular shape of the ux function, that is, the information needed to determine if the front is self-sharpening and therefore O("){sized. However, the part of the ux function that is neglected can be identied as a residual ux term of the form f res f? f c. Now the idea is to include this residual term into the equation modelling diusion, Eq. (2); i.e., we shall use an approximation formula of the form u(x; nt) P f res (t) S f (t) n u (x) (5) instead of Eq. (3), where P f res (t) is the solution operator associated with the nonlinear diusion t w x f res (w) = "@ xw. 2 Because of the special form of f res (convex with f res () = f res () = ), this equation will contain the necessary information needed to ensure the correct balance between advection and diusion. As we have seen, it is possible to derive a priori the explicit expression for f res for a single Riemann problem. This was rst observed by Espedal and Ewing 3 (see also Ref. 2) who suggested a splitting method based on the linear conservation t v x f c (v) = and the nonlinear diusion t w x f res (w) = "@ xw, 2 instead of Eqs. () and (2). This two-step method, which can be viewed as a slightly dierent alternative to the splitting in Eq. (5), has the advantage of giving the correct size of the shock layer and makes it possible to extend the characteristic methods ; to nonlinear problems without severe timestep restrictions. Of course, an a priori construction of the residual ux f res is not possible for general problems. However, Hvistendahl Karlsen and Risebro 2 recently observed that by using front tracking (as dened by Dafermos) to solve the nonlinear conservation law Eq. (), it is possible to dynamically construct a residual ux function f res (x; ) for general problems, so that the corrected splitting approach, Eq. (5), makes sense in general. Furthermore, the existence of f res (x; ) turned out to be a direct consequence of front tracking being based on solving Riemann problems. The purpose of the present paper is to make the corrected operator splitting technique (COS henceforth) t into the context of two-phase ow simulation and the equations arising there. In particular, we apply both

165 TWO{PHASE FLUID{FLOW MODEL 5 OS and COS based strategies to a few waterooding test cases in order to highlight the features of COS. The main conclusion drawn from the present study is that a numerical solution strategy for two-phase ow models based on front tracking and the corrected splitting formula, Eq. (5), provides a highly accurate and ecient strategy that seems to manage dierent balances of advection and diusion, ranging from the strongly advection dominated case (including the purely hyperbolic one) to the diusion dominated case. The rest of this paper is organized as follows: In the rst section we describe the prototype mathematical model used for simulation purposes. In the second section we explain in detail the solution strategy and the corrected operator splitting technique, Eq. (5). In the third section we study an application of our solution strategy to the well-known quarter ve-spot test case and a waterooding problem involving multiple wells. Finally, in the last section we make some concluding remarks. THE TWO-PHASE FLOW MODEL We study immiscible ow of water and oil in a two-dimensional oil reservoir over a time period (; T ]. To focus on the main ideas of the algorithm, we consider a simplied prototype two-phase model 22, assume incompressible ow, and neglect gravity. If we choose the total Darcy velocity u, the global uid pressure p, and the water saturation s as primary variables, the immiscible displacement of oil by water is governed by a (non-dimensional) system of nonlinear partial dierential equations. We have the pressure equation? r (K( w + o )rp) = ; in (; T ] ; (6) where K = K(x; y) denotes the absolute permeability tensor, i = k ri = i are the mobilities, k ri = k ri (s) the relative permeabilities, and i the viscosities of water and oil, i = w; o, respectively. The pressure equation is coupled via the total Darcy velocity u =?K ( w + o ) rp to the saturation t s + r (uf)? "r (Drs) = ; in (; T ] : (7) Here = (x; y) is the porosity of the rock in the reservoir. The fractional ow function f = f(s) and the diusion tensor D = D(x; y; s) are known functions given by the expressions f = w w + o ; D = K o w w + ;

166 6 HVISTENDAHL KARLSEN ET AL. where p c = p c (s) is the capillary pressure (a known quantity). The small scaling parameter " > is introduced when the equations are converted to non-dimensional form, and gives the relative balance between advective and capillary forces. The system must be constrained by appropriate initial and boundary conditions; here we will use \no ow" boundary conditions, sj t= = s ; in u n = ; D(s)rs = ; (; T ] : (8) We model injection and production wells as area wells; that is, we let each well be dened over a small area i with an outer i. For the pressure equation we demand that u n i = q i i, where q i represents the injection rate and n i is the outer normal i. For the saturation equation, the production wells are modelled as outow boundaries and the injection wells as inow boundaries with saturation kept xed at. To conne our presentation, the boundary conditions will not be explicitly mentioned later when we describe the solution techniques for the pressure and saturation equation. For computational purposes, let us employ mobilities of the form w = s p w ; o = (? s) p o ; p w ; p o > : Thus, the fractional ow (or ux) function has the usual s-shape, i.e., f(s) = s p w s p w + (? s) p o : (9) Furthermore, we replace the absolute permeability tensor by the identity matrix, and take the diusion tensor to be diagonal, D(s) = diag ((s); (s)) ; (s) = 4s(? s): () Hence, the components of the diusion tensor have the typical bell-shape, with degenerate behaviour at s = and s =. We assume the rock porosity to be constant. Finally, for convenience we take the reservoir domain to be rectangular. THE NUMERICAL STRATEGY The governing equations Eqs. (6) and (7) are coupled. A sequential timestepping procedure is used to decouple the equations, which essentially

167 TWO{PHASE FLUID{FLOW MODEL 7 consists of solving one equation at the time, starting with the pressure equation to generate a velocity eld. Subsequently, this velocity eld is used as input in the saturation equation. This strategy reects the dierent nature of the elliptic pressure equation, Eq. (6), and the advection dominated parabolic saturation equation, Eq. (7). For an analysis of this procedure we refer the reader to Refs. 23 and 24. The velocity is assumed to be smoother than the saturation, which may develop large gradients. Let the pair (p n ; s n ) denote the approximate solution to Eqs. (6) and (7) at time t = nt s, where t s > denotes the sequential timestep. The approximation at the next time level is computed in the following two steps: () Pressure: Let n (x; y) = w (s n ) + o (s n ) be the total mobility at time t = nt, and let p be the solution to the elliptic equation?r ( n (x; y)rp) = ; in (; t s ] : This equation is rst discretized using the Galerkin nite-element method with the usual \hat" basis functions. This gives us a linear system of equations. As solver for this system we have used the conjugate gradient method, together with a V-cycle multigrid method as preconditioner. This procedure gives us a piecewiselinear approximation to the pressure. Once the pressure is found we can compute the velocity. A straightforward dierentiation of the piecewise-linear pressure approximation yields a piecewise-constant velocity approximation and convergence of linear order. Instead we have computed the velocity eld based on ux consideration. This method, which is conservative, gives a piecewise-linear velocity eld, and the convergence is superlinear. A detailed description of the pressure and velocity solver is given in Ref. 25. (2) Saturation: Update the total Darcy velocity; u =? n rp. Let s be the solution to the parabolic equation (with sj t= = s n t s + r (uf(s))? "r ((s)rs) = ; in (; t s ] ; where we have rescaled time to get rid of the constant. Finally, the approximation at the next time level is dened by (p n+ ; s n+ ) = (p; s): Under the assumption of incompressible ow, the saturation equation can be written in the following non-conservative t s + u(x; y) rf(s) = "r ((s)rs) ; in (; T ] ; s(x; y; ) = s (x; y); in ; ()

168 8 HVISTENDAHL KARLSEN ET AL. The parabolic equation, Eq. (), is \almost hyperbolic" and will be solved by operator splitting; the basic philosophy of this splitting was explained in the introduction. Let us now describe it in detail. Consider therefore the one-dimensional advection{diusion t s + u(x)@ x f(s) = "@ x ((s)@ x s) ; (x; t) 2 (a; b) (; T ] ; s(x; ) = s (x); x 2 (a; b) : (2) where the velocity u(x) is a piecewise smooth scalar function dened on (a; b). The non-conservative form of the saturation equation is chosen because this is the most natural form if we wish to apply front tracking for the advective part. This method is described in the Appendix toghether with the Petrov{ Galerkine nite-element method used for the diusion equation. Divide the time interval (; T ] into time strips (nt; (n + )t], where n = ; : : : ; N? and Nt = T, and let fx i ; hg be a uniform subdivision of the interval [a; b]. Furthermore, let u h be the linear interpolant of u at fx i g and f the linear interpolant of f at fig. Here, h and denote the spatial and polygonal discretization parameters, respectively. Let s n denote the approximate solution to Eq. (2) at time t = nt, for some xed n >. We now describe how to inductively construct the solution s n+ from s n. Advection update: Solve the following hyperbolic conservation law by front tracking (see the t v + u h (x)@ x f (v) = ; v(x; ) = s n (x); (x; t) 2 (a; b) (; t] : (3) Let S f ;x u h (t) denote the approximate front-tracking solution operator associated with Eq. (3), i.e., v(x; t) S f ;x u h (t)s n (x). Using this notation, we may dene an intermediate solution by s n+=2 = S f ;x u h (t)s n : The function s n+=2 (x) is piecewise-constant on a nite number of intervals. Let the discontinuities of s n+=2 be located at the points fy i g, and let fx i g be a sequence of spatial positions chosen so that y i 2 (x i ; x i+ ). In the interval [y i ; y i+ ) we denote the value of s n+=2 by es i+. Then we dene the residual ux term by f (s)? f ;c (s;es i ;es i+ ) ; x 2 [x i ; x i+ ) ; s 2 [es i ;es i+ ] ; f res (x; s) = (4) ; x 2 [x i ; x i+ ) ; s 62 [es i ;es i+ ] : Here f ;c denotes the correct envelope (either convex or concave) of f restricted to [es i ;es i+ ]. Notice that the envelope function f ;c depends on the

169 TWO{PHASE FLUID{FLOW MODEL 9 sign of the velocity function u h (x) and the sign of (es i? es i+ ), see the appendix. Several ways of choosing fx i g exist; see Refs. 2, 7, and 26. Here we choose x i to be (approximately) equal to the midpoint of the intervals where s n+=2 changes monotonicity; hence, each interval (x i ; x i+ ) coincides with the monotonicity interval of s n+=2 on which y i is found; see Figures 6 and. By a monotonicity interval we mean an interval on which s n+=2 is either non-increasing or non-decreasing. The reason that this works well is that only one signicant discontinuity is located in each monotonicity interval. Diusion update: Let w(x; t) be the Petrov{Galerkin nite-element solution (see the Appendix) to the parabolic diusion t w + u h (x)@ x f res (x; w) = "@ x ((w)@ x w) ; w(x; ) = s n+=2 (x); (x; t) 2 (a; b) (; t] : (5) The Petrov{Galerkin approximation is a piecewise-linear function on a grid chosen such that its nodes coincide with the discontinuity points of the fronttracking solution. To ensure convergence of our method, we have to add nodes whenever the spacing between two discontinuities becomes larger than h. Note that this results in a grid well suited for resolving shock layers. We dene the COS solution at time t = (n + )t in terms of the formula s n+ = P f res;x u h (t)s n+=2 ; where P f res;x u h (t) is the approximate solution operator associated with Eq. (5) at time t. To sum up, the COS solution at time t = T can be written abstractly using the product formula s N = P f res;x u h (t) S f ;x N u h (t) s : (6) Observe that in the presence of shock fronts, the advection part of Eq. (5), f res, only has a sharpening or anti-diusive eect whose purpose is to balance the diusion to the correct order. Furthermore, the f res {term is relatively small (but important) in most applications; see the numerical section and Ref. 7. We shall later see that the residual ux term substantially decreases the temporal splitting error. Note that according to Eq. (4), a \local" ux term f res (x i +; s) is constructed with respect to each shock in the front-tracking solution. In particular, since front tracking replaces smooth parts of the ow by series of small shocks, a large number of these local ux terms will zero and will therefore

170 HVISTENDAHL KARLSEN ET AL. not inuence the ow. In addition, to increase the eciency of the COS algorithm we neglect a local ux term when js R? s L j c tr, where s L and s R denote the values that the local ux term is based on, and c tr is a (problem dependent) threshold parameter. This way the Petrov{Galerkin solver will only pay attention to anti-diusive ux terms based on strong shocks in the advection solution, which correspond to signicant shock layers in the solution of the advection-diusion equation. We should also mention that the anti-diusive ux terms are given (implicitly) as a part of the front-tracking method and can be collected by only a few extra computations. We now turn our attention to the two-dimensional problem, Eq. (2). The COS scheme presented above is genuinely one-dimensional. There are two obvious ways of generalizing it to several space dimensions: the method of streamlines or the method of dimensional splitting 7;27;28. Here we will rely on the latter approach. The streamline approach will be considered elsewhere. Let us explain the dimensional splitting in some detail. Assume that the domain is rectangular and consider a uniform Cartesian grid fz i;j ; hg, where each square grid cell is of the form z i;j = [x i ; x i+ ) [y j ; y j+ ). Let denote the two-dimensional projection operator dened on fz i;j ; hg, i.e., s(x; y) = h 2 Zz i;j s(; ) d d; 8(x; y) 2 z i;j : Let f and g be Lipschitz-continuous, piecewise-linear approximations to f and g, respectively. Furthermore, let u h (x; y) denote an approximation to the rst component of the velocity vector u(x; y). The approximation is continuous, piecewise-linear in x and piecewise-constant in y. Similarly, let u h (y; x) denote the approximation to the second component. Let s n denote the piecewise-constant splitting solution at some positive time t = nt, s = s. We now proceed by explaining how to construct s n+ from s n. x{sweep: Let v(x; t; y) be the front-tracking solution at time t = t t v + u h (x; y)@ x f (v) = ; v(x; ; y) = s n (x; y): (7) Note that y only acts as a parameter in Eq. (7). Next, construct the residual ux function f res (x; v; y) with respect to the constant values taken by v(x; t; y). Let w(x; t; y) be the solution at time t = t to the parabolic t w + u h (x; y)@ x f res (x; w; y) = "@ x ((w)@ x w) ; (8) w(x; ; y) = v(x; t; y); computed using the one-dimensional Petrov{Galerkin method on a grid with nodes determined by the discontinuities in v(x; t; y). To avoid oscillations

171 TWO{PHASE FLUID{FLOW MODEL in the solution, the grid spacing of this one-dimensional grid may have to be choosen smaller than h if " is small. The solution is piecewise-linear on a non-uniform grid, and has to be projected to a piecewise-constant solution on the regular grid z i;j to provide initial data for the y{sweep. y{sweep: Let v(y; t; x) be the front-tracking solution at time t = t t v + u h (y; x)@ y g (v) = ; v(y; ; x) = (w(; t; ))(y; x): (9) Note that x only acts as a parameter in Eq. (9). Next, construct the residual ux function g res (y; v; x) with respect to the constant values taken by v(y; t; x). Let w(y; t; x) be the Petrov{Galerkin solution at time t = t to the parabolic t w + u h (y; x)@ y g res (y; w; x) = "@ y ((w)@ y w) ; w(y; ; x) = v(y; t; x): (2) The solution at time t = (n + )t is dened as s n+ = w(; t; ). In terms of approximate solution operators, the corrected operator splitting solution at time t = T can formally be given by the composition s N = P g res;y u h (t) S g ;y u h (t) P f res;x u h (t) S f ;x N u h (t) s : (2) Note that s N is piecewise-constant with respect to fz i;j g. However, in applications we replace s N by a proper piecewise-linear function to obtain second-order accuracy in space. Furthermore, in applications we also employ a Strang splitting for the x{ and y{sweeps, that is, for the dimensional splitting, but not the viscous splitting. NUMERICAL EXPERIMENTS In this section we apply the ideas from the previous section to model problems. The rst problem is the well-known quarter ve-spot case, and the second is a waterooding problem with multiple wells. This type of test case is well established in the petroleum community. To illustrate the advantages of the corrected operator splitting approach (COS), we will compare it with the standard operator splitting approach (OS). Here OS is realized as COS without correction terms and therefore suers from the same possible deciencies, i.e., splitting and projection errors. We stress that the numerical results presented here for our OS method are not necessarily representative for all OS methods.

172 2 HVISTENDAHL KARLSEN ET AL. The pressure and saturation solvers make use of a compatible grid system; the node points in the pressure solver coincide with the corners of the grid cells in the saturation solver. The pressure (velocity) is updated only once in the examples presented below. We have used a fractional ow function given by Eq. (9) with p w = p o = 2. Since the main purpose is to demonstrate the eect of the residual ux terms, it is sucient to take the diusion coecient (s) to be constant; (s) =. However, to convince the reader that there is no loss of generality in doing so, we present one computation with the nonlinear diusion coecient Eq. () (see Figure 5). We let the reservoir domain be given in unit coordinates and time T in PVI (Pore Volumes Injected). The reservoir is divided into grid cells. Reference solutions are computed by OS on a grid using timesteps. We are primarily interested in discussing the temporal splitting error and not the spatial discretization error, which is small compared with the splitting error when we use a ne grid such as In the Petrov{Galerkin solver we use at most ve Picard iterations. This has proven to be more than suf- cient to resolve the nonlinear residual ux terms and is in agreement with the numerical observations reported in Ref. 29 on the convergence properties of the iteration. Because of the well model, the near-well velocities may become very large and force the timestep to be unreasonably small. On the other hand, the velocities are of moderate size away from the wells, and there a large timestep is feasible. Therefore we have included two or three stages in the computations. During the rst stage, when water fronts are close to injection wells, we use a small timestep. In the intermediate stage, the water fronts have moved away from the injection wells and we can apply a large timestep. Finally, the timestep must be reduced again as the water fronts approach the production wells. Note that it is in the \large timestep areas", when the problem is advection dominated, that COS compares most favourably with OS. In the other areas most of the behaviour can be attributed to the simplied well model. Example (Quarter Five-Spot) The rst example is a quarter ve-spot test case with a unit injection well placed at (; ) and a production well with unit production rate placed at (; ). The reservoir is = [; ] [; ], and the solutions are advanced forward in time (until T = :6) as follows: [; :] in one step, [:; :5]

173 TWO{PHASE FLUID{FLOW MODEL FIG.. Example. The reference solution (OS) computed on a grid using timesteps. Snapshots at times.,.47, and.6 from left to right. in four steps, and nally [:5; :6] in ten steps. The diusion coecient is taken to be constant ((s) = ), and the scaling parameter " is :. In order to demonstrate that a nonlinear diusion coecient causes no trouble, a calculation using Eq. () is shown in Figure 5 (right). The results of the computations are depicted in Figures to 7. Figure shows contour plots of the reference solution at times t = :, :47, and :6. Because of large velocities near the injection well, the problem is highly advection dominated at time t = :, whereas at time t = :6 we see that advection and diusion are equally important (except in a small neighbourhood of the production well). At time t = :47 the problem is again advection dominated, but not as much as when t = :. The importance of advection versus diusion, often measured by the Peclet number Pe = kuk kf k =", may change quite rapidly during a simulation. Consequently, a proper numerical scheme should be able to resolve the dierent balances of advection and diusion in an accurate and consistent way. We feel that COS satises such demands, but that neither OS nor any hyperbolic solver (\zero diusion" models) have this desirable feature, as will be demonstrated below. Figure 2 shows contour plots of the OS calculations. We see that OS is far too diusive at times t = : and :47, whereas at nal time t = :6 the structure of the water front is resolved rather accurately. But there is a cumulative error that manifests itself in late breakthrough of water (see also Figure 7). This eect is perhaps easier to observe in Figure 5 (middle), where the saturation fronts along the diagonal of the grid are shown at times :47 and :6. Figure 3 shows the corresponding COS solutions. It is evident that COS produces both correct placement and structure of the water front for all three times. In particular, the improvement over OS at times t = : and :47 (advection dominated areas) is remarkable. Note that at time :47 neither the COS nor the OS solution are perfectly symmetric with respect to the diagonal. This is due to the dimensional splitting; by increasing the

174 4 HVISTENDAHL KARLSEN ET AL FIG. 2. Example. OS solution; snapshots at times.,.47, and.6 from left to right FIG. 3. Example. COS solution; snapshots at times.,.47, and.6 from left to right. FIG. 4. Example. Three-dimensional plots. (Left) OS solution at time.47. (Right) COS solution at time.47. Note that OS is more diusive than COS. number of timesteps slightly, this eect can be eliminated. The total mass balance error of OS and COS is given in Figure 7 (left). We dene the mass balance error as (PVI{observed mass of water)/pvi. This error is much smaller for COS than for OS. How much does the numerical diusion inuence the results? Figure 7 (right) presents the saturation prole at time t = :47 along the line y :5 for a series of values of ". We see that the structure of the front is well represented for the two larger values ("=.,.5), but not for the two

175 TWO{PHASE FLUID{FLOW MODEL FIG. 5. Example. (Left) Diagonal plot at times.47 (left) and.6 (middle); zero diusion (hyperbolic) model solved by front tracking (dotted), reference solution (solid), OS (dashdot), and COS (dashed). (Right) COS with nonlinear diusion coecient Eq. () at times.,.47, and.6. Note that there is only a slight \loss" of regularity at the \foot" of the front compared with the constant diusion case (left and middle) FIG. 6. Example. (Left) Typical one-dimensional solutions generated by front tracking (solid), OS (dotted), and COS (dashed). (Right) The ux function (dashed), the envelope function (dotted), and the residual ux function (solid) as dened by the front-tracking solution. Note that the residual ux acts on the entire monotonicity interval [,]. We see that the eect of the residual ux term is signicant (left); OS is several orders of magnitude more diusive than COS. smaller values ("=.,.5), for which the fronts approximately equal that of a zero diusion run (not shown in the gure). Notice that it is very dicult to determine the width of shock fronts in advance, since this depends upon the interplay of advection and diusion and may vary throughout the reservoir. To check if the grid is suciently ne to represent fronts, one can do a comparison with runs from the zero diusion model. Recall that a nonuniform (possibly rened) grid is used in the diusion step. Therefore, numerical diusion is mainly caused by the projection operator, which also appears in the zero diusion model. Hence, setting " = gives a good indication of the amount of numerical diusion in the corresponding diusive runs.

176 6 HVISTENDAHL KARLSEN ET AL..9 Method OS COS Ref e 2 5e 3 e 3 5e FIG. 7. Example. (Left) Percentage mass balance error in the above simulations. (Right) Saturation prole at y = :5 for dierent values of the scaling parameter ". 2 I4=.4 I5= P= P5= I=.4 I3=.4.8 P2= P4= I2= P3= FIG. 8. Example 2. (Left) Well conguration. The initial saturation is indicated by a few contour lines. (Middle and right) Reference solution at time.32 (middle) and time.8 (right). Note that the injection rates are lower than in the previous example, so that the velocities are smaller than before and the problem becomes slightly less advection dominated. Example 2 (Several Injection and Production Wells) The next example is also water injection into a homogeneous horizontal oil eld. But now we use ve injection and ve production wells distributed throughout the reservoir = [; 2] [; 2] as shown in Figure 8. Each injection well is marked with a circle and each production well with a cross. The scaling parameter " is :25. We show the water saturation (as contour plots) at times t = :32 and :8. To reach nal computing time :8 we have used a short initial timestep of : followed by ve timesteps. The reference solution is shown in Figure 8. Notice that the problem is less advection dominated than in the previous example because of lower injection rates. In Figure 9 the OS and COS solutions are compared at time t = :32. It is evident that COS yields a more accurate picture of the ow than OS, which contains too much diusion. We have also included a plot of the pointwise

177 TWO{PHASE FLUID{FLOW MODEL FIG. 9. Example 2. (Left) OS solution at time.32. (Middle) COS solution at time.32. (Right) Three-dimensional plot of the pointwise discrepancy between COS and OS. As before, we note that there is a dierence near the water fronts, even though the problem is less advection dominated than in the previous example FIG.. Example 2. (Left) OS solution at time.8. (Middle) COS solution at time.8. (Right) Three-dimensional plot of the pointwise discrepancy between COS and OS. discrepancy between COS and OS to emphasise the dierent ability to resolve the water fronts. Similar plots are given for time t = :8 in Figure. This is immediately before water reaches some of the production wells. As before, the conclusion is that OS produces a signicant amount of diusion (splitting error) in areas of high Peclet numbers, whereas COS has virtually no viscous splitting error and therefore gives both correct placement and structure of the water fronts. When the spatial grid size is too big to represent the fronts accurately, we of course introduce an error in form of a numerical broadening corresponding to the grid size, but the solution is otherwise well behaved. However, a comparison with the zero diusion model shows that the numerical diusion from the projection operator is smaller than the observed diusion in (almost) the whole reservoir. Finally, we point out that the solution is non-monotonic. This results in the generation of several residual ux functions. In Figure (left) we have plotted a typical one-dimensional advection solution (in the x{direction) corresponding to row number 2 in the grid (y :88). In the plot on

178 8 HVISTENDAHL KARLSEN ET AL FIG.. Example 2. (Left) One-dimensional advection solution (solid) in the x{direction (grid row number 2). The velocity along this tube is shown as dashed. Note that the advection solution has three monotonicity intervals (indicated by the vertical dotted lines). (Right) The residual ux function (viewed as a function of space and saturation) dened by the front-tracking solution (superimposed on the plot as a thick solid line). Note that the residual ux terms are relatively small (less than.2 in absolute value). u x.5 2 the right we show the residual ux term dened by the advection solution (left). Notice that f res is a function of both the space variable x and the saturation s because the solution is non-monotonic. Here we must stress that the calculations leading to the residual ux terms consume very little time compared with the rest of the algorithm. The necessary data are already contained in the data structure used by front tracking. CONCLUDING REMARKS In reservoir simulation it is important to have a numerical strategy that can cope naturally with the dierent balances of advection and diusion that will occur during a simulation. In a typical application, advective forces are highly dominant in certain parts of the reservoir whereas in other parts diusive forces are more important. On one hand, there exists a variety of accurate numerical schemes for hyperbolic saturation equations obtained by ignoring capillary forces (advection dominated ow). On the other hand, if the ow is diusion dominated virtually any nite-element or nite-dierence scheme performs well. Our starting point has been a desire to develop a numerical strategy that maintains the advantages of modern hyperbolic solvers and uses the algorithms developed when the equations are \almost hyperbolic". In addition, we wish to capture all balances of advective and diusive forces ranging from

179 TWO{PHASE FLUID{FLOW MODEL 9 advection to diusion dominated problems. Numerical examples show that the usual operator splitting (OS) methodology is too simple in the sense that it does not resolve steep (self-sharpening) fronts properly. To amend this shortcoming, we have developed a corrected operator splitting (COS) methodology. COS models diusion via a parabolic equation that contains a nonlinear residual ux term ensuring the correct amount of self-sharpening. The residual term turned out to be computationally easy to realize if we used Dafermos' method to solve the hyperbolic part of the problem. Numerical examples show that the COS strategy possesses the desired properties mentioned above. Finally, we have also managed to dene a COS scheme in terms of a higher-order Godunov scheme instead of front tracking. The computational results are satisfactory (see Ref. 7). APPENDIX The Appendix gives a more detailed description of the front-tracking and the Petrov{Galerkin nite-element methods. Front Tracking We give a brief description of the front-tracking method, which is an extension of Dafermos' method. Let u(x) and f(v) be Lipschitz-continuous, piecewise-linear functions. Consider a nonlinear conservation law of the t v + u(x)@ x f(v) = ; v(x; ) = v (x); x 2 R; t > ; (22) where we assume that v (x) is a step function with a nite number of jumps. The piecewise-constant initial function yields a sequence of Riemann problems of the form vl ; when x <, v(x; ) = v R ; when x > : Each of these Riemann problems can be solved analytically, and since the ux function f(v) is piecewise-linear, the solution will be a step function. Rarefaction waves (smooth parts of the solution) are replaced by sequences of small shocks. Recall that a discontinuity (v L ; v R ) propagating with shock speed s = (f(v L )? f(v R ))=(v L? v R ) is admissible provided the entropy condition sign (u(x)) f(v)? f(v R) v? v R sign (u(x)) s sign (u(x)) f(v)? f(v L) v? v L

180 2 HVISTENDAHL KARLSEN ET AL. is satised for all v between v L and v R. This condition, which is due to Oleinik 3, ensures that the solution is physically correct. To give the complete solution of the Riemann problem, assume rst that u(x) is positive and introduce the function 8 the lower convex envelope of f between >< v L and v R if v L < v R, f c (v ; v L ; v R ) = the upper concave envelope of f between >: v R and v L if v L > v R. For negative velocities f c is dened similarly with 'lower convex' and 'upper concave' interchanged. Suppose now that fv i g are the breakpoints of f(v), i.e., the points where f (v) is discontinuous. Since f(v) is piecewise-linear, then so is f c (v), and the breakpoints fv i g of f c (v) form a subset of fv i g. If we set v = v L and v M = v R, then the solution of the Riemann problem is given by v(x; t) = 8 < v L ; : x < x (t) v i ; x i (t) x x i+ (t), i = ; : : : ; M? v R ; x > x M? (t); where x i (t) satises the Rankine{Hugoniot condition dx i dt = u(x i) f i+? f i v i+? v i = u(x i ) s i ; i = ; : : : ; M? : and f i = f c (v i ; v L ; v R ). Suppose now that the velocity is given by u(x) = a j x + b j on intervals [x j ; x j+ ] for nonzero a j ; the intervals are given such that u has constant sign on each. The path of a shock with associated speed s starting from x 2 [x j ; x j+ ] at time t is then given by the explicit formula x(t) = x e a js(t?t ) + b j a j (e a js(t?t )? ): By connecting the solutions of the local Riemann problems we obtain the global solution of Eq. (22) up to the rst time when two waves from neighbouring Riemann problems interact. This interaction denes a new Riemann problem with left and right states given by the values immediately to the left and right of the collision point. The new Riemann problem is then solved as outlined above, thereby giving the global solution until the next interaction occurs, and so on. Summing up, the front-tracking algorithm goes as follows: () Solve the Riemann problems dened by the piecewise-constant initial data. (2) Keep track of shock collisions and solve Riemann problems arising at the collision points.

181 TWO{PHASE FLUID{FLOW MODEL 2 For a more detailed treatment of the front-tracking method for u(x) we refer to Ref. 8. The front-tracking method for general conservation laws (arbitrary u, f, and v ) consists in replacing u and f with piecewise-linear approximations and v with a piecewise-constant approximation, and then to solve the resulting (perturbed) problem exactly according to the procedure described above. The Petrov{Galerkin Finite{Element Method Consider the nonlinear parabolic equation, Eq. (5), which can be written in conservative form as t w x [u h (x)f res (x; w)? "(w)@ x w] x u h (x)f res (x; w): (23) By \freezing" the coecients in this equation we obtain linear equations that can be solved by a Petrov{Galerkin nite-element method. To be more precise, let w p be the Petrov{Galerkin approximations at time t = t to the linear, variable coecients, advection{diusion t w p x uh (x)b n (x; w p? )w p? "(w p? )@ x w p x u h (x)f res (x; w p? ); p = ; 2; : : : ; where f res (x; w) = b n (x; w)w. The approximate solution to Eq. (23) is now taken to be w q for some q >. The rest of this section is devoted to describing the Petrov{Galerkin scheme for problems of the t w x [b(x)w? "d(x)@ x w] = r(x); (x; t) 2 (a; b) (; t] ; (24) with initial and, say, homogeneous boundary data; wj t= = w and wj x=a;b =, respectively. We are interested in computing approximations to Eq. (24) at time t = t. Let S h be the standard piecewise-linear nite-element space spanned by hat functions f i (x)g with nodes fx i g, so that boundary conditions automatically are taken care of, and let x i = x i? x i? be the size of each element. Hence, a nite-element approximation w h 2 S h may be written w h = X i w i i ; wj t= = X i w i i ; for some proper coecients fw i g and fw i g. The time derivative in Eq. (24) is replaced by a single backward Euler step. Note that this implies that

182 22 HVISTENDAHL KARLSEN ET AL. t must be reasonably small to ensure that the method of \freezing" the coecients converges (see Ref. 29). For larger t it may be necessary do several Euler steps. Multiplying equation Eq. (24) by a test function i (x) and subsequently doing an integration by parts leads to the variational formulation (w h ; i ) + t (b(x)w h? "d(x)@ x w h x i ) = (w + rt; i ); (25) where (; ) denotes the usual L 2 inner product on (a; b). Since Eq. (25) is not completely symmetrized by the advection step because of the b{term, we have to choose a test space T h dierent from the trial space S h to stabilize Eq. (25). A theory for choosing an appropriate test space is given in Ref. 3. This consists in choosing a discrete test space that transforms the bilinear form Eq. (25) into an equivalent V-elliptic and symmetric bilinear form. Based on previous experience (e.g., Ref. 2) a good choice seems to be quadratic functions with support on [x i? ; x i+ ], i + c i?=2 i ; x 2 [x i? ; x i ] ; i(x) = i + c i+=2 i ; x 2 [x i ; x i+ ] ; where i (x) = (x? xi? )(x? x i )=x i ; x 2 [x i? ; x i ] ;?(x? x i )(x? x i+ )=x i+ ; x 2 [x i ; x i+ ] ; and Here, 2 c i?=2 = 3? coth i?=2 i?=2 2 : i?=2 = b i?=2x i "d i?=2 is the mesh Peclet number on element [x i? ; x i ], and b i?=2 and d i?=2 are average values over this element. Using the above notation, the nite-element approximation now reads Find w h (x) 2 S h so that Eq. (25) is satised for each i (x) 2 T h. Note that a mesh Peclet number has to be computed for each component of the velocity eld on each element.

183 TWO{PHASE FLUID{FLOW MODEL 23 ACKNOWLEDGEMENTS Hvistendahl Karlsen has been supported by VISTA, a research cooperation between the Norwegian Academy of Science and Letters and Den norske stats oljeselskap a.s. (Statoil). Lie has been supported by the Research Council of Norway under grant 555/4. REFERENCES. LeVeque, R. J.: Numerical Methods for Conservation Laws, Birkhauser Verlag, Basel (992). 2. Glimm, J., B. Lindquist, O. A. McBryan, B. Plohr, and S. Yaniv: \Front Tracking for Petroleum Reservoir Simulation," SPE Paper 2238, 4{ Bell, J. B., G. R. Shubin, and J. A. Trangenstein: \A Method for Reducing Numerical Dispersion in Two-Phase Black Oil Reservoir Simulation," J. Comp. Phys. 65, 7{6 (986). 4. Bell, J. B. and G. R. Shubin: \Higher-Order Godunov Methods for Reducing Numerical Dispersion in Reservoir Simulation," Eight SPE Symposium on Reservoir Simulation (985). 5. Bratvedt, F., K. Bratvedt, C. F. Buchholz, T. Gimse, H. Holden, L. Holden, and N. H. Risebro: \Frontline and Frontsim: Two Full Scale, Two-Phase, Black Oil Reservoir Simulators Based on Front Tracking," Surv. Math. Ind. 3, 85{25 (993). 6. Bratvedt, F., K. Bratvedt, C. F. Buchholz, T. Gimse, H. Holden, L. Holden, R. Olufsen, and N. H. Risebro: \Three-Dimensional Reservoir Simulation Based on Front Tracking," North Sea Oil and Gas Reser{ voirs{iii, Kluwer Academic Publishers (994) 247{ Dafermos, C. M.: \Polygonal Approximations of Solutions of the Initial Value Problem for a Conservation Law," J. Math. Anal. Appl. 38, 33{4 (972). 8. Holden, H., L. Holden, and R. Hegh-Krohn: \A Numerical Method for First Order Nonlinear Scalar Conservation Laws in One{Dimension," Comput. Math. Appl. 5, No. 6{8, 595{62 (988). 9. Beale, J. T. and A. Majda: \Rates of Convergence for Viscous Splitting of The Navier-Stokes Equations," Math. Comp. 37, No. 56, 243{259 (98).. Douglas, J. and T. F. Russell: \Numerical Methods for Convection Dominated Diusion Problems Based on Combining the Method of Charac-

184 24 HVISTENDAHL KARLSEN ET AL. teristics with Finite Element or Finite Dierence Procedures," SIAM J. Numer. Anal. 9, 87{885 (982).. Russell, T. F.: \Galerkin Time Stepping Along Characteristics for Burgers' Equation," Scientic Computing, R. Stepleman (ed.), IMACS, North-Holland (983) 83{ Ewing, R. E. and T. F. Russell: \Ecient Time Stepping Methods for Miscible Displacement Problems in Porous Media," SIAM J. Numer. Anal. 9, {67 (982). 3. Espedal, M. and R. E. Ewing: \Characteristic Petrov{Galerkin Subdomain Methods for Two-Phase Immiscible Flow," Comput. Methods Appl. Mech. Engrg. 64, 3{35 (987). 4. Ewing, R. E.: \Operator Splitting and Eulerian-Lagrangian Localized Adjoint Methods for Multiphase Flow," The Mathematics of Finite Elements and Applications VII MAFELAP, J. Whiteman (ed.), Academic Press, San Diego (99) 25{ Dawson, C. N.: \Godunov-Mixed Methods for Advective Flow Problems in One Space Dimension," SIAM J. Num. Anal. 28, No. 5, 282{39 (99). 6. Hvistendahl Karlsen, K. and N. H. Risebro: \An Operator Splitting Method for Nonlinear Convection-Diusion Equations," Numer. Math. 77, No. 3, 365{382 (997). 7. Hvistendahl Karlsen, K., K. Brusdal, H. K. Dahle, S. Evje, and K.{A. Lie: \The Corrected Operator Splitting Approach Applied to a Nonlinear Advection-Diusion Problem," Preprint, University of Bergen (997). 8. Burgers, J. M.: The Nonlinear Diusion Equation, Reidel, Dordrecht (974). 9. Scroggs, J. S.: \Shock-Layer Bounds for a Singularly Perturbed Equation," Quart. Appl. Math. 53, No. 3, 423{43 (995). 2. Dahle, H. K.: \Adaptive Characteristic Operator Splitting Techniques for Convection-Dominated Diusion Problems in One and Two Space Dimensions," Ph.D. dissertation, Dept. of Math., University of Bergen, Norway (988). 2. Hvistendahl Karlsen, K. and N. H. Risebro: \Corrected Operator Splitting for Nonlinear Parabolic Equations," Preprint, University of Bergen (997). 22. Chavent, G. and J. Jare: Mathematical Models and Finite Elements for Reservoir Simulation, North Holland, Amsterdam (986).

185 TWO{PHASE FLUID{FLOW MODEL Kruzkov, S. N. and S. M. Sukorjanski: \Boundary Value Problems for Systems of Equations of Two-Phase Porous Flow Type; Statment of the Problems, Questions of Sovability, Justication of Approximate Methods," Math. USSR Sbornik 33, No., 62{8 (977). 24. Schroll, H. J. and A. Tveito: \Local Existence and Stability for a Hyperbolic{Elliptic System Modeling Two{Phase Reservoir Flow," Preprint RWTH Aachen 36 (997). 25. Dahle, H. K., M. S. Espedal, and O. Svareid: \Characteristic, Local Grid Renement Techniques for Reservoir Flow Problems," Internat. J. Numer. Methods Engrg. 34, 5{69 (992). 26. Hvistendahl Karlsen, K. and K.{A. Lie: \An Unconditionally Stable Splitting Scheme for a Class of Nonlinear Parabolic Equations," Preprint, Institute of Mathematics and its Applications (IMA), University of Minnestota, Minneapolis, Minnesota (997). 27. Holden, H. and N. H. Risebro: \A Method of Fractional Steps for Scalar Conservation Laws without the CFL Condition," Math. Comp. 6, 22{ 232 (993). 28. Lie, K.{A., Vidar Haugse, and K. Hvistendahl Karlsen: \Dimensional Splitting with Front Tracking and Adaptive Grid Renement," Preprint (mathematics), Norwegian University of Science and Technology (996). 29. Hansen, R. and M. S. Espedal: \On the Numerical Solution of Nonlinear Reservoir Flow Models with Gravity," Internat. J. Numer. Methods Engrg. 38, 27{232 (995). 3. Oleinik, O. A.: \Discontinuous Solutions of Non-Linear Dierential Equations," Amer. Math. Soc. Transl. 26, 95{72 (963). 3. Barrett, J. W. and K. W. Morton: \Approximate Symmetrization and Petrov{Galerkin Methods for Diusion{Convection Problems," Comput. Methods Appl. Mech. Engrg. 45, 97{22 (984).

186

187 Paper VIII Front Tracking and Operator Splitting for Nonlinear Degenerate Convection{Diusion Equations Steinar Evje, Kenneth Hvistendahl Karlsen, Knut{Andreas Lie, and Nils Henrik Risebro

188

189 FRONT TRACKING AND OPERATOR SPLITTING FOR NONLINEAR DEGENERATE CONVECTION{DIFFUSION EQUATIONS S. EVJE, K. HVISTENDAHL KARLSEN, K.{A. LIE, AND N. H. RISEBRO Abstract. We describe two variants of an operator splitting strategy for nonlinear, possibly strongly degenerate, convection{diusion equations. The strategy is based on splitting the equations into a hyperbolic conservation law for convection and a possibly degenerate parabolic equation for diusion. The conservation law is solved by a front tracking method while the diusion equation is here solved by a nite dierence scheme. The numerical methods are unconditionally stable in the sense that the (splitting) time step is not restricted by the spatial discretization parameter. The strategy is designed to handle all combinations of convection and diusion (including the purely hyperbolic case). Two numerical examples are presented to highlight the features of the methods, and the potential for parallel implementation is discussed. (). Introduction We consider nonlinear convection{diusion equations of the t u + dx xi F i (x; u) = " dx 2 x i A i (x; u); x 2 R d ; t 2 h; T i; with initial data u(x; ) = u. Here u (x) is a bounded function of bounded total variation, F i and A i are suciently regular u A i is non-negative for all i. The small scaling parameter " > indicates convection dominated ow. When () is non-degenerate, that u A i > for all i, it is well known that the equation admits classical solutions. This contrasts with the case where () is allowed to degenerate for some values of u. The simplest examples are perhaps provided by the porous medium equation u t = "(u m ) xx, and the convective porous medium equation u t + (u n ) x = "(u m ) xx, which both degenerate at u = for n; m >. In general, a manifestation of degeneracy is the nite speed of propagation of disturbances. Thus, if at some xed time the solution u has compact support, then it will continue to have compact support for all later times. The transition from a region where u > to one where u = is not smooth and it is therefore necessary to deal with weak solutions rather than classical solutions. Key words and phrases. Degenerate convection{diusion equations, operator splitting, front tracking, nite dierence method, oil reservoir simulation. Karlsen has been supported by VISTA, a research cooperation between the Norwegian Academy of Science and Letters and Den norske stats oljeselskap a.s. (Statoil). Lie has been supported by the Research Council of Norway under grant 555/4.

190 2 EVJE, KARLSEN, LIE, AND RISEBRO We refer to the review papers [2, 5] and references cited therein for an overview of the mathematical theory of degenerate equations. If () is strongly degenerate, that u A i = for all u in an interval [; ] for some i, solutions can develop singularities in nite time. A striking feature of such equations is that weak solutions are not necessarily unique. Accordingly, one must require some admissibility criteria to single out the physically relevant weak solution. The viscosity criterion seeks weak solutions to () as the L limits of smooth solutions u to non-degenerate parabolic t u + dx xi F i (x; u ) = " dx 2 x i A i (x; u ) + dx 2 x i u ; as the parabolic regularization parameter > tends to zero. It turns out that this viscosity approach yields the following entropy admissibility criterion: We call a bounded measurable function u(x; t) an entropy weak solution of () if the (entropy) t ju? kj+ xi sgn(u? k)(fi (x; u)? F i (x; k))? " i= + sgn(u? k)(f ixi (x; k)? "A ixi x i (x; k)) dx 2 x i ja i (x; u)? A i (x; k)j holds in the distributional sense for all k 2 R. The notion of an entropy weak solution includes all the previously mentioned parabolic equations as well as hyperbolic conservation laws in the sense of Kruzkov [22]. It thus provides a suitable framework for analysing numerical methods that are especially designed to handle mixed type convection{diusion equations. We refer to Refs. [27, 28, 3] for theory of strongly degenerate equations. We shall here restrict ourselves to a class of equations in which R the functions F i and A i u have the form F i (x; u) = V i (x)f i (u) and A i (x; u) = A i (u) = a i() d for some bounded functions V i and a i. Equation () can then be rewritten as t u + dx i= V i (x)@ xi f i (u) = " dx xi (a i (u)@ xi u) + G(x; u); where G =? P i V i(x) xi f i (u). Our numerical strategy is essentially based on splitting (2) into a hyperbolic conservation law for convection and a parabolic equation for diusion (and source). We then try to reproduce the solution using numerical methods for these simpler equations as building blocks. Variations on this operator splitting approach have indeed been taken in various contexts, for instance for Navier{Stokes ow [2, 3, 3] and for ow in porous media [5, 7, 8,, 26]. An approach similar to the one we advocate here is that of Dawson et al. [6, 29], who employ a Godunov method for the convection step. The purpose of our paper is to continue and improve the work initiated recently by Karlsen et al. [7, 8, 9, 2], which is based on a front tracking method for the convection step and a nite element or a dierence method for the diusion step. All previous works have mainly focused on non-degenerate equations or special equations possessing a one or two point degeneracy. Recently Evje et al. [9, ] started investigating the convergence properties of splitting methods for strongly degenerate convection{diusion equations. In

191 OPERATOR SPLITTING FOR CONVECTION{DIFFUSION EQUATIONS 3 particular, a fully discrete splitting method for () was proposed and analysed in the companion paper []. In the current paper we demonstrate two versions of this splitting method that dier only in the way the dimensional splitting part is carried out. We will here rely on an explicit nite dierence scheme coupled with a super time stepping acceleration procedure [] for the diusive part. Two numerical examples are presented and discussed. In the rst example, the methods are used to compute discontinuous entropy solutions of a two-dimensional Burgers type equation with a strongly degenerate second order term. The second example is a parabolic{ elliptic system of equations describing two-phase ow of water and oil in an oil reservoir. A reason for using front tracking is that this method has no time step restriction. Accordingly, our splitting methods are unconditionally stable in the sense that the splitting time step is not limited by the spatial discretization parameter. Tests with CFL numbers varying in the range to 32 show that large CFL numbers are indeed feasible for the 2 problem in Example. For non-degenerate parabolic equations, viscous splitting errors introduced by using large time steps may lead to shock fronts that are too wide. For one of the methods, this potential problem is easy to overcome. In the second example we demonstrate a `correction' technique that substantially decreases the viscous error contribution and thus makes large splitting steps feasible. We then address the issue of parallel implementation of the methods. Idealised, both splitting methods are `perfect' for parallel implementation. However, given a certain architecture, there are important practical issues that have to be resolved. Our paper is organized as follows. In x2 we describe in detail our numerical methods. In x3 we present and discuss the numerical examples. Finally, in x4 we discuss parallel aspects of our methods. 2. The Numerical Algorithms Our splitting techniques result in two dierent equations that each must be solved numerically. Therefore, before we describe the splitting algorithms in more detail, we introduce numerical schemes for these two equations. 2.. The Hyperbolic Solver. Let us begin with front tracking for the convection part. Consider therefore the one-dimensional conservation law t v + V (x)@ x f(v) = ; v(x; ) = v (x); x 2 R; t > : In the front tracking approach, we seek approximations to (3) within the class of step functions. To this end, we approximate the initial data by a step function v h to decompose the initial value problem into a sequence of simple Riemann problems. By approximating the ux function by a piecewise linear function f, we ensure that the solution of each Riemann problem is a step function. The global solution until the rst wave interaction occurs thus consists of constant states separated by discontinuities propagating along paths x(t). Each path x(t) is given by the dierential equation _x = V (x)s, where s is the Rankine{Hugoniot speed (f (u L )? f (u R ))=(u L? u R ). If the velocity V is approximated

192 4 EVJE, KARLSEN, LIE, AND RISEBRO by either a piecewise constant or a piecewise linear function V, the dierential equations can be solved explicitly and the paths x(t) are given in closed form. So far, we have constructed a solution that is valid until the rst wave interaction occurs, but since the wave interaction merely denes a new Riemann problem, this and all future interactions can be resolved as above. In fact, it can be shown [3, 23] that there is a nite number of wave interactions, even in innite time, if the initial data is bounded and has nite total variation. Hence, tracking discontinuities and solving Riemann problems will take us up to any desired time t. In this approach, rarefaction waves are approximated by sequences of small shocks. Moreover, there is no time step associated with the method. Front tracking for V is described and analysed in detail by Holden et al. [3] and an error estimate is provided by Lucier [25]. Lie [23] extended the method to V = V (x; t). To solve multi-dimensional conservation laws of the t v + dx i= V i (x)@ xi f i (v) = ; v(x; ) = v (x); x 2 R d ; t > ; we use the above method combined with dimensional splitting. Introduce a uniform Cartesian grid with discretization parameter h > in each direction and a time step t >. Let be the usual grid cell averaging operator. The multi-dimensional front tracking solution, which is a piecewise constant function on the Cartesian grid, is then given by the following dimensional splitting formula v(x; nt) S x d;h t S x ;h t nv ; where S x i;h t denotes the front tracking operator at time t applied in the ith direction. Although a time step is associated with the multi-dimensional method, it is unconditionally stable in the sense that the time step is not restricted by a CFL condition. This contrasts strongly with typical dierence methods for conservation laws. Previous studies have shown that shock waves can advantageously be propagated using CFL numbers as high as {2 (see [24]). The multi-dimensional front tracking method is described and analysed by Holden and Risebro [4]. An error estimate is derived in Refs. [6, 24] The Parabolic Solver. The diusion step is realized by solving a nonlinear, possibly strongly degenerate, parabolic equation of the form t w = " dx xi (a i (w)@ xi w) + G(x; w); w(x; ) = w (x); x 2 R; t > : The dierence method uses a uniform Cartesian grid with grid cell size h > in each direction, and a time step k >. Let W n denote the nite dierence solution at time t = nk. Let?;i and +;i be the usual ith directional backward and forward dierence operators, respectively. Then we dene W n+ by the following dierence formula W n+ = " k h 2 dx i=?;i +;i A n i + kgn ; where A n i and G n have obvious meanings. To ensure stability we must choose h and k so that 2d"(k=h 2 ) max i;u ja i (u)j. The method is initiated by letting W = w. Note

193 OPERATOR SPLITTING FOR CONVECTION{DIFFUSION EQUATIONS 5 that we insist on working with the conservation form of (4) when dening the dierence method. Super Time Stepping Acceleration. Super time stepping (STS) is an ecient way to speed up explicit schemes for parabolic problems. The STS procedure relaxes the restrictive stability condition associated with the explicit scheme so that the resulting diusion solver runs at least as fast and is of comparable or better accuracy than the corresponding implicit diusion solver. The idea is quite simple, for more details see Alexiades et al. []. Let us consider the time dependent problem U _ + AU(t) =, U() = U discretized by the forward Euler method U n+ = U n? AU n ; U = U : This method is stable if the spectral radius (I? A) is less than unity, which is fullled if < e = 2= max, where max is the largest eigenvalue of A. We now introduce P a cycle of N intermediate time steps f i g N i= and a corresponding N superstep T = i= i. The stability requirement is then imposed on T rather than on. The new scheme becomes U n+ = (I? i A) U n ; U = U : N Y i= Q N The corresponding stability condition is ( (I? i= ia)) <. We then try to maximize the length of the superstep T such that T N e. It turns out that this is achieved if the i 's are given by the formula i = 2 (?? 2i? + ) cos N?; + + i = ; : : : ; N: 2 The parameters N and determine speedup in the acceleration. Note that N = and = corresponds to the standard explicit scheme. Since T tends to N 2 e as!, super stepping is up to N times faster than the standard explicit scheme. Moreover, the method is fairly robust with respect to the parameters, and no precise knowledge regarding the properties of A is needed when choosing N and. Although the method can only be justied theoretically for linear problems, it appears to be applicable to nonlinear problems as well, see Ref. []. This is also conrmed by numerical experiments in x The Splitting Techniques. From now on let h > and t > denote the spatial and temporal discretization parameters associated with our discrete splitting method. As above, let S x i;h t denote the front tracking solution operator associated with the onedimensional hyperbolic conservation law at time t v + V i (x)@ xi f i (v) = ; x i 2 R; t > : Similarly, let H x i;h t denote the nite dierence solution operator t w = "@ xi (a i (w)@ xi w) + G(x; w); x i 2 R; t >

194 6 EVJE, KARLSEN, LIE, AND RISEBRO and H x;h t the nite dierence solution operator t w = " dx xi (a i (w)@ xi u) + G(x; w); x 2 R d ; t > : We then introduce the following two operator splitting methods (5) u(x; nt) H x;h t Sx d;h t S x ;h nu t u n and (6) u(x; nt) H x d;h t S x d;h t H x ;h t S x ;h nu t u n : Henceforth the methods will be referred to as the unsplit (5) and the split (6) method respectively, due to their dierent treatment of the diusive forces. Various convergence results for these splitting methods in the framework of classical solutions can be found in Refs. [7, 9, 2]. In the framework of entropy weak solutions, similar results can be found in Evje et al. [9, ]. Let the sequence fu (x; t)g, = (h; t), be dened by u (x; t) = u n (x); for (x; t) 2 R d ((n? )t; nt); n = ; : : : ; N; where u n is given by (5) or (6) and nt = T. Then the following theorem holds []: Theorem 2.. There exists a subsequence fu j (x; t)g converging almost everywhere on R d h; T i to a bounded measurable function u(x; t). Moreover, the limit function u(x; t) is an entropy weak solution of the convection{diusion problem (). 3. Applications We now present and discuss two numerical examples. The rst example clearly demonstrates that our methods can handle equations with strongly degenerate diusion terms. The qualitative behaviour of solutions to degenerate parabolic equations is poorly understood, as opposed to hyperbolic conservation laws and non-degenerate parabolic equations. We here use our solution technique to construct a discontinuous entropy solution. The second example is a parabolic{elliptic system of partial dierential equations, which is used in the simulation of certain secondary oil recovery processes. The purpose is to demonstrate an application of our strategy to a realistic problem. Moreover, the example presents techniques for reducing viscous splitting errors, which unattended might have been a signicant drawback of our numerical strategy. The simulations below use relatively ne grids, which is not a prerequisite for our methods. In the rst example we simply seek high resolution when describing solutions qualitatively. In the second example we seek to eliminate most of the spatial error contribution and thus enhance the temporal splitting error, which is our main concern here.

195 OPERATOR SPLITTING FOR CONVECTION{DIFFUSION EQUATIONS 7 Degenerate diusion No diusion Linear diusion Figure. Solution at times t=.5 on a 2*2 grid. Example. (Strongly Degenerate Diusion). Consider the two-dimensional Burgers type t u x (u 2 ) y (u 2 ) = "@ x (a(u)@ x u) + "@ y (a(u)@ y u); where " = : and the diusion coecient is strongly degenerate ( ; for juj :25; a(u) = ; for juj > :25: The equation is therefore of hyperbolic nature when u 2 [?:25; :25] and parabolic elsewhere. The initial data is equal - and inside two circles of radius.4 centred at (:5; :5) and (?:5;?:5), respectively, and zero elsewhere inside the square [?:5; :5][?:5; :5]. The qualitative nature of the degenerate problem diers from the pure hyperbolic problem (a(u) ) and the non-degenerate parabolic problem (a(u) ). Figure shows a surface plot of the three solutions at time t = :5 on a ne grid and Figure 2 shows the development along the diagonal line x = y. The nonlinear ux function will cause the

Abstract. A front tracking method is used to construct weak solutions to

Abstract. A front tracking method is used to construct weak solutions to A Front Tracking Method for Conservation Laws with Boundary Conditions K. Hvistendahl Karlsen, K.{A. Lie, and N. H. Risebro Abstract. A front tracking method is used to construct weak solutions to scalar

More information

OPERATOR SPLITTING METHODS FOR SYSTEMS OF CONVECTION-DIFFUSION EQUATIONS: NONLINEAR ERROR MECHANISMS AND CORRECTION STRATEGIES

OPERATOR SPLITTING METHODS FOR SYSTEMS OF CONVECTION-DIFFUSION EQUATIONS: NONLINEAR ERROR MECHANISMS AND CORRECTION STRATEGIES OPERATOR SPLITTING METHODS FOR SYSTEMS OF CONVECTION-DIFFUSION EQUATIONS: NONLINEAR ERROR MECHANISMS AND CORRECTION STRATEGIES K. HVISTENDAHL KARLSEN a, K.{A. LIE b;c, J. R. NATVIG c, H. F. NORDHAUG a,

More information

A study of the modelling error in two operator splitting algorithms for porous media flow

A study of the modelling error in two operator splitting algorithms for porous media flow Computational Geosciences 2 (1998) 23 36 23 A study of the modelling error in two operator splitting algorithms for porous media flow K. Brusdal a,h.k.dahle a, K. Hvistendahl Karlsen a and T. Mannseth

More information

REPORT DOCUMENTATION PAGE

REPORT DOCUMENTATION PAGE REPORT DOCUMENTATION PAGE Form Approved OMB No. 0704-0188 The public reporting burden for this collection of information is estimated to average 1 hour per response, including the time for reviewing instructions,

More information

Pointwise convergence rate for nonlinear conservation. Eitan Tadmor and Tao Tang

Pointwise convergence rate for nonlinear conservation. Eitan Tadmor and Tao Tang Pointwise convergence rate for nonlinear conservation laws Eitan Tadmor and Tao Tang Abstract. We introduce a new method to obtain pointwise error estimates for vanishing viscosity and nite dierence approximations

More information

Mathematics Research Report No. MRR 003{96, HIGH RESOLUTION POTENTIAL FLOW METHODS IN OIL EXPLORATION Stephen Roberts 1 and Stephan Matthai 2 3rd Febr

Mathematics Research Report No. MRR 003{96, HIGH RESOLUTION POTENTIAL FLOW METHODS IN OIL EXPLORATION Stephen Roberts 1 and Stephan Matthai 2 3rd Febr HIGH RESOLUTION POTENTIAL FLOW METHODS IN OIL EXPLORATION Stephen Roberts and Stephan Matthai Mathematics Research Report No. MRR 003{96, Mathematics Research Report No. MRR 003{96, HIGH RESOLUTION POTENTIAL

More information

Advection / Hyperbolic PDEs. PHY 604: Computational Methods in Physics and Astrophysics II

Advection / Hyperbolic PDEs. PHY 604: Computational Methods in Physics and Astrophysics II Advection / Hyperbolic PDEs Notes In addition to the slides and code examples, my notes on PDEs with the finite-volume method are up online: https://github.com/open-astrophysics-bookshelf/numerical_exercises

More information

t x 0.25

t x 0.25 Journal of ELECTRICAL ENGINEERING, VOL. 52, NO. /s, 2, 48{52 COMPARISON OF BROYDEN AND NEWTON METHODS FOR SOLVING NONLINEAR PARABOLIC EQUATIONS Ivan Cimrak If the time discretization of a nonlinear parabolic

More information

On the solution of incompressible two-phase ow by a p-version discontinuous Galerkin method

On the solution of incompressible two-phase ow by a p-version discontinuous Galerkin method COMMUNICATIONS IN NUMERICAL METHODS IN ENGINEERING Commun. Numer. Meth. Engng 2006; 22:741 751 Published online 13 December 2005 in Wiley InterScience (www.interscience.wiley.com). DOI: 10.1002/cnm.846

More information

Riemann Solvers and Numerical Methods for Fluid Dynamics

Riemann Solvers and Numerical Methods for Fluid Dynamics Eleuterio R Toro Riemann Solvers and Numerical Methods for Fluid Dynamics A Practical Introduction With 223 Figures Springer Table of Contents Preface V 1. The Equations of Fluid Dynamics 1 1.1 The Euler

More information

Conjugate lter approach for shock capturing

Conjugate lter approach for shock capturing COMMUNICATIONS IN NUMERICAL METHODS IN ENGINEERING Commun. Numer. Meth. Engng 2003; 19:99 110 (DOI: 10.1002/cnm.573) Conjugate lter approach for shock capturing Yun Gu 1 1; 2; ; and G. W. Wei 1 Department

More information

ON SCALAR CONSERVATION LAWS WITH POINT SOURCE AND STEFAN DIEHL

ON SCALAR CONSERVATION LAWS WITH POINT SOURCE AND STEFAN DIEHL ON SCALAR CONSERVATION LAWS WITH POINT SOURCE AND DISCONTINUOUS FLUX FUNCTION STEFAN DIEHL Abstract. The conservation law studied is @u(x;t) + @ F u(x; t); x @t @x = s(t)(x), where u is a f(u); x > 0 concentration,

More information

A Very Brief Introduction to Conservation Laws

A Very Brief Introduction to Conservation Laws A Very Brief Introduction to Wen Shen Department of Mathematics, Penn State University Summer REU Tutorial, May 2013 Summer REU Tutorial, May 2013 1 / The derivation of conservation laws A conservation

More information

On the Cauchy Problems for Polymer Flooding with Gravitation

On the Cauchy Problems for Polymer Flooding with Gravitation On the Cauchy Problems for Polymer Flooding with Gravitation Wen Shen Mathematics Department, Penn State University. Email: wxs27@psu.edu November 5, 2015 Abstract We study two systems of conservation

More information

NUMERICAL SOLUTION OF HYPERBOLIC PARTIAL DIFFERENTIAL EQUATIONS

NUMERICAL SOLUTION OF HYPERBOLIC PARTIAL DIFFERENTIAL EQUATIONS NUMERICAL SOLUTION OF HYPERBOLIC PARTIAL DIFFERENTIAL EQUATIONS JOHN A. TRANGENSTEIN Department of Mathematics, Duke University Durham, NC 27708-0320 Ш CAMBRIDGE ЩР UNIVERSITY PRESS Contents 1 Introduction

More information

Introduction to Partial Differential Equations

Introduction to Partial Differential Equations Introduction to Partial Differential Equations Partial differential equations arise in a number of physical problems, such as fluid flow, heat transfer, solid mechanics and biological processes. These

More information

On the Cauchy Problems for Polymer Flooding with Gravitation

On the Cauchy Problems for Polymer Flooding with Gravitation On the Cauchy Problems for Polymer Flooding with Gravitation Wen Shen Mathematics Department, Penn State University Abstract We study two systems of conservation laws for polymer flooding in secondary

More information

2 In this paper, we give a brief summary of the front tracking algorithm for axisymmetric ow. We report simulations of spherical shock refraction by a

2 In this paper, we give a brief summary of the front tracking algorithm for axisymmetric ow. We report simulations of spherical shock refraction by a A Fast Algorithm for Moving Interface Problems S. Dutta 1,J.Glimm 1 2,J.W.Grove 3,D.H.Sharp 4, and Y. Zhang 1 1 Department of Applied Mathematics and Statistics, University at Stony Brook, Stony Brook,

More information

Blowup for Hyperbolic Equations. Helge Kristian Jenssen and Carlo Sinestrari

Blowup for Hyperbolic Equations. Helge Kristian Jenssen and Carlo Sinestrari Blowup for Hyperbolic Equations Helge Kristian Jenssen and Carlo Sinestrari Abstract. We consider dierent situations of blowup in sup-norm for hyperbolic equations. For scalar conservation laws with a

More information

Entropy stable schemes for degenerate convection-diffusion equations

Entropy stable schemes for degenerate convection-diffusion equations Entropy stable schemes for degenerate convection-diffusion equations Silvia Jerez 1 Carlos Parés 2 ModCompShock, Paris 6-8 Decmber 216 1 CIMAT, Guanajuato, Mexico. 2 University of Malaga, Málaga, Spain.

More information

A FRONT-TRACKING METHOD FOR HYPERBOLIC THREE-PHASE MODELS

A FRONT-TRACKING METHOD FOR HYPERBOLIC THREE-PHASE MODELS A FRONT-TRACKING METHOD FOR HYPERBOLIC THREE-PHASE MODELS Ruben Juanes 1 and Knut-Andreas Lie 2 1 Stanford University, Dept. Petroleum Engineering, USA 2 SINTEF IKT, Dept., Norway ECMOR IX, August 30 September

More information

A Finite Volume Code for 1D Gas Dynamics

A Finite Volume Code for 1D Gas Dynamics A Finite Volume Code for 1D Gas Dynamics Michael Lavell Department of Applied Mathematics and Statistics 1 Introduction A finite volume code is constructed to solve conservative systems, such as Euler

More information

High-resolution finite volume methods for hyperbolic PDEs on manifolds

High-resolution finite volume methods for hyperbolic PDEs on manifolds High-resolution finite volume methods for hyperbolic PDEs on manifolds Randall J. LeVeque Department of Applied Mathematics University of Washington Supported in part by NSF, DOE Overview High-resolution

More information

Inlet Grid Block! Standard Grid Blocks Outlet Grid Point r Center of Rotation Equilibrium Grid Point Outlet Grid Block Figure 1 The Finite Dierence Gr

Inlet Grid Block! Standard Grid Blocks Outlet Grid Point r Center of Rotation Equilibrium Grid Point Outlet Grid Block Figure 1 The Finite Dierence Gr THE CONSTANTLY-ACCELERATING CENTRIFUGE REVISITED by Douglas Ruth University ofmanitoba Winnipeg, Manitoba, Canada Abstract SCA9812 In 1963, Homan described the use of a constantly-accelerating centrifuge

More information

A New Fourth-Order Non-Oscillatory Central Scheme For Hyperbolic Conservation Laws

A New Fourth-Order Non-Oscillatory Central Scheme For Hyperbolic Conservation Laws A New Fourth-Order Non-Oscillatory Central Scheme For Hyperbolic Conservation Laws A. A. I. Peer a,, A. Gopaul a, M. Z. Dauhoo a, M. Bhuruth a, a Department of Mathematics, University of Mauritius, Reduit,

More information

The one-dimensional equations for the fluid dynamics of a gas can be written in conservation form as follows:

The one-dimensional equations for the fluid dynamics of a gas can be written in conservation form as follows: Topic 7 Fluid Dynamics Lecture The Riemann Problem and Shock Tube Problem A simple one dimensional model of a gas was introduced by G.A. Sod, J. Computational Physics 7, 1 (1978), to test various algorithms

More information

The RAMSES code and related techniques I. Hydro solvers

The RAMSES code and related techniques I. Hydro solvers The RAMSES code and related techniques I. Hydro solvers Outline - The Euler equations - Systems of conservation laws - The Riemann problem - The Godunov Method - Riemann solvers - 2D Godunov schemes -

More information

Notes: Outline. Shock formation. Notes: Notes: Shocks in traffic flow

Notes: Outline. Shock formation. Notes: Notes: Shocks in traffic flow Outline Scalar nonlinear conservation laws Traffic flow Shocks and rarefaction waves Burgers equation Rankine-Hugoniot conditions Importance of conservation form Weak solutions Reading: Chapter, 2 R.J.

More information

Finite Volume Schemes: an introduction

Finite Volume Schemes: an introduction Finite Volume Schemes: an introduction First lecture Annamaria Mazzia Dipartimento di Metodi e Modelli Matematici per le Scienze Applicate Università di Padova mazzia@dmsa.unipd.it Scuola di dottorato

More information

k=6, t=100π, solid line: exact solution; dashed line / squares: numerical solution

k=6, t=100π, solid line: exact solution; dashed line / squares: numerical solution DIFFERENT FORMULATIONS OF THE DISCONTINUOUS GALERKIN METHOD FOR THE VISCOUS TERMS CHI-WANG SHU y Abstract. Discontinuous Galerkin method is a nite element method using completely discontinuous piecewise

More information

Hydraulic Modelling for Drilling Automation

Hydraulic Modelling for Drilling Automation Hydraulic Modelling for Drilling Automation CASA Day Harshit Bansal April 19, 2017 Where innovation starts Team: Supervisors at TU/e : W.H.A. Schilders, N. van de Wouw, B. Koren, L. Iapichino Collaborators:

More information

2 Introduction Standard conservative schemes will admit non-physical oscillations near material interfaces, which can be avoided by the application of

2 Introduction Standard conservative schemes will admit non-physical oscillations near material interfaces, which can be avoided by the application of A Conservative Approach to the Multiphase Euler Equations without Spurious Pressure Oscillations Xu-Dong Liu Ronald P. Fedkiw Stanley Osher June 8, 998 Abstract In [4], the pressure evolution equation

More information

PDE Solvers for Fluid Flow

PDE Solvers for Fluid Flow PDE Solvers for Fluid Flow issues and algorithms for the Streaming Supercomputer Eran Guendelman February 5, 2002 Topics Equations for incompressible fluid flow 3 model PDEs: Hyperbolic, Elliptic, Parabolic

More information

Non-linear Scalar Equations

Non-linear Scalar Equations Non-linear Scalar Equations Professor Dr. E F Toro Laboratory of Applied Mathematics University of Trento, Italy eleuterio.toro@unitn.it http://www.ing.unitn.it/toro August 24, 2014 1 / 44 Overview Here

More information

On the Front-Tracking Algorithm

On the Front-Tracking Algorithm JOURNAL OF MATHEMATICAL ANALYSIS AND APPLICATIONS 7, 395404 998 ARTICLE NO. AY97575 On the Front-Tracking Algorithm Paolo Baiti S.I.S.S.A., Via Beirut 4, Trieste 3404, Italy and Helge Kristian Jenssen

More information

Convex ENO High Order Multi-dimensional Schemes Without Field by Field Decomposition or Staggered Grids Xu-Dong Liu Stanley Osher y June 8, 1997 Runni

Convex ENO High Order Multi-dimensional Schemes Without Field by Field Decomposition or Staggered Grids Xu-Dong Liu Stanley Osher y June 8, 1997 Runni Convex ENO High Order Multi-dimensional Schemes Without Field by Field Decomposition or Staggered Grids Xu-Dong Liu Stanley Osher y June 8, 997 Running head: Convex ENO Schemes Proofs sent to: Xu-Dong

More information

CHAPTER 7 SEVERAL FORMS OF THE EQUATIONS OF MOTION

CHAPTER 7 SEVERAL FORMS OF THE EQUATIONS OF MOTION CHAPTER 7 SEVERAL FORMS OF THE EQUATIONS OF MOTION 7.1 THE NAVIER-STOKES EQUATIONS Under the assumption of a Newtonian stress-rate-of-strain constitutive equation and a linear, thermally conductive medium,

More information

PARALLEL PSEUDO-SPECTRAL SIMULATIONS OF NONLINEAR VISCOUS FINGERING IN MIS- Center for Parallel Computations, COPPE / Federal University of Rio de

PARALLEL PSEUDO-SPECTRAL SIMULATIONS OF NONLINEAR VISCOUS FINGERING IN MIS- Center for Parallel Computations, COPPE / Federal University of Rio de PARALLEL PSEUDO-SPECTRAL SIMULATIONS OF NONLINEAR VISCOUS FINGERING IN MIS- CIBLE DISPLACEMENTS N. Mangiavacchi, A.L.G.A. Coutinho, N.F.F. Ebecken Center for Parallel Computations, COPPE / Federal University

More information

Numerical Solutions for Hyperbolic Systems of Conservation Laws: from Godunov Method to Adaptive Mesh Refinement

Numerical Solutions for Hyperbolic Systems of Conservation Laws: from Godunov Method to Adaptive Mesh Refinement Numerical Solutions for Hyperbolic Systems of Conservation Laws: from Godunov Method to Adaptive Mesh Refinement Romain Teyssier CEA Saclay Romain Teyssier 1 Outline - Euler equations, MHD, waves, hyperbolic

More information

Direct numerical simulation of compressible multi-phase ow with a pressure-based method

Direct numerical simulation of compressible multi-phase ow with a pressure-based method Seventh International Conference on Computational Fluid Dynamics (ICCFD7), Big Island, Hawaii, July 9-13, 2012 ICCFD7-2902 Direct numerical simulation of compressible multi-phase ow with a pressure-based

More information

Chp 4: Non-linear Conservation Laws; the Scalar Case. By Prof. Dinshaw S. Balsara

Chp 4: Non-linear Conservation Laws; the Scalar Case. By Prof. Dinshaw S. Balsara Chp 4: Non-linear Conservation Laws; the Scalar Case By Prof. Dinshaw S. Balsara 1 4.1) Introduction We have seen that monotonicity preserving reconstruction and iemann solvers are essential building blocks

More information

Two Phase Transport in Porous Media

Two Phase Transport in Porous Media Two Phase Transport in Porous Media Lloyd Bridge Iain Moyles Brian Wetton Mathematics Department University of British Columbia www.math.ubc.ca/ wetton CRM CAMP Seminar, October 19, 2011 Overview Two phase

More information

Équation de Burgers avec particule ponctuelle

Équation de Burgers avec particule ponctuelle Équation de Burgers avec particule ponctuelle Nicolas Seguin Laboratoire J.-L. Lions, UPMC Paris 6, France 7 juin 2010 En collaboration avec B. Andreianov, F. Lagoutière et T. Takahashi Nicolas Seguin

More information

The Center for Astrophysical Thermonuclear Flashes. FLASH Hydrodynamics

The Center for Astrophysical Thermonuclear Flashes. FLASH Hydrodynamics The Center for Astrophysical Thermonuclear Flashes FLASH Hydrodynamics Jonathan Dursi (CITA), Alan Calder (FLASH) B. Fryxell, T. Linde, A. Mignone, G. Wiers Many others! Mar 23, 2005 An Advanced Simulation

More information

Source Free Surface x

Source Free Surface x Finite-dierence time-domain model for elastic waves in the ground Christoph T. Schroeder and Waymond R. Scott, Jr. School of Electrical and Computer Engineering Georgia Institute of Technology Atlanta,

More information

Part 1. The diffusion equation

Part 1. The diffusion equation Differential Equations FMNN10 Graded Project #3 c G Söderlind 2016 2017 Published 2017-11-27. Instruction in computer lab 2017-11-30/2017-12-06/07. Project due date: Monday 2017-12-11 at 12:00:00. Goals.

More information

Entropic Schemes for Conservation Laws

Entropic Schemes for Conservation Laws CONSTRUCTVE FUNCTON THEORY, Varna 2002 (B. Bojanov, Ed.), DARBA, Sofia, 2002, pp. 1-6. Entropic Schemes for Conservation Laws Bojan Popov A new class of Godunov-type numerical methods (called here entropic)

More information

Chapter 1. Introduction

Chapter 1. Introduction Chapter 1 Introduction Many astrophysical scenarios are modeled using the field equations of fluid dynamics. Fluids are generally challenging systems to describe analytically, as they form a nonlinear

More information

Partial differential equations

Partial differential equations Partial differential equations Many problems in science involve the evolution of quantities not only in time but also in space (this is the most common situation)! We will call partial differential equation

More information

A MULTIGRID ALGORITHM FOR. Richard E. Ewing and Jian Shen. Institute for Scientic Computation. Texas A&M University. College Station, Texas SUMMARY

A MULTIGRID ALGORITHM FOR. Richard E. Ewing and Jian Shen. Institute for Scientic Computation. Texas A&M University. College Station, Texas SUMMARY A MULTIGRID ALGORITHM FOR THE CELL-CENTERED FINITE DIFFERENCE SCHEME Richard E. Ewing and Jian Shen Institute for Scientic Computation Texas A&M University College Station, Texas SUMMARY In this article,

More information

High Order Accurate Runge Kutta Nodal Discontinuous Galerkin Method for Numerical Solution of Linear Convection Equation

High Order Accurate Runge Kutta Nodal Discontinuous Galerkin Method for Numerical Solution of Linear Convection Equation High Order Accurate Runge Kutta Nodal Discontinuous Galerkin Method for Numerical Solution of Linear Convection Equation Faheem Ahmed, Fareed Ahmed, Yongheng Guo, Yong Yang Abstract This paper deals with

More information

Relaxation methods and finite element schemes for the equations of visco-elastodynamics. Chiara Simeoni

Relaxation methods and finite element schemes for the equations of visco-elastodynamics. Chiara Simeoni Relaxation methods and finite element schemes for the equations of visco-elastodynamics Chiara Simeoni Department of Information Engineering, Computer Science and Mathematics University of L Aquila (Italy)

More information

Transport Upscaling in Porous Media

Transport Upscaling in Porous Media Transport Upscaling in Porous Media Master of Science Thesis Renewable Energy Anette Nedreli Department of Geophysics University of Bergen June 2, 2014 i Acknowledgments First of all I would like to thank

More information

Computational Astrophysics

Computational Astrophysics 16 th Chris Engelbrecht Summer School, January 2005 3: 1 Computational Astrophysics Lecture 3: Magnetic fields Paul Ricker University of Illinois at Urbana-Champaign National Center for Supercomputing

More information

Computational challenges in Numerical Weather Prediction

Computational challenges in Numerical Weather Prediction Computational challenges in Numerical Weather Prediction Mike Cullen Oxford 15 September 2008 Contents This presentation covers the following areas Historical background Current challenges Why does it

More information

The Hopf equation. The Hopf equation A toy model of fluid mechanics

The Hopf equation. The Hopf equation A toy model of fluid mechanics The Hopf equation A toy model of fluid mechanics 1. Main physical features Mathematical description of a continuous medium At the microscopic level, a fluid is a collection of interacting particles (Van

More information

ANALYSIS OF A COMPOSITIONAL MODEL FOR FLUID FLOW IN POROUS MEDIA ZHANGXIN CHEN, GUAN QIN, AND RICHARD E. EWING

ANALYSIS OF A COMPOSITIONAL MODEL FOR FLUID FLOW IN POROUS MEDIA ZHANGXIN CHEN, GUAN QIN, AND RICHARD E. EWING ANALYSIS OF A COMPOSITIONAL MODEL FOR FLUID FLOW IN POROUS MEDIA ZHANGXIN CHEN, GUAN QIN, AND RICHARD E. EWING Abstract. In this paper we consider a compositional model for three-phase multicomponent uid

More information

Diffusion / Parabolic Equations. PHY 688: Numerical Methods for (Astro)Physics

Diffusion / Parabolic Equations. PHY 688: Numerical Methods for (Astro)Physics Diffusion / Parabolic Equations Summary of PDEs (so far...) Hyperbolic Think: advection Real, finite speed(s) at which information propagates carries changes in the solution Second-order explicit methods

More information

1e N

1e N Spectral schemes on triangular elements by Wilhelm Heinrichs and Birgit I. Loch Abstract The Poisson problem with homogeneous Dirichlet boundary conditions is considered on a triangle. The mapping between

More information

n i,j+1/2 q i,j * qi+1,j * S i+1/2,j

n i,j+1/2 q i,j * qi+1,j * S i+1/2,j Helsinki University of Technology CFD-group/ The Laboratory of Applied Thermodynamics MEMO No CFD/TERMO-5-97 DATE: December 9,997 TITLE A comparison of complete vs. simplied viscous terms in boundary layer

More information

Hyperbolic Conservation Laws Past and Future

Hyperbolic Conservation Laws Past and Future Hyperbolic Conservation Laws Past and Future Barbara Lee Keyfitz Fields Institute and University of Houston bkeyfitz@fields.utoronto.ca Research supported by the US Department of Energy, National Science

More information

CapSel Roe Roe solver.

CapSel Roe Roe solver. CapSel Roe - 01 Roe solver keppens@rijnh.nl modern high resolution, shock-capturing schemes for Euler capitalize on known solution of the Riemann problem originally developed by Godunov always use conservative

More information

Applications of the compensated compactness method on hyperbolic conservation systems

Applications of the compensated compactness method on hyperbolic conservation systems Applications of the compensated compactness method on hyperbolic conservation systems Yunguang Lu Department of Mathematics National University of Colombia e-mail:ylu@unal.edu.co ALAMMI 2009 In this talk,

More information

Heat and Mass Transfer over Cooled Horizontal Tubes 333 x-component of the velocity: y2 u = g sin x y : (4) r 2 The y-component of the velocity eld is

Heat and Mass Transfer over Cooled Horizontal Tubes 333 x-component of the velocity: y2 u = g sin x y : (4) r 2 The y-component of the velocity eld is Scientia Iranica, Vol., No. 4, pp 332{338 c Sharif University of Technology, October 2004 Vapor Absorption into Liquid Films Flowing over a Column of Cooled Horizontal Tubes B. Farhanieh and F. Babadi

More information

A general theory of discrete ltering. for LES in complex geometry. By Oleg V. Vasilyev AND Thomas S. Lund

A general theory of discrete ltering. for LES in complex geometry. By Oleg V. Vasilyev AND Thomas S. Lund Center for Turbulence Research Annual Research Briefs 997 67 A general theory of discrete ltering for ES in complex geometry By Oleg V. Vasilyev AND Thomas S. und. Motivation and objectives In large eddy

More information

To wifey......hubby. c Copyright 1999 by Roderick Panko Batycky ii

To wifey......hubby. c Copyright 1999 by Roderick Panko Batycky ii A THREE-DIMENSIONAL TWO-PHASE FIELD SCALE STREAMLINE SIMULATOR a dissertation submitted to the department of petroleum engineering and the committee on graduate studies of stanford university in partial

More information

Spurious Chaotic Solutions of Dierential. Equations. Sigitas Keras. September Department of Applied Mathematics and Theoretical Physics

Spurious Chaotic Solutions of Dierential. Equations. Sigitas Keras. September Department of Applied Mathematics and Theoretical Physics UNIVERSITY OF CAMBRIDGE Numerical Analysis Reports Spurious Chaotic Solutions of Dierential Equations Sigitas Keras DAMTP 994/NA6 September 994 Department of Applied Mathematics and Theoretical Physics

More information

Anisotropic grid-based formulas. for subgrid-scale models. By G.-H. Cottet 1 AND A. A. Wray

Anisotropic grid-based formulas. for subgrid-scale models. By G.-H. Cottet 1 AND A. A. Wray Center for Turbulence Research Annual Research Briefs 1997 113 Anisotropic grid-based formulas for subgrid-scale models By G.-H. Cottet 1 AND A. A. Wray 1. Motivations and objectives Anisotropic subgrid-scale

More information

uy Chavent, Jer^ome Jare and Sophie Jegou-Jan The generalized Darcy law says that for each phase the Darcy velocity is proportional to the gradient of

uy Chavent, Jer^ome Jare and Sophie Jegou-Jan The generalized Darcy law says that for each phase the Darcy velocity is proportional to the gradient of Estimation of Relative Permeabilities in Three-Phase Flow in Porous Media uy Chavent 1;2, Jer^ome Jare 2 and Sophie Jan-Jegou 3 1. Universite Paris-Dauphine, CEREMADE, Paris, France 2. INRIA-Rocquencourt,

More information

FDM for wave equations

FDM for wave equations FDM for wave equations Consider the second order wave equation Some properties Existence & Uniqueness Wave speed finite!!! Dependence region Analytical solution in 1D Finite difference discretization Finite

More information

MIT (Spring 2014)

MIT (Spring 2014) 18.311 MIT (Spring 014) Rodolfo R. Rosales May 6, 014. Problem Set # 08. Due: Last day of lectures. IMPORTANT: Turn in the regular and the special problems stapled in two SEPARATE packages. Print your

More information

Dedicated to the 70th birthday of Professor Lin Qun

Dedicated to the 70th birthday of Professor Lin Qun Journal of Computational Mathematics, Vol.4, No.3, 6, 39 5. ANTI-DIFFUSIVE FINITE DIFFERENCE WENO METHODS FOR SHALLOW WATER WITH TRANSPORT OF POLLUTANT ) Zhengfu Xu (Department of Mathematics, Pennsylvania

More information

Numerical methods for conservation laws with a stochastically driven flux

Numerical methods for conservation laws with a stochastically driven flux Numerical methods for conservation laws with a stochastically driven flux Håkon Hoel, Kenneth Karlsen, Nils Henrik Risebro, Erlend Briseid Storrøsten Department of Mathematics, University of Oslo, Norway

More information

PARAMETER IDENTIFICATION IN THE FREQUENCY DOMAIN. H.T. Banks and Yun Wang. Center for Research in Scientic Computation

PARAMETER IDENTIFICATION IN THE FREQUENCY DOMAIN. H.T. Banks and Yun Wang. Center for Research in Scientic Computation PARAMETER IDENTIFICATION IN THE FREQUENCY DOMAIN H.T. Banks and Yun Wang Center for Research in Scientic Computation North Carolina State University Raleigh, NC 7695-805 Revised: March 1993 Abstract In

More information

Global Riemann Solver and Front Tracking Approximation of Three-Component Gas Floods

Global Riemann Solver and Front Tracking Approximation of Three-Component Gas Floods Global Riemann Solver and Front Tracking Approximation of Three-Component Gas Floods Saeid Khorsandi (1), Wen Shen (2) and Russell T. Johns (3) (1) Department of Energy and Mineral Engineering, Penn State

More information

Linear Regression and Its Applications

Linear Regression and Its Applications Linear Regression and Its Applications Predrag Radivojac October 13, 2014 Given a data set D = {(x i, y i )} n the objective is to learn the relationship between features and the target. We usually start

More information

Numerical schemes for short wave long wave interaction equations

Numerical schemes for short wave long wave interaction equations Numerical schemes for short wave long wave interaction equations Paulo Amorim Mário Figueira CMAF - Université de Lisbonne LJLL - Séminaire Fluides Compréssibles, 29 novembre 21 Paulo Amorim (CMAF - U.

More information

On modeling pressure diusion. in non-homogeneous shear ows. By A. O. Demuren, 1 M. M. Rogers, 2 P. Durbin 3 AND S. K. Lele 3

On modeling pressure diusion. in non-homogeneous shear ows. By A. O. Demuren, 1 M. M. Rogers, 2 P. Durbin 3 AND S. K. Lele 3 Center for Turbulence Research Proceedings of the Summer Program 1996 63 On modeling pressure diusion in non-homogeneous shear ows By A. O. Demuren, 1 M. M. Rogers, 2 P. Durbin 3 AND S. K. Lele 3 New models

More information

Applied Mathematics 505b January 22, Today Denitions, survey of applications. Denition A PDE is an equation of the form F x 1 ;x 2 ::::;x n ;~u

Applied Mathematics 505b January 22, Today Denitions, survey of applications. Denition A PDE is an equation of the form F x 1 ;x 2 ::::;x n ;~u Applied Mathematics 505b January 22, 1998 1 Applied Mathematics 505b Partial Dierential Equations January 22, 1998 Text: Sobolev, Partial Dierentail Equations of Mathematical Physics available at bookstore

More information

Rening the submesh strategy in the two-level nite element method: application to the advection diusion equation

Rening the submesh strategy in the two-level nite element method: application to the advection diusion equation INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN FLUIDS Int. J. Numer. Meth. Fluids 2002; 39:161 187 (DOI: 10.1002/d.219) Rening the submesh strategy in the two-level nite element method: application to

More information

Convergence of an immersed interface upwind scheme for linear advection equations with piecewise constant coefficients I: L 1 -error estimates

Convergence of an immersed interface upwind scheme for linear advection equations with piecewise constant coefficients I: L 1 -error estimates Convergence of an immersed interface upwind scheme for linear advection equations with piecewise constant coefficients I: L 1 -error estimates Xin Wen and Shi Jin Abstract We study the L 1 -error estimates

More information

H. L. Atkins* NASA Langley Research Center. Hampton, VA either limiters or added dissipation when applied to

H. L. Atkins* NASA Langley Research Center. Hampton, VA either limiters or added dissipation when applied to Local Analysis of Shock Capturing Using Discontinuous Galerkin Methodology H. L. Atkins* NASA Langley Research Center Hampton, A 68- Abstract The compact form of the discontinuous Galerkin method allows

More information

M. HERTY, CH. JÖRRES, AND B. PICCOLI

M. HERTY, CH. JÖRRES, AND B. PICCOLI EXISTENCE OF SOLUTION TO SUPPLY CHAIN MODELS BASED ON PARTIAL DIFFERENTIAL EQUATION WITH DISCONTINUOUS FLUX FUNCTION M. HERTY, CH. JÖRRES, AND B. PICCOLI Abstract. We consider a recently [2] proposed model

More information

A GENERALIZED CONVECTION-DIFFUSION MODEL FOR SUBGRID TRANSPORT IN POROUS MEDIA

A GENERALIZED CONVECTION-DIFFUSION MODEL FOR SUBGRID TRANSPORT IN POROUS MEDIA MULTISCALE MODEL. SIMUL. Vol. 1, No. 3, pp. 504 526 c 2003 Society for Industrial and Applied Mathematics A GENERALIZED CONVECTION-DIFFUSION MODEL FOR SUBGRID TRANSPORT IN POROUS MEDIA Y. EFENDIEV AND

More information

2 Multidimensional Hyperbolic Problemss where A(u) =f u (u) B(u) =g u (u): (7.1.1c) Multidimensional nite dierence schemes can be simple extensions of

2 Multidimensional Hyperbolic Problemss where A(u) =f u (u) B(u) =g u (u): (7.1.1c) Multidimensional nite dierence schemes can be simple extensions of Chapter 7 Multidimensional Hyperbolic Problems 7.1 Split and Unsplit Dierence Methods Our study of multidimensional parabolic problems in Chapter 5 has laid most of the groundwork for our present task

More information

ICES REPORT A Multilevel-WENO Technique for Solving Nonlinear Conservation Laws

ICES REPORT A Multilevel-WENO Technique for Solving Nonlinear Conservation Laws ICES REPORT 7- August 7 A Multilevel-WENO Technique for Solving Nonlinear Conservation Laws by Todd Arbogast, Chieh-Sen Huang, and Xikai Zhao The Institute for Computational Engineering and Sciences The

More information

2 Introduction T(,t) = = L Figure..: Geometry of the prismatical rod of Eample... T = u(,t) = L T Figure..2: Geometry of the taut string of Eample..2.

2 Introduction T(,t) = = L Figure..: Geometry of the prismatical rod of Eample... T = u(,t) = L T Figure..2: Geometry of the taut string of Eample..2. Chapter Introduction. Problems Leading to Partial Dierential Equations Many problems in science and engineering are modeled and analyzed using systems of partial dierential equations. Realistic models

More information

Numerical Solution of the Six-Equation Two-Phase Single Velocity Model with Finite Relaxation

Numerical Solution of the Six-Equation Two-Phase Single Velocity Model with Finite Relaxation Numerical Solution of the Six-Equation Two-Phase Single Velocity Model with Finite Relaxation Sigbjørn Løland Bore Applied Physics, NTNU December 19, 214 Abstract In this report we investigate a recently

More information

An Optimal Finite Element Mesh for Elastostatic Structural. Analysis Problems. P.K. Jimack. University of Leeds. Leeds LS2 9JT, UK.

An Optimal Finite Element Mesh for Elastostatic Structural. Analysis Problems. P.K. Jimack. University of Leeds. Leeds LS2 9JT, UK. An Optimal Finite Element Mesh for Elastostatic Structural Analysis Problems P.K. Jimack School of Computer Studies University of Leeds Leeds LS2 9JT, UK Abstract This paper investigates the adaptive solution

More information

Instability of Finite Difference Schemes for Hyperbolic Conservation Laws

Instability of Finite Difference Schemes for Hyperbolic Conservation Laws Instability of Finite Difference Schemes for Hyperbolic Conservation Laws Alberto Bressan ( ), Paolo Baiti ( ) and Helge Kristian Jenssen ( ) ( ) Department of Mathematics, Penn State University, University

More information

The Riemann problem. The Riemann problem Rarefaction waves and shock waves

The Riemann problem. The Riemann problem Rarefaction waves and shock waves The Riemann problem Rarefaction waves and shock waves 1. An illuminating example A Heaviside function as initial datum Solving the Riemann problem for the Hopf equation consists in describing the solutions

More information

FLUX IDENTIFICATION IN CONSERVATION LAWS 2 It is quite natural to formulate this problem more or less like an optimal control problem: for any functio

FLUX IDENTIFICATION IN CONSERVATION LAWS 2 It is quite natural to formulate this problem more or less like an optimal control problem: for any functio CONVERGENCE RESULTS FOR THE FLUX IDENTIFICATION IN A SCALAR CONSERVATION LAW FRANCOIS JAMES y AND MAURICIO SEP ULVEDA z Abstract. Here we study an inverse problem for a quasilinear hyperbolic equation.

More information

MATHEMATICAL ASPECTS OF NUMERICAL SOLUTION OF HYPERBOLIC SYSTEMS

MATHEMATICAL ASPECTS OF NUMERICAL SOLUTION OF HYPERBOLIC SYSTEMS K CHAPMAN & HALL/CRC Monographs and Surveys in Pure and Applied Mathematics I 18 MATHEMATICAL ASPECTS OF NUMERICAL SOLUTION OF HYPERBOLIC SYSTEMS ANDREI G. KULIKOVSKII NIKOLAI V. POGORELOV ANDREI YU. SEMENOV

More information

Gas Dynamics Equations: Computation

Gas Dynamics Equations: Computation Title: Name: Affil./Addr.: Gas Dynamics Equations: Computation Gui-Qiang G. Chen Mathematical Institute, University of Oxford 24 29 St Giles, Oxford, OX1 3LB, United Kingdom Homepage: http://people.maths.ox.ac.uk/chengq/

More information

On efficient implicit upwind schemes

On efficient implicit upwind schemes On efficient implicit upwind schemes Jostein R. Natvig Knut Andreas Lie June 30, 2008 Abstract Although many advanced methods have been devised for the hyperbolic transport problems that arise in reservoir

More information

ERROR BOUNDS FOR THE METHODS OF GLIMM, GODUNOV AND LEVEQUE BRADLEY J. LUCIER*

ERROR BOUNDS FOR THE METHODS OF GLIMM, GODUNOV AND LEVEQUE BRADLEY J. LUCIER* EO BOUNDS FO THE METHODS OF GLIMM, GODUNOV AND LEVEQUE BADLEY J. LUCIE* Abstract. Te expected error in L ) attimet for Glimm s sceme wen applied to a scalar conservation law is bounded by + 2 ) ) /2 T

More information

Clawpack Tutorial Part I

Clawpack Tutorial Part I Clawpack Tutorial Part I Randall J. LeVeque Applied Mathematics University of Washington Conservation Laws Package www.clawpack.org (pdf s will be posted and green links can be clicked) Some collaborators

More information

Computational Fluid Dynamics. PHY 688: Numerical Methods for (Astro)Physics

Computational Fluid Dynamics. PHY 688: Numerical Methods for (Astro)Physics Computational Fluid Dynamics Hydrodynamics When we discussed PDEs, we focused so far on scalar PDEs Often we wish to study systems of PDEs. Here we'll look at the equations of hydrodynamics Nonlinear system

More information

Scenario H Scenario G1. Curvature, non int. Curvature, int. Sensitivity, non int. Sensitivity, int. Legends

Scenario H Scenario G1. Curvature, non int. Curvature, int. Sensitivity, non int. Sensitivity, int. Legends Nonlinearity, Scale, and Sensitivity for Parameter Estimation Problems: Some Implications for Estimation Algorithms Trond Mannseth a;, Kari Brusdal b, Alv-Arne Grimstad c, Jan-Erik Nordtvedt a, Geir Nvdal

More information

arxiv: v1 [math.ap] 22 Sep 2017

arxiv: v1 [math.ap] 22 Sep 2017 Global Riemann Solvers for Several 3 3 Systems of Conservation Laws with Degeneracies arxiv:1709.07675v1 [math.ap] 22 Sep 2017 Wen Shen Mathematics Department, Pennsylvania State University, University

More information