On the positivity of linear weights in WENO approximations. Abstract

Similar documents
Fourier analysis for discontinuous Galerkin and related methods. Abstract

The WENO Method for Non-Equidistant Meshes

Lecture 16. Wednesday, May 25, φ t + V φ = 0 (1) In upwinding, we choose the discretization of the spatial derivative based on the sign of u.

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

Hierarchical Reconstruction with up to Second Degree Remainder for Solving Nonlinear Conservation Laws

HIGH ORDER NUMERICAL METHODS FOR TIME DEPENDENT HAMILTON-JACOBI EQUATIONS

Lecture Note 3: Interpolation and Polynomial Approximation. Xiaoqun Zhang Shanghai Jiao Tong University

Lecture Note 3: Polynomial Interpolation. Xiaoqun Zhang Shanghai Jiao Tong University

High order finite difference Hermite WENO schemes for the Hamilton-Jacobi equations on unstructured meshes

SOLUTION OF STEADY-STATE HAMILTON-JACOBI EQUATION BASED ON ALTERNATING EVOLUTION METHOD

ENO and WENO schemes. Further topics and time Integration

MA2501 Numerical Methods Spring 2015

A High Order WENO Scheme for a Hierarchical Size-Structured Model. Abstract

A Central Compact-Reconstruction WENO Method for Hyperbolic Conservation Laws

Hierarchical Reconstruction with up to Second Degree Remainder for Solving Nonlinear Conservation Laws

Integration, differentiation, and root finding. Phys 420/580 Lecture 7

Simplifying Rational Expressions and Functions

Semi-Lagrangian Formulations for Linear Advection Equations and Applications to Kinetic Equations

Polynomial Interpolation

Development and stability analysis of the inverse Lax-Wendroff boundary. treatment for central compact schemes 1

Positivity-preserving high order schemes for convection dominated equations

Finite difference Hermite WENO schemes for the Hamilton-Jacobi equations 1

Neville s Method. MATH 375 Numerical Analysis. J. Robert Buchanan. Fall Department of Mathematics. J. Robert Buchanan Neville s Method

Weighted ENO Schemes

Fifth order multi-moment WENO schemes for hyperbolic conservation laws

YINGJIE LIU, CHI-WANG SHU, EITAN TADMOR, AND MENGPING ZHANG

A local-structure-preserving local discontinuous Galerkin method for the Laplace equation

Improvement of convergence to steady state solutions of Euler equations with. the WENO schemes. Abstract

COURSE Numerical integration of functions (continuation) 3.3. The Romberg s iterative generation method

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

Weighted Essentially Non-Oscillatory limiters for Runge-Kutta Discontinuous Galerkin Methods

DISCONTINUOUS GALERKIN METHOD FOR TIME DEPENDENT PROBLEMS: SURVEY AND RECENT DEVELOPMENTS

A class of the fourth order finite volume Hermite weighted essentially non-oscillatory schemes

Received 6 August 2005; Accepted (in revised version) 22 September 2005

Essentially Non-Oscillatory and Weighted Essentially Non-Oscillatory Schemes for Hyperbolic Conservation Laws

Chapter 17. Finite Volume Method The partial differential equation

Chapter 2 Interpolation

DYNAMICS OF THE ZEROS OF FIBONACCI POLYNOMIALS M. X. He Nova Southeastern University, Fort Lauderdale, FL. D, Simon

Chapter Two: Numerical Methods for Elliptic PDEs. 1 Finite Difference Methods for Elliptic PDEs

COURSE Numerical integration of functions

3.1 Interpolation and the Lagrange Polynomial

Mathematical Induction Assignments

CHAPTER 3 Further properties of splines and B-splines

LECTURE 16 GAUSS QUADRATURE In general for Newton-Cotes (equispaced interpolation points/ data points/ integration points/ nodes).

Kasetsart University Workshop. Multigrid methods: An introduction

Superconvergence of discontinuous Galerkin methods for 1-D linear hyperbolic equations with degenerate variable coefficients

A high order adaptive finite element method for solving nonlinear hyperbolic conservation laws

A re-averaged WENO reconstruction and a third order CWENO scheme for hyperbolic conservation laws

PADÉ INTERPOLATION TABLE AND BIORTHOGONAL RATIONAL FUNCTIONS

Dividing Polynomials: Remainder and Factor Theorems

Exam 1. (2x + 1) 2 9. lim. (rearranging) (x 1 implies x 1, thus x 1 0

Spring Nikos Apostolakis

ICES REPORT Accuracy of WENO and Adaptive Order WENO Reconstructions for Solving Conservation Laws

(0, 0), (1, ), (2, ), (3, ), (4, ), (5, ), (6, ).

CURRICULUM VITAE. Jie Du

Bound-preserving high order schemes in computational fluid dynamics Chi-Wang Shu

SMOOTHNESS INDICATORS FOR WENO SCHEME USING UNDIVIDED DIFFERENCES

Notes on generating functions in automata theory

30 crete maximum principle, which all imply the bound-preserving property. But most

Chapter 6: Rational Expr., Eq., and Functions Lecture notes Math 1010

Finite Elements. Colin Cotter. January 18, Colin Cotter FEM

MA 3021: Numerical Analysis I Numerical Differentiation and Integration

MULTIPLIERS OF THE TERMS IN THE LOWER CENTRAL SERIES OF THE LIE ALGEBRA OF STRICTLY UPPER TRIANGULAR MATRICES. Louis A. Levy

CHAPTER 4. Interpolation

Monte Carlo Methods for Statistical Inference: Variance Reduction Techniques

Preliminary Examination in Numerical Analysis

AN OPTIMALLY ACCURATE SPECTRAL VOLUME FORMULATION WITH SYMMETRY PRESERVATION

A NUMERICAL STUDY FOR THE PERFORMANCE OF THE RUNGE-KUTTA FINITE DIFFERENCE METHOD BASED ON DIFFERENT NUMERICAL HAMILTONIANS

256 Summary. D n f(x j ) = f j+n f j n 2n x. j n=1. α m n = 2( 1) n (m!) 2 (m n)!(m + n)!. PPW = 2π k x 2 N + 1. i=0?d i,j. N/2} N + 1-dim.

Inverse Lax-Wendroff Procedure for Numerical Boundary Conditions of. Conservation Laws 1. Abstract

Chapter 2 Formulas and Definitions:

Dedicated to the 70th birthday of Professor Lin Qun

Convergence rates of derivatives of a family of barycentric rational interpolants

Numerical Methods in Physics and Astrophysics

CENTRAL DISCONTINUOUS GALERKIN METHODS ON OVERLAPPING CELLS WITH A NON-OSCILLATORY HIERARCHICAL RECONSTRUCTION

Power Series Solutions to the Legendre Equation

Algebra 2 Early 1 st Quarter

Maximum-principle-satisfying and positivity-preserving high order schemes for conservation laws: Survey and new developments

Interpolation and Approximation

Strong Stability Preserving Properties of Runge Kutta Time Discretization Methods for Linear Constant Coefficient Operators

Polynomial Interpolation Part II

Lecture 12 (Tue, Mar 5) Gaussian elimination and LU factorization (II)

A High Order Conservative Semi-Lagrangian Discontinuous Galerkin Method for Two-Dimensional Transport Simulations

n 1 f n 1 c 1 n+1 = c 1 n $ c 1 n 1. After taking logs, this becomes

We consider the problem of finding a polynomial that interpolates a given set of values:

University of Houston, Department of Mathematics Numerical Analysis, Fall 2005

SPECTRAL METHODS: ORTHOGONAL POLYNOMIALS

Solving linear systems (6 lectures)

Numerical Methods. King Saud University

A new type of Hermite WENO schemes for Hamilton-Jacobi equations

Section Properties of Rational Expressions

Improving analytic function approximation by minimizing square error of Taylor polynomial

Numerical Methods in Physics and Astrophysics

Two hours. To be provided by Examinations Office: Mathematical Formula Tables. THE UNIVERSITY OF MANCHESTER. 29 May :45 11:45

A genuinely high order total variation diminishing scheme for one-dimensional. scalar conservation laws 1. Abstract

SOLUTIONS ABOUT ORDINARY POINTS

1 Lecture 8: Interpolating polynomials.

Polynomial Functions

Chapter 3 Interpolation and Polynomial Approximation

SOLVING SOLVABLE QUINTICS. D. S. Dummit

Transcription:

On the positivity of linear weights in WENO approximations Yuanyuan Liu, Chi-Wang Shu and Mengping Zhang 3 Abstract High order accurate weighted essentially non-oscillatory (WENO) schemes have been used extensively in numerical solutions of hyperbolic partial differential equations and other convection dominated problems. However the WENO procedure can not be applied directly to obtain a stable scheme when negative linear weights are present. In this paper, we first briefly review the WENO framework and the role of linear weights, and then present a detailed study on the positivity of linear weights in a few typical WENO procedures, including WENO interpolation, WENO reconstruction and WENO approximation to first and second derivatives, and WENO integration. Explicit formulae for the linear weights are also given for these WENO procedures. The results of this paper should be useful for future design of WENO schemes involving interpolation, reconstruction, approximation to first and second derivatives, and integration procedures. Key Words: Weighted essentially non-oscillatory (WENO) scheme, hyperbolic partial differential equations, WENO interpolation, WENO reconstruction, WENO approximation to derivatives, WENO integration. Department of Mathematics, University of Science and Technology of China, Hefei, Anhui 3006, P.R. China. E-mail: xiaoliu@mail.ustc.edu.cn Division of Applied Mathematics, Brown University, Providence, RI 09, USA. E-mail: shu@dam.brown.edu. Research supported by NSF grant DMS-0809086 and ARO grant W9NF-08-- 050. 3 Department of Mathematics, University of Science and Technology of China, Hefei, Anhui 3006, P.R. China. E-mail: mpzhang@ustc.edu.cn. Research supported by NSFC grant 06790.

Introduction Weighted essentially non-oscillatory (WENO) schemes have been used extensively in numerical solutions of hyperbolic partial differential equations (PDEs) and other convection dominated problems. The first WENO scheme was introduced in 994 by Liu, Osher and Chan in their pioneering paper [7], in which a third order accurate finite volume WENO scheme in one space dimension was constructed. In 996, Jiang and Shu [6] provided a general framework to design arbitrary order accurate finite difference WENO schemes, which are more efficient for multi-dimensional calculations. Very high order WENO schemes are documented in []. All these papers use the WENO reconstruction procedure, which is equivalent to the WENO approximation for the first derivative, and is the main relevant WENO procedure when designing finite volume or finite difference schemes to solve hyperbolic conservation laws. We will study the WENO reconstruction procedure and WENO approximation to first and second derivatives in detail in Section 3. The WENO procedure can also be used in different contexts, for example in WENO interpolation and in WENO integration. The WENO interpolation procedure is used, for example, in [8] to transfer information from one domain to another in a high order, non-oscillatory fashion for a multi-domain WENO scheme, and in [3] to build a high order Lagrangian type method for solving Hamilton-Jacobi equations. The WENO integration procedure is used, for example, in [4, 5] for the design of high order residual distribution conservative finite difference WENO schemes. The WENO schemes have been designed and applied in diversified fields, The lecture notes [0] contain a detailed description of the WENO procedure. For a recent, extensive review on WENO schemes, see []. We will use the WENO interpolation procedure below to demonstrate the general framework of WENO, which contains three major components. The first component of the general WENO procedure is a set of lower order approximations to a target value, based on different stencils, which are referred to as the small

stencils in this paper. We illustrate this component through the example of the WENO interpolation. We assume that we have a uniform mesh < x < x < x 3 < with a constant mesh size h = x i+ x i, i.e. x i = i h. We are given the point values u i = u(x i ) of a function u(x) at the grid points in this mesh, and we would like to find an approximation of the function u(x) at a point other than the nodes x i, for example at the half nodes x i+. We could find a unique polynomial of degree at most two, denoted by p (x), which interpolates the function u(x) at the mesh points in the small stencil S = {x i, x i, x i }. That is, we have p (x j ) = u j for j = i, i, i. We could then use u () p i+ (x i+ ) as an approximation to the value u(x i+ ). A simple algebra leads to the explicit formula for this approximation u () i+ = 3 8 u i 5 4 u i + 5 8 u i. (.) From elementary numerical analysis, we know that this approximation is third order accurate u () i+ u(x i+ ) = O(h 3 ) if the function u(x) is smooth in the stencil S. Similarly, if we choose a different small stencil S = {x i, x i, x i+ }, we would obtain a different interpolation polynomial p (x) satisfying p (x j ) = u j for j = i, i, i +. We then obtain a different approximation u () i+ p (x i+ ) to u(x i+ ), given explicitly as u () i+ = 8 u i + 3 4 u i + 3 8 u i+, (.) which is also third order accurate u () i+ u(x i+ ) = O(h 3 ) provided that the function u(x) is smooth in the stencil S. Finally, a third small stencil S 3 = {x i, x i+, x i+ } would lead to yet another different interpolation polynomial p 3 (x), satisfying p 3 (x j ) = u j for j = i, i +, i + and giving another approximation 3

u (3) i+ p 3 (x i+ ), or explicitly as u (3) i+ = 3 8 u i + 3 4 u i+ 8 u i+, (.3) which is of course also third order accurate u (3) i+ u(x i+ ) = O(h 3 ) provided that the function u(x) is smooth in the stencil S 3. The second component of the general WENO procedure is to combine the set of lower order approximations obtained in the first component to form a higher order approximation to the same target value, based on a larger stencil which is the union of the small stencils in the first component. This larger stencil will be referred to as the big stencil in this paper. For the interpolation problem, if we use the big stencil S = {x i, x i, x i, x i+, x i+ }, which is the union of all three third order small stencils S, S and S 3, we would be able to obtain an interpolation polynomial p(x) of degree at most four, satisfying p(x j ) = u j for j = i, i, i, i +, i +, and giving an approximation u i+ u i+ p(x i+ ), or explicitly as = 3 8 u i 5 3 u i + 45 64 u i + 5 3 u i+ 5 8 u i+, (.4) which is fifth order accurate u i+ u(x i+ ) = O(h 5 ) provided that the function u(x) is smooth in the big stencil S. A crucial observation for the WENO procedure is that the fifth order approximation u i+, defined in (.4) and based on the big stencil S, can be written as a linear convex combination of the three third order approximations u (), u () and u (3), defined by (.), (.), (.3) and based i+ i+ i+ on the three small stencils S, S and S 3 respectively: u i+ = γ u () + γ i+ u () + γ i+ 3 u (3) i+ (.5) 4

where the constants γ, γ and γ 3, satisfying γ + γ + γ 3 =, are usually referred to as the linear weights in the WENO procedure. In this case they are given as γ = 6, γ = 5 8, γ 3 = 5 6. Of course, these linear weights would change if our target changes. For example, if we would like to find the approximation to u(x i+ ) rather than to u(x 4 i+ ), then the linear weights γ, γ and γ 3 would all change. The third component of the general WENO procedure is to change the linear weights obtained in the second component to nonlinear weights, to ensure both accuracy in smooth cases and non-oscillatory performance when at least one of the small stencils contains a discontinuity of the function u(x). In the literature, this is achieved through a choice of the so-called smoothness indicator β j, which is a quadratic function of the values in each stencil S j and measures the smoothness of u(x) in that stencil. The linear weights γ j in the second component is then replaced by the nonlinear weights w j, defined by w j = w j w + w + w 3, with w j = γ j (ε + β j ). where ε is a small positive number to avoid the denominator to become zero. We refer to [6, ] for more details of the general WENO procedure. We remark that stability and non-oscillatory performance of the WENO procedure depend rather crucially on the positivity (here and below, positivity means non-negativity) of the linear weights in the second component described above, to ensure the higher order approximation is a convex combination of the lower order ones. If some of the linear weights become negative, a special treatment developed in [9] is needed to restore stability and non-oscillatory performance of the WENO procedure. However, it would be more desirable if we can guarantee the positivity of the linear weights so that this special treatment can be avoided. In [3], Carlini et al. studied symmetric WENO interpolation with even number of nodes and proved that the linear weights are always positive when the target of approximation is in the middle cell of the big stencil. The purpose of this paper 5

is to perform a systematic study on the positivity of linear weights for a few typical WENO procedures, including WENO interpolation (extending the work in [3]), WENO reconstruction and WENO approximation to first and second derivatives, and WENO interpolation. Explicit formulae for the linear weights are also given in this paper for many WENO procedures, which should be useful for future design of WENO schemes. The organization of this paper is as follows. In Section, we describe the intervals in which the linear weights stay positive in the WENO interpolation procedure. Such intervals are referred to as the positive intervals in this paper. Section 3 deals with the WENO reconstruction procedure, which is equivalent to the WENO approximation of the first derivative. We also study the WENO approximation of the second derivative in Section 3. Section 4 is reserved for the WENO integration procedure. Concluding remarks are given in Section 5. WENO interpolation We now return to the WENO interpolation procedure which was used as an example in the previous section to describe the general WENO procedure. We separate the discussion into two cases: WENO interpolation with an even number of nodes and with an odd number of nodes.. WENO interpolation with an even number of nodes For the time being we do not assume the grid is uniform. Assume that we have the big stencil S = {x j n+,..., x j+n } with n nodes. Given the point values of a function u(x) at the grid points on the big stencil S, i.e. u i = u(x i ) is known for all i, we would like to obtain a WENO interpolation to approximate the value u(x) for x within the big stencil, x [x j n+, x j+n ]. As described in the previous section, we would start from the n lower degree polynomials P k (x), for k =,..., n, which interpolate u on the small stencils S k = {x j n+k,..., x j+k } respectively. Each of the polynomials P k (x) is of degree at most 6

n and is a (n + )-th order approximation to u(x) if it is smooth on the stencil S k. We also have a (n )-th degree polynomial Q(x) which interpolates u on the big stencil S = {x j n+,..., x j+n } and is a (n)-th order approximation to u(x) if it is smooth on the stencil S. It is proved in [3] that there exist linear weights C k (x), which are actually polynomials of degree (n ), such that Q(x) = n C k (x)p k (x). (.) k= It is also proved in [3] that the linear weights are positive, C k (x) 0, for x in the middle cell of the big stencil, i.e. for x [x j, x j+ ]. The details of the construction of the linear weights C k (x) for k =,..., n are given in [3]. For a uniform grid, we have C k (x) = γ k x l S\S k (x x l ) (.) where the big stencil S and the small stencils S k are defined above and the coefficients γ k are given by γ k = ( )n+k h n n!(n )! (n k)!(k )!(n )!. From these expressions, it is easy to verify that the linear weights C k (x) 0 for k =,..., n for x [x j, x j+ ] when n, that is, when x is in the three middle cells. This extends the results in [3]. We list in Table. the explicit expressions of the linear weights C k (x), with k =,..., n, for n between and 6 (i.e. for the order of accuracy between 3 and ).. WENO interpolation with an odd number of nodes We now consider the big stencil S = {x j n,..., x j+n } containing n + nodes. In this case we would start from the (n + ) lower degree polynomials P k (x), with k = 0,..., n, which interpolate u on the small stencils S k = {x j n+k,..., x j+k } respectively. Each of the polynomials P k (x) is of degree at most n and is a (n + )-th order approximation to u(x) if it is smooth on the stencil S k. We also have a (n)-th degree polynomial Q(x) 7

Table.: Interpolation with n uniform nodes in the big stencil S = {x j n+,..., x j+n }. positive interval refers to the interval for x in which the linear weights C k (x) 0. n order linear weights positive interval n = 3 C (x) = (x x j+) 3h [x j, x j+ ] C (x) = (x x j ) 3h C (x) = (x x j+)(x x j+3 ) 0h n = 3 5 C (x) = (x x j )(x x j+3 ) 0h [x j, x j+ ] C 3 (x) = (x x j )(x x j ) 0h C (x) = (x x j+)(x x j+3 )(x x j+4 ) 0h 3 n = 4 7 C (x) = (x x j 3)(x x j+3 )(x x j+4 ) 70h 3 [x j, x j+ ] C 3 (x) = (x x j 3)(x x j )(x x j+4 ) 70h 3 C 4 (x) = (x x j 3)(x x j )(x x j ) 0h 3 C (x) = (x x j+)(x x j+3 )(x x j+4 )(x x j+5 ) 304h 4 C (x) = (x x j 4)(x x j+3 )(x x j+4 )(x x j+5 ) 756h 4 n = 5 9 C 3 (x) = (x x j 4)(x x j 3 )(x x j+4 )(x x j+5 ) 304h 4 [x j, x j+ ] C 4 (x) = (x x j 4)(x x j 3 )(x x j )(x x j+5 ) 756h 4 C 5 (x) = (x x j 4)(x x j 3 )(x x j )(x x j ) 304h 4 C (x) = (x x j+)(x x j+3 )(x x j+4 )(x x j+5 )(x x j+6 ) 55440h 5 C (x) = (x x j 5)(x x j+3 )(x x j+4 )(x x j+5 )(x x j+6 ) 088h 5 n = 6 C 3 (x) = (x x j 5)(x x j 4 )(x x j+4 )(x x j+5 )(x x j+6 ) 5544h 5 [x j, x j+ ] C 4 (x) = (x x j 5)(x x j 4 )(x x j 3 )(x x j+5 )(x x j+6 ) 5544h 5 C 5 (x) = (x x j 5)(x x j 4 )(x x j 3 )(x x j )(x x j+6 ) 088h 5 C 6 (x) = (x x j 5)(x x j 4 )(x x j 3 )(x x j )(x x j ) 55440h 5 8

which interpolates u on the big stencil S = {x j n,..., x j+n } and is a (n + )-th order approximation to u(x) if it is smooth on the stencil S. As before, we can prove that there exist linear weights C k (x), which are actually polynomials of degree n, such that Q(x) = n C k (x)p k (x). (.3) k=0.. The construction of the linear weights C k (x) By consistency, we always have n C k (x) = (.4) k=0 for any x. To construct explicitly the linear weights C k (x), we assume, as in [3], that C k (x i ) = 0 when x i / S k. (.5) With this assumption, together with (.4), for a node x i in the big stencil S, we can use (.3) to obtain Q(x i ) = = = n C k (x i )P k (x i ) k=0 n C k (x i )P k (x i ) + k=0 x i S k n C k (x i )u(x i ) + k=0 x i S k = u(x i ), n C k (x i )P k (x i ) k=0 x i / S k n C k (x i )P k (x i ) k=0 x i / S k which verifies the interpolation property of Q(x). Equation (.5) implies that there are n + (n + ) = n different roots of C k (x) distributed in S\S k. If we further assume that the linear weight C k (x) is a polynomial of degree n, then it can be written in the form C k (x) = γ k (x x l ) γ k Ck (x), x l S\S k k = 0,..., n (.6) where γ k is a constant to be determined. 9

.. The coefficients γ k Substituting (.6) into (.4), we obtain n n C k (x) = γ k (x x l ) =, k=0 k=0 x l S\S k x R (.7) from which we can deduce γ k uniquely. First choose x = x j n in (.7). It is easy to see that the only nonzero linear weight is C 0 (x j n ): n u(x j n ) = Q(x j n ) = C k (x j n )P k (x j n ) k=0 = C 0 (x j n )P 0 (x j n ) = C 0 (x j n )u(x j n ). Therefore C 0 (x j n ) = that is γ 0 (x j n x l ) = x l S\S 0 Hence we obtain γ 0 =. (x j n x l ) x l S\S 0 Next we consider the grid point x j n+. This time, the nonzero linear weights are C 0 (x j n+ ) and C (x j n+ ). Similarly we have n u(x j n+ ) = Q(x j n+ ) = C k (x j n+ )P k (x j n+ ) k=0 = C 0 (x j n+ )P 0 (x j n+ ) + C (x j n+ )P (x j n+ ) = [C 0 (x j n+ ) + C (x j n+ )]u(x j n+ ). Therefore C 0 (x j n+ ) + C (x j n+ ) = hence γ can be computed. Following this procedure, we finally obtain the set of conditions k C i (x j n+k ) =, k = 0,..., n. (.8) i=0 0

More explicitly, we obtain a linear triangular system for the unknowns γ i k i=0 γ i x l S\S i (x j n+k x l ) =, k = 0,..., n. (.9) Notice that the previous construction does not require a uniform grid, and we can easily prove the positivity for x in the interval [x j, x j+ ] for the linear weights C k (x) using a recursive method similar to that in [3]. In the next subsection, we give an explicit expression to the coefficients γ i and the linear weights C k (x) for the uniform grid case, which will help us to obtain the interval for x to guarantee positive linear weights...3 Explicit expressions for γ i and C k (x) for a uniform grid For simplicity of notations, we set j = n in the definition of the stencil S, so that S = {x 0,..., x n }. For a uniform grid with mesh size h =, the stencils can be represented by integer stencils S = S/h = {0,..., n}, Sk = S k /h = {k,..., k + n}. Then the polynomials C k (x) can be rewritten as follows Let γ k = γ k h n, we have C k (hξ) = γ k l S\ S k (ξh lh) = γ k h n C k (hξ) = γ k l S\ S k (ξ l) (.0) l S\ S k (ξ l) (.) Substituting (.) into (.8), the non-dimensional constants γ k satisfy the condition k γ i i=0 with the coefficient matrix n l=0 l / (i,...,i+n) (k l) =, k = 0,..., n (.) a ki = n l=0 i+n (k l) (k l) l=i = k!(n k)! (n + i k)!(k i)! ( )n+i. (.3)

Taking µ i ( ) n+i γ i, we could obtain the simplified equation k a ki γ i = i=0 k a ki µ i = k = 0,..., n (.4) i=0 The solution to the previous system has explicit expression. When k = 0, When k =, (n )! (n )! µ 0 + Similarly, the next few terms are (n)! µ 0 = = µ 0 = n! n! (n)!. (n )! µ = = µ = n! (n )!n! µ = (n )!!(n )! (n )!n! µ 3 = (n 3)!3!(n )!. We could summarize and prove that µ i has the expression µ i = n! (n )!. (n!), i = 0,..., n. (.5) (n i)!i!(n)! Substitute (.5) and (.3) into (.4), we obtain the set of conditions that we have to check k i=0 k!(n k)!(n!) (n + i k)!(k i)!(n i)!i!(n)! =. These relations can be rearranged in the form k!(n k)! (n)! k ( )( ) n n =. k i i i=0 Divide both sides by k!(n k)! (n)! k j=0, we obtain ( n k j )( ) n = j ( ) n k (.6) which is in turn a special case of the identity [] N ( )( ) ( ) n m n + m = N j j N j=0 (.7)

with N = k, m = n. Therefore in the case of constant mesh size h and odd number of nodes in the big stencil, the linear weights C k (x) are polynomials in x of degree n, and have the form C k (x) = γ k x l S\S k (x x l ) (.8) where S = {x j n,..., x j+n }, S k = {x j n+k,..., x j+k } for k = 0,..., n, and γ k = ( )n+k (n!), k = 0,..., n. h n (n k)!k!(n)! Hence it is easy to check that the linear weights C k (x) with k = 0,..., n are positive for any x [x j, x j+ ], that is, for x in the two middle cells. We list in Table. the explicit expressions of the linear weights C k (x) for k = 0,..., n for n between and 5 (i.e. for order of accuracy between and 0). 3 WENO reconstruction and WENO approximation to derivatives In this section we study WENO reconstruction, that is, given the cell averages of a function, approximate its value at some point in the stencil. This problem is equivalent to that of WENO approximation of the first derivative. We will also discuss the WENO approximation of the second derivative. We separate the discussion of the big stencil involving an even number of nodes and an odd number of nodes respectively for the WENO approximation to the first and second derivatives. 3. WENO reconstruction and WENO approximation to the first derivative 3.. WENO approximation to the first derivative with an even number of nodes Now we look at the problem of WENO reconstruction. Assume that we have a mesh < x < x 3 < x 5 < with the mesh size x i = x i+ x i and the maximum 3

Table.: Interpolation with n + uniform nodes in the big stencil S = {x j n,..., x j+n }. n order linear weights positive interval n = C 0 (x) = (x x j+) h [x j, x j+ ] C (x) = (x x j ) h C 0 (x) = (x x j+)(x x j+ ) 0h n = 4 C (x) = (x x j )(x x j+ ) 6h [x j, x j+ ] C (x) = (x x j )(x x j ) h C 0 (x) = (x x j+)(x x j+ )(x x j+3 ) 0h 3 n = 3 6 C (x) = (x x j 3)(x x j+ )(x x j+3 ) 40h 3 [x j, x j+ ] C (x) = (x x j 3)(x x j )(x x j+3 ) 40h 3 C 4 (x) = (x x j 3)(x x j )(x x j ) 0h 3 C 0 (x) = (x x j+)(x x j+ )(x x j+3 )(x x j+4 ) 680h 4 C (x) = (x x j 4)(x x j+ )(x x j+3 )(x x j+4 ) 40h 4 n = 4 8 C (x) = (x x j 4)(x x j 3 )(x x j+3 )(x x j+4 ) [x 80h 4 j, x j+ ] C 3 (x) = (x x j 4)(x x j 3 )(x x j )(x x j+4 ) 40h 4 C 4 (x) = (x x j 4)(x x j 3 )(x x j )(x x j ) 680h 4 C 0 (x) = (x x j+)(x x j+ )(x x j+3 )(x x j+4 )(x x j+5 ) 3040h 5 C (x) = (x x j 5)(x x j+ )(x x j+3 )(x x j+4 )(x x j+5 ) 6048h 5 C (x) = (x x j 5)(x x j 4 )(x x j+3 )(x x j+4 )(x x j+5 ) n = 5 0 304h 5 [x j, x j+ ] C 3 (x) = (x x j 5)(x x j 4 )(x x j 3 )(x x j+4 )(x x j+5 ) 304h 5 C 4 (x) = (x x j 5)(x x j 4 )(x x j 3 )(x x j )(x x j+5 ) 6048h 5 C 5 (x) = (x x j 5)(x x j 4 )(x x j 3 )(x x j )(x x j ) 3040h 5 4

mesh size h = max i x i. Given the cell averages of a function u(x) ū i = xi+ u(ξ)dξ x i x i the reconstruction problem is to find a polynomial p j (x), of degree at most k, for each cell I i = [x i, x i+ ], such that it is a k-th order accurate approximation to the function u(x) at an arbitrary point x inside I i = [x i, x i+ ]: p j (x) = u(x) + O(h k ), x I i, i =,..., N satisfying x l xl+ x l p j (ξ)dξ = ū l, l = i j,..., i j + k. To reconstruct the point value of the function u(x) from its cell averages, we first denote U(x) = x u(ξ)dξ where the lower limit is not important and can be replaced by any fixed number. Hence U(x i+ ) could be expressed by the cell averages of u(x) U(x i+ ) = i l= xl+ x l u(ξ)dξ = i l= ū l x l. Thus with the knowledge of the cell averages ū l we also could know the values of the primitive function U(x) at the grid points which are boundaries of the cells. By the traditional approach of interpolation, there is a unique polynomial of degree k denoted by P j (x), which interpolates the function U(x) at the following k + points in the stencil S j = {x i j,..., x i+k j } with j = 0,..., k, with the accuracy P j (x) = U(x) + O(h k+ ). Denote its derivative by p j (x): p j (x) P j (x) (3.) 5

then it is easy to verify that x l xl+ x l p j (ξ)dξ = x l xl+ x l = (P j (x x l+ l = (U(x x l+ l = xl+ x l x l P j(ξ)dξ ) P j (x l )) ) U(x l )) u(ξ)dξ = ū l which implies that p j (x) is the polynomial we are looking for, satisfying the accuracy requirement p j (x) = u(x) + O(h k ). We write the interpolation polynomial P j (x) in the Lagrange form P j (x) = k m=0 U(x i j+m ) k n=0 n m (x x i j+n ) (x i j+m x i j+n subtract a constant U(x i j ) from the previous equation, and use the fact that k k to obtain m=0 n=0 n m P j (x) U(x i j ) k = m=0 (U(x i j+m (x x i j+n ) (x i j+m ) U(x i j x i j+n Taking derivative on both sides and noticing that we obtain p j (x) = U(x i j+m k m m=0 l=0 )) k n=0 n m m ) U(x i j ) = ū i j+l x i j+l 6 k n=0 n m k n=0 n m l=0 ) = ), (x x i j+n ) (x i j+m ū i j+l x i j+l k q=0 q m,n (x i j+m x i j+n (x x i j+q ) x i j+n ) ).

thus we finally obtain a k-th order accurate approximation on the small stencil S j = {x i j,..., x i+k j } with j = 0,..., k to the function u(x) k u(x) = p j (x) = l=0 k m=l+ k n=0 n m k n=0 n m k q=0 q m,n (x i j+m (x x i j+q ) x i j+n ū i j+l x i j+l. (3.) ) To construct a WENO reconstruction of degree k to the approximation to u(x) on the big stencil S = {x i k+,..., x i+k } with k nodes, we write them in the combination form: k p(x) = C j (x)p j (x) (3.3) j=0 with the linear weights C j (x). Similarly as the procedure described previously, we could also obtain a (k )-th order accurate approximation on the big stencil S to the function u(x) u(x) = p(x) = k l= k m=l+ k n= n m k n= n m k q= q m,n (x i k+m (x x i k+q ) x i k+n ū i k+l x i k+l. (3.4) ) where p(x) is defined by p(x) P (x) (3.5) and P (x) is a polynomial of degree k interpolating the function U(x) in the big stencil S = {x i k+,..., x i+k }. From (3.), (3.3) and (3.4) we could deduce the explicit expressions for the linear weights C j (x) with j = 0,..., k. Because of the relationship (3.) and (3.5), (3.3) can also be written as k P (x) = C j (x)p j (x). j=0 7

Table 3.: Reconstruction or WENO approximation to the first derivative with k uniform nodes in the big stencil S = {x i k+,..., x i+k }. positive intervals refer to the intervals for x inside the big stencil in which the linear weights C k (x) 0. k order positive intervals of the linear weights 3 [x i 0.57735h, x i 0.0773503h] [x i + 0.0773503h, x i+ 3 5 [x i 0.546h, x i 0.0447h] [x i + 0.0447h, x i+ 4 7 [x i 0.4746h, x i 0.99h] [x i + 0.99h, x i+ 5 9 [x i 0.44378h, x i 0.50646h] [x i + 0.50646h, x i+ 6 [x i 0.49457h, x i 0.673h] [x i + 0.673h, x i+ 7 3 [x i 0.40000h, x i 0.8046h] [x i + 0.8046h, x i+ length of positive intervals + 0.57735h] h + 0.546h].808h + 0.4746h].68940h + 0.44378h].5867h + 0.49457h].50465h + 0.40000h].4395h That is to say, C j (x) are also the linear weights for the WENO approximation to the first derivative of U(x). Unfortunately, unlike the case of WENO interpolation discussed in the previous section, here the linear weights C j (x) are no longer polynomials but are rational functions. Therefore, there are points x for which the linear weights do not exist (when one of the C j (x) has a zero in its denominator). We are concerned with the positive intervals, namely intervals for x inside the region covered by the big stencil such that all the linear weights C j (x) 0 for j = 0,..., k. Considering positive intervals in the big stencil S = {x i k+,..., x i+k }, which contains an even number (k) points, and assuming the mesh is uniform, we summarize the results for k from to 7 (order of accuracy from 3 to 3) in Table 3.. We observe that the positive intervals always exclude a middle portion of the central cell I i = [x i, x i+ ]. The size of this excluded portion is increasing with an increasing k, but not too dramatically. We also notice that the positive intervals cover a region beyond the central cell I i. We now explain how Table 3. is obtained, and also give explicit expressions for the linear weights. Since the grid is uniform, there is no loss of generality if we set x i = 0 and h = in the definition of the stencils S j and S, so that S = { k +,..., k } and S j = { j,..., k j } with j = 0,..., k. For the convenience of expression, suppose that q(x) is a polynomial of degree at most n, we order all of its n roots r,..., r n based on the following two rules: 8

. First arrange the real roots in ascending order.. For the complex roots, we compare the real parts and imaginary parts successively, and sort them in ascending order. Based on the previous definition, we denote by R[q, k], k n, the k-th root of the polynomial q(x), which is the same as the way of sorting the roots of a polynomial in Mathematica. For example, the polynomial q(x) = x 7 x 3 + 3x has seven roots arranged in the previously defined order as follows:.436, 0, 0, 0.4679.308i, 0.4679 +.308i, 0.95853 0.49848i, 0.95853 + 0.49848i. Therefore, for example, R[q, ] = 0 and R[q, 5] = 0.4679 +.308i. The expressions for the linear weights and positive intervals are listed in Table 3., with the functions involved defined in Appendix and the notations involving roots of polynomials explained above. We observe that the positive intervals for the linear weights in the general k 3 case can be expressed as [R[n, k 4], R[n, k]] [R[n, k ], R[n, k + ]] where n (x) and n (x) represent the numerator polynomials of the linear weights C (x) and C k (x) respectively. In many applications, we would need to use the WENO reconstruction procedure to obtain approximations of the function at suitable Gaussian quadrature points for numerical integration. This is for example the case of a finite volume scheme for solving a conservation law with a source term. We would therefore be interested to know if the Gaussian quadrature points of adequate order of accuracy would be located in the positive intervals for the linear weights. 9

Table 3.: Reconstruction or WENO approximation to the first derivative with k uniform nodes in the big stencil S = { k +,..., k }. Explicit expressions of the linear weights and positive intervals. k order linear weights positive intervals 3 C 0 (x) = f(x) 4x [ 3+ 3 C (x) = f(x) C 0 (x) = 4x f(x) 80f (x) g (x) 6, 3 3 6 ] [ 3+ 3 3+ 6, 3 6 ] 3 5 C (x) = 40f (x)f (x) [R[g, ], R[g, 3]] [R[g, 4], R[g, 5]] C (x) = f(x) 4 7 C 0 (x) = 80f (x) f3(x) 3440f 5(x) f 4(x) C (x) = 3440x( 5+4x )f 5(x) [R[f 4, 4], R[f 4, 4]] [R[f 4, 6], R[f 4, 6]] f C (x) = 4(x) C 3 (x) = C 0 (x) = C (x) = 3440x( 5+4x )f 5(x) f3(x) 3440f 5(x) f6(x) 68f 7(x) f 8(x) 403f 7(x)f (x) g (x) 5 9 C (x) = 688f (x)f (x) [R[f 8, 6], R[f 8, 5]] [R[f 8, 8], R[f 8, 7]] f C 3 (x) = 8(x) 6 C 4 (x) = C 0 (x) = C (x) = 403f 7(x)f (x) f6(x) 68f 7(x) f 9(x) 709630f 0(x) f (x) 709630f 0(x)f (x) f 3(x) C (x) = 354860xg 3(x)f (x) [R[f, 8], R[f, 6]] [R[f, 0], R[f, 8]] f C 3 (x) = 3(x) C 4 (x) = C 5 (x) = C 0 (x) = C (x) = C (x) = 354860xg 3(x)f (x) f (x) 709630f 0(x)f (x) f 9(x) 709630f 0(x) f 4(x) 7907380f 5(x) f 6(x) 39536640f 5(x)f 7(x) f 8(x) 7907380f 7(x)f 3(x) g 4(x) 7 3 C 3 (x) = 0085878948000f 3(x)f 3(x)f 7(x) [R[f 6, 0], R[f 6, 7]] [R[f 6, ], R[f 6, 9]] f C 4 (x) = 8(x) C 5 (x) = C 6 (x) = 0085878948000f 7(x)f 3(x) f 6(x) 39536640f 5(x)f 7(x) f 4(x) 7907380f 5(x) 0

Table 3.3: Gaussian quadrature rules with an even number of quadrature points. n order Gaussian integration points n = 3 x i ± 0.88675h n = 4 7 x i ± 0.430568h x i ± 0.6999h n = 6 x i ± 0.46635h x i ± 0.330605h x i ± 0.93h n = 8 5 x i ± 0.48045h x i ± 0.398333h x i ± 0.6766h x i ± 0.09773h n = 0 9 x i ± 0.486953h x i ± 0.4353h x i ± 0.339705h x i ± 0.6698h x i ± 0.074437h Denote by ξ (n) i the Gaussian integration points in the interval [, ], then the Gaussian integration points in [a, b] are b a ξ(n) i + a+b. We cannot use a Gaussian integration rule with an odd number of quadrature points, because in that case the center of the cell is a quadrature point, and is definitely not in the positive intervals for the linear weights. We list the quadrature points in [x i, x i+ ] for the various Gaussian integration rules with an even number of quadrature points in Table 3.3. Comparing with Table 3., we conclude that, when k =, we could use all the Gaussian rules up to n = 0, and the quadrature points will be within the positive intervals of the linear weights. When k = 3, we could use Gaussian rules up to n = 6. When k = 4, we could use Gaussian rules only up to n = 4. For this case, the WENO reconstruction is 7-th order and the Gaussian rule with n = 4 is also 7-th order. For a higher than 7-th order WENO reconstruction, the Gaussian rules with equal or higher order of accuracy cannot be used without putting quadrature points outside the positive intervals for linear weights. 3.. WENO approximation to the first derivative with an odd number of nodes Now we consider WENO approximation to the first derivative with an odd number of nodes. Using notations and derivations in the previous subsection 3.., we would like

Table 3.4: WENO approximation to the first derivative with k + uniform nodes in the big stencil S = {x i k+,..., x i+k+ }. k order positive intervals of the linear weights length of positive intervals k = [x i+ 0.5h, x i+ + 0.5h] h + 0.44439h] 0.884878h k = 4 [x i+ k = 3 6 [x i+ k = 4 8 [x i+ k = 5 0 [x i+ k = 6 [x i+ 0.44439h, x i+ 0.40439h, x i+ 0.37705h, x i+ 0.35057h, x i+ 0.333459h, x i+ + 0.40439h] 0.804878h + 0.37705h] 0.74540h + 0.35057h] 0.70034h + 0.333459h] 0.66698h to find the linear weights C j (x) satisfying P (x) = k C j (x)p j(x). (3.6) j=0 where P (x) and P j (x) interpolate the function U(x) in the big stencil S = {x i k+,..., x i+k+ } and the small stencils S j = {x i j+,..., x i+k j+ } with j = 0,..., k respectively. Similarly as in the previous subsection, we can also obtain positive intervals for the linear weights in Table 3.4. We observe that the positive intervals exclude portions of both ends of the central interval with length h, [x i+ 0.5h, x i+ + 0.5h], except for the k = case. The size of these two excluded portions is increasing with an increasing k, but not too dramatically. We also observe that the length of the positive intervals is shorter than that of the WENO reconstruction / WENO approximation to the first derivation with an even number of nodes. As before, we set x i = 0, h = in the definition of the stencils S j and S, so that S = { k +,..., k + } and S j = { j +,..., k j + } for j = 0,..., k. The explicit expressions of the linear weights and positive intervals are given in Table 3.5, with the same convention as in the previous subsection on the ordering of the roots of a polynomial, and with the specific polynomials defined in Appendix. We notice that the positive intervals for the linear weights in the general k case can be expressed as [R[n, k ], R[n, k + ]]

Table 3.5: WENO approximation to the first derivative with k + uniform nodes in the big stencil S = { k +,..., k + }. Explicit expressions of the linear weights and positive intervals. k order linear weights positive intervals k = C 0 (x) = x C (x) = x [0, ] C 0 (x) = x( 5+4x ) 4(x ) k = 4 C (x) = g (x) 4x(x ) [R[g, ], R[g, 3]] C (x) = f (x) 4x C 0 (x) = xg (x) k = 3 6 40g 3 (x) g 4 (x) C (x) = 80g 3 (x)f (x) [R[g 5, 4], R[g 4, 4]] g C (x) = 5 (x) 80f (x)f (x) C 3 (x) = f 6(x) C 0 (x) = C (x) = 40f (x) xg 6(x) 3440g 7 (x) g 8 (x) 670g 7 (x)f (x) g 9 (x) k = 4 8 C (x) = 670x( 5+4x )f [R[g (x) 0, 6], R[g 8, 5]] g C 3 (x) = 0 (x) k = 5 0 C 4 (x) = C 0 (x) = C (x) = 670x( 5+4x )f (x) g (x) 3440f (x) xg (x) 490g 3 (x) g 4 (x) 48384g 3 (x)f 3 (x) g 5 (x) C (x) = 49f 3 (x)f 4 (x) [R[g 7, 8], R[g 4, 6]] g C 3 (x) = 6 (x) C 4 (x) = C 5 (x) = C 0 (x) = C (x) = C (x) = 49f 4 (x)f 4 (x) g 7 (x) 48384f 3 (x)f 4 g (x) 8(x) 490f 3 (x) xg 9 (x) 88960g 0 (x) g (x) 709630g 0 (x)f 5 (x) g (x) 709630f 5 (x)f 6 (x) g 3 (x) k = 6 C 3 (x) = 0644480xf 6 (x)g [R[g (x) 5, 0], R[g, 7]] g C 4 (x) = 4 (x) C 5 (x) = C 6 (x) = 709630xf 6 (x)g (x) g 5 (x) 709630f 5 (x)f 6 (x) g 6 (x) 88960f 5 (x) 3

Table 3.6: Gaussian quadrature rules with an odd number of quadrature points. n order Gaussian integration points n = x i+ n = 3 5 x i+ n = 5 9 x i+ n = 7 3 n = 9 7 x i+ x i+ x i+ x i+ x i+ ± 0.38798h x i+ x i+ ± 0.474554h ± 0.6935h x i+ ± 0.45309h ± 0.370766h ± 0.093h x i+ x i+ ± 0.67h x i+ ± 0.306686h ± 0.48408h ± 0.4806h x i+ where n (x) and n (x) represent the numerator polynomials of the linear weights C (x) and C k (x) respectively. As before, we list the quadrature points in [x i+ 0.5h, x i+ + 0.5h] to know if the Gaussian quadrature points of adequate order of accuracy would be located in the positive intervals for the linear weights. Replacing x i by x i+ obtain the quadrature points in [x i+ 0.5h, x i+ in Table 3.3, we could + 0.5h] for the Gaussian integration rules with an even number of quadrature points. Therefore we only list the quadrature points for the various Gaussian integration rules with an odd number of quadrature points in Table 3.6. Comparing with Table 3.4, we conclude that, when k =, we could use all the Gaussian rules with both an even number and an odd number of quadrature points up to n = 0, and the quadrature points will be within the positive intervals of the linear weights. When k =, we could use Gaussian rules only up n = 4. For this case, the WENO reconstruction is 4-th order and the Gaussian rule with n = 4 is 7-th order. For a higher than 4-th order WENO reconstruction, the Gaussian rules with equal or higher order of accuracy cannot be used without putting quadrature points outside the positive intervals of the linear weights. 4

3. WENO approximation to the second derivative In some applications we would like to obtain a WENO approximation to the second derivative of a function, when given its values at the mesh points. We separate the discussion to two cases: WENO approximation to the second derivative with an even number of nodes and with an odd number of nodes. 3.. WENO approximation to the second derivative with an even number of nodes Using notations and derivations from the previous subsection, we would like to find the linear weights C j (x) satisfying k P (x) = C j (x)p j (x) (3.7) j=0 where P (x) and P j (x) are the interpolation polynomials of the function u(x) based on the big stencil S = {x i k+,..., x i+k } and the small stencils S j = {x i j,..., x i+k j } for j = 0,..., k respectively. Similarly as in the previous section, we could obtain the positive intervals for the linear weights, that is, the intervals inside the big stencil where the linear weights are positive, in Table 3.7. We observe that the positive intervals are now completely contained the central cell I i = [x i, x i+ ], with an excluded portion at both ends, except for the k = case. The size of these excluded portions is increasing with an increasing k, and this size is larger than that of the WENO reconstruction / WENO approximation to the first derivative using the same stencils. As before, we set x i = 0, h = in the definition of the stencils S j and S, so that S = { k +,..., k } and S j = { j,..., k j } for j = 0,..., k. The explicit expressions of the linear weights and positive intervals are given in Table 3.8, with the same convention as in the previous subsection on the ordering of the roots of a polynomial, and with the specific polynomials defined in Appendix 3. We notice that the positive intervals for the linear weights in the general k 3 case 5

Table 3.7: WENO approximation to the second derivative with k uniform nodes in the big stencil S = {x i k+,..., x i+k }. positive intervals refer to the intervals for x in the big stencil inside which the linear weights C k (x) 0. k order positive intervals of the linear weights length of positive intervals k = [x i 0.5h, x i + 0.5h] h k = 3 4 [x i 0.39057h, x i + 0.39057h] 0.7844h k = 4 6 [x i 0.34983h, x i + 0.34983h] 0.69966h k = 5 8 [x i 0.5679h, x i + 0.5679h] 0.53458h k = 6 0 [x i 0.603h, x i + 0.603h] 0.4506h k = 7 [x i 0.7834h, x i + 0.7834h] 0.35668h can be expressed as [R[n, k 4], R[n, k]] where n (x) and n (x) represent the numerator polynomials of the linear weights C (x) and C k (x) respectively. 3.. WENO approximation to the second derivative with an odd number of nodes Now we consider WENO approximation to the second derivative with an odd number of nodes. Using notations and derivations from the previous subsection, we would like to find the linear weights C j (x) satisfying P (x) = k j=0 C j (x)p j (x) (3.8) where P (x) and P j (x) are the interpolation polynomials of the function u(x) based on the big stencil S = {x i k+,..., x i+k+ } and the small stencils S j = {x i j+,..., x i+k j } for j = 0,..., k respectively. Unfortunately, this time we could not find any positive intervals for the linear weights, that is, for any point x in the big stencil, at least one of the linear weights will become negative. As before, we set x i = 0, h = in the definition of the stencils S j and S, so that S = { k +,..., k + } and S j = { j +,..., k j + } for j = 0,..., k. The explicit expressions of the linear weights are given in Table 3.9, with the specific polynomials defined in Appendix 4. 6

Table 3.8: WENO approximation to the second derivative with k uniform nodes in the big stencil S = { k +,..., k }. Explicit expressions of the linear weights and positive intervals. k order linear weights positive intervals k = C 0 (x) = +x C (x) = x [, ] C 0 (x) = f (x) 4 48x k = 3 4 C (x) = g (x) 48x [R[g, ], R[g, 3]] C (x) = f (x) k = 4 6 C 0 (x) = 4+48x f (x) 480f 3 (x) f 4 (x) C (x) = 480f 3 (x)( 5+x ) [R[f 4, 4], R[f 4, 4]] f C (x) = 4 (x) C 3 (x) = C 0 (x) = 480f 3 (x)( 5+x f ) (x) 480f 3 (x) f 5(x) 4030f 6 (x) f 7 (x) 0080f 6 (x)f (x) C (x) = k = 5 8 C (x) = g (x) 670g 3 (x) [R[f 7, 6], R[f 7, 5]] C 3 (x) = f 7 (x) k = 6 0 C 4 (x) = C 0 (x) = C (x) = 0080f 6 (x)f (x) f 5(x) 4030f 6 (x) f 8(x) 680f 9 (x) f 0 (x) 680f 9 (x)f (x) f (x) C (x) = 80640g 4 (x)f (x) [R[f 0, 8], R[f 0, 6]] f C 3 (x) = (x) C 4 (x) = C 5 (x) = C 0 (x) = C (x) = C (x) = 80640g 4 (x)f (x) f 0 (x) 680f 9 (x)f f (x) 8(x) 680f 9 (x) f 3 (x) 88960f 4 (x) f 5 (x) 0644480f 4 (x)f 6 (x) f 7 (x) 88960f (x)f 6 (x) g 5 (x) k = 7 C 3 (x) = 540773646336000f (x)f (x)f 6 [R[f (x) 5, 0], R[f 5, 7]] f C 4 (x) = 7 (x) C 5 (x) = C 6 (x) = 540773646336000f (x)f 6 (x) f 5 (x) 0644480f 4 (x)f 6 (x) f 3 (x) 88960f 4 (x) 7

Table 3.9: WENO approximation to the second derivative with k + uniform nodes in the big stencil S = {x i k+,..., x i+k+ }. Explicit expressions of the linear weights. k order linear weights k order linear weights C 0 (x) = 5+x C 4 0 (x) = k = 3 C (x) = +x x C (x) = C (x) = f (x) C 4 (x) = k = 5 9 g C 0 (x) = (x) C 880( 3+x) 3 (x) = g C (x) = (x) C k = 3 5 880(3 8x+4x ) 4 (x) = g C (x) = 3 (x) C 880( +4x ) 5 (x) = C 3 (x) = g 4(x) C 880+5760x 0 (x) = C 0 (x) = C (x) = k = 4 7 C (x) = C 3 (x) = C 4 (x) = g 5(x) 3440g 6 (x) g 7 (x) 3360g 6 (x)f (x) g 8 (x) 670( 5+x )f (x) g 9 (x) 3360( 5+x )f (x) g 0(x) 3440f (x) C (x) = C (x) = k = 6 C 3 (x) = C 4 (x) = C 5 (x) = C 6 (x) = g (x) 35600g (x) g 3 (x) 35600g (x)f (x) g 4 (x) 6800f (x)f 3 (x) g 5 (x) 6800f 3 (x)f 3 (x) g 6 (x) 35600f (x)f 3 (x) g 7 (x) 35600f (x) g 8 (x) 709630g 9 (x) g 0 (x) 354860g 9 (x)f 4 (x) g (x) 709630f 4 (x)f 5 (x) g (x) 774080g (x)f 5 (x) g 3 (x) 709630g (x)f 5 (x) g 4 (x) 354860f 4 (x)f 5 (x) g 5 (x) 709630f 4 (x) 8

4 WENO integration In many applications, we would like to obtain a WENO approximation to an integral of a function, given its values at grid points. One way to perform such an integration is to first use the WENO reconstruction procedure, discussed in the previous section, to obtain WENO approximations to the function values at the quadrature points of a suitable Gaussian quadrature rule, then use this Gaussian quadrature rule to obtain an approximation to the integral. However, this may not be the most economical approach. We will describe a more direct approach of WENO integration, which was used in, e.g. [4, 5]. We separate the discussion of the big stencil involving an even number of nodes and an odd number of nodes. 4. WENO integration with an even number of nodes As before, we have a mesh < x in this section, i.e. h = x i+ x i < x 3 < x 5 function u(x) at the grid points in this mesh, i.e. u i+ <, which is assumed to be uniform is a constant. We are given the point values of a = u(x i+ ) is known for all i. By the traditional approach of interpolation, we could find a unique polynomial denoted by P (x), which interpolates the function u(x) at the mesh points in the big stencil S = {x i k+,..., x i+k } containing k nodes. Similarly, by choosing the small stencils S j = {x i j,..., x i+k j } with k + nodes, where j = 0,..., k, we could obtain different interpolation polynomials P j (x), with j = 0,..., k. The problem we will face is to find the k linear weights C j (a, b), with j = 0,..., k, satisfying b a k P (x)dx = j=0 b C j (a, b) P j (x)dx (4.) a for an interval [a, b] inside the big stencil S. We would like to know when the linear weights C j (a, b) 0 for all j = 0,..., k. Since now the linear weights depends on two parameters a and b, the situation is more complicated than those in the previous two 9

sections. It seems that it is now more difficult to find a general pattern for the explicit expressions of the linear weights. In the following we will discuss the first two cases k = and k = 3, corresponding to 4th and 6th order accurate numerical integrations. 4.. k = For k =, we have 4 points in the big stencil, and the following small stencils S j have three nodes for j = 0, : {}} S { x i 3 x i x i+ } {{ } } {{ S 0 } S x i+ 3 Using the Lagrange form of the interpolation polynomial, we have P (x) = 3 m=0 u i 3 +m 3 l=0 l m corresponding to the big stencil S = {x i 3 (x x i 3 +l) (x i 3 +m x i 3 +l), x i, x i+, x i+ 3 }, and P 0 (x) = (x x i+ )(x x i+ 3 ) u h i + (x x i )(x x i+ 3 ) u h i+ + (x x i )(x x i+ ) u h i+ 3 P (x) = (x x i )(x x i+ ) u h i 3 + (x x i 3 )(x x i+ ) u h i + (x x i 3 )(x x i ) u h i+ corresponding to the two small stencils S j = {x i j respectively., x i j+, x i j+ 3 } with j = 0, We set again x i = 0, h = in the definition of the stencil S, so that S = { 3,,, 3 }. From (4.), we can deduce that the two linear weights C 0 (a, b) and C (a, b) are rational polynomials in a and b, given by C 0 (a, b) = (a + b + )(a + b + a + b 3) (4a + 4ab + 4b 3) C (a, b) = (a + b )(a + b a b 3). (4a + 4ab + 4b 3) Using Mathematica, we can obtain the range of a and the corresponding range of b to guarantee C j (a, b) 0 for j = 0,. The result is summarized in Table 4.. 30

Table 4.: WENO integration over [a, b]. The range of a and the corresponding range of b to guarantee the linear weights C j (x) 0. k =. the range of a the corresponding range of b [ 3, ) (a, a] [ + 7 4a 4a 3, ] [, 3 ) (a, a] [ 7+4a 4a + 7+4a 4a, ] [ + 7 4a 4a 3, ] 3 [ 3, ) (a, a] [ 7+4a 4a + 7 4a 4a, ] [ + 7+4a 4a 3, ] 4 [, ) (a, + 7 4a 4a 3 ] [ a, ] 5 [, 3 ) (a, 3 ] Figure 4. shows the positive region. The horizontal axis is a, and the vertical axis is the interval length b a. The shaded region is the positive region in which the linear weights are positive. Notice that the range of a is over the big stencil a [ 3, 3 ). 4.. k = 3 For the k = 3 case, the three small stencils S j, j = 0,, are given as follows: x i 5 {}} S { x i 3 x i }{{} x i+ x i+ 3 S }{{} S 0 The Lagrange form of the interpolation polynomials is x i+ 5 P (x) = 5 m=0 u i 5 +m 5 l=0 l m (x x i 5 +l) (x i 5 +m x i 5 +l) in the big stencil S = {x i 5,..., x i+ 5 } and P j (x) = 3 m=0 u i j +m 3 l=0 l m (x x i j +l) (x i j +m x j = 0,, i j +l), in the three small stencils S j = {x i j,..., x i j+ 5 } for j = 0,, respectively. As before, we set x i = 0 and h = in the definition of the stencil S, so that S = { 5,..., 5 }. We look for the linear weights C j(a, b) such that b a P (x)dx = j=0 b C j (a, b) P j (x)dx (4.) a 3

length 3.0.5.0.5.0 0.5.5.0 0.5 0.0 0.5.0.5 a Figure 4.: The shaded region is the positive region in which the linear weights are positive. Notice that the horizontal axis is a over the whole big stencil a [ 3, 3 ) and the vertical axis is the interval length b a. 3

To determine C j (a, b), we notice that j=0 C j(a, b) =, and also the corresponding coefficients of u i 5 +m for m = 0,..., 5 on each side of (4.) should be equal. These give the linear weights C 0 (a, b), C (a, b) and C (a, b) as rational polynomials in a and b in the following form C 0 (a, b) = C (a, b) = (a + b + ) [f(a, b) + g(a, b)] 40(a + b )(a + b a b 3) (a + b ) [f(a, b) g(a, b)] 40(a + b + )(a + b + a + b 3) C (a, b) = C 0 (a, b) C (a, b) where f(a, b) and g(a, b) are defined by f(a, b) = 6(a 4 + b 4 + a b + ab) 9(a + b ) + 35 g(a, b) = 4(a + b)(8a 4ab + 8b 7). It turns out that there are 5 different cases for the range of a and the corresponding range of b to guarantee the linear weights C j (a, b) 0 for j = 0,,, when the interval [a, b] is restricted to be within the big stencil [ 5, 5 ]. We summarize these 5 different cases in Table 4.. The definition of the functions used in this table is given in Appendix 5, and the convention of ordering the roots of polynomials is the same as that used in Section 3. Figure 4. shows the positive region. The horizontal axis is a, and the vertical axis is the interval length b a. The shaded region is the positive region in which the linear weights are positive. Notice that the range of a is over (, 3 ), which is a subinterval covered by the the big stencil [ 5, 5 ]. The linear weights can not maintain positivity for a outside this subinterval. 4. WENO integration with an odd number of nodes Now we consider WENO integration with an odd number of nodes. We still denote by P (x) the interpolation polynomial in the big stencil S = {x i k+,..., x i+k+ } having 33

Table 4.: WENO integration over [a, b]. The range of a and the corresponding range of b to guarantee the linear weights C j (x) 0. k = 3. the range of a the corresponding range of b [ R[q, ], ) [ R[g, 3], R[g, 3] ] [, R[q, ] ] [ R[g 3, ], R[g 3, ] ] [ R[g, 3], R[g, 3] ] [ R[g 3, 3], R[g 3, 4] ] 3 ( R[q, ], R[q 3, ] ) [ R[g 3, ], R[g 3, ] ] [ R[g, 3], R[g, 3] ] [ R[g 3, 3], R[g, 4] ] 4 a = R[q 3, ] [ R[g 3, ], R[g 3, ] ) ( R[g 3, ], R[g, 3] ] [ R[g 3, 3], R[g, 4] ] 5 ( R[q 3, ], R[q 4, ] ] [ R[g 3, ], R[g, 3] ] [ R[g 3, ], R[g, 3] ] [ R[g 3, 3], R[g, 4] ] 3 6 ( R[q 4, ], 5 ) [ R[g 6 3, ], R[g, 3] ] [ R[g 3, 3], R[g, 4] ] 7 a = 3 5 [ R[g 6 3, ], R[g, 3] ] ( R[g 3, 3], R[g, 4] ] 8 ( 3 5, 3 ) [ R[g 6 3, ], R[g, 3] ] [ R[g, 4], R[g, 4] ] 9 [ 3, R[q 5, ] ) ( a, R[g, 3] ] [ R[g, 4], R[g, 4] ] 0 [ R[q 5, ], R[q, ] ) ( a, R[g, 3] ] [ R[g, 3], R[g, 4] ] [ R[q, ], R[q 6, ] ) ( a, R[g, 3] ] [ R[g 3, 3], R[g, 4] ] [ R[q 6, ], R[q 7, ] ] ( a, R[g, 3] ] [ R[g, 4], R[g, 5] ] [ R[g 3, 3], R[g, 4] ] 3 3 ( R[q 7, ], 5 ) ( a, R[g 6, 3] ] [ R[g, 4], R[g, 5] ] [ R[g, 6], R[g, 4] ] 4 a = 3 5 ( a, R[g 6, 3] ] [ R[g, 4], R[g, 5] ] [ R[g, 6], R[g, 4] ) 5 ( 3 5, R[q 6 8, 3] ] ( a, R[g, 3] ] [ R[g, 4], R[g, 5] ] [ R[g, 6], R[g, 7] ] 6 ( R[q 8, 3], ) ( a, R[g, 3] ] [ R[g, 4], R[g, 5] ] 7 [, R[q 8, 4] ) ( a, R[g, 5] ] 8 [ R[q 8, 4], R[q 4, ] ) ( a, R[g, 5] ] [ R[g, 6], R[g, 7] ] 9 [ R[q 4, ], R[q 9, ] ) ( a, R[g, 5] ] [ R[g, 6], R[g, 7] ] [ R[g, 4], R[g 3, 3] ] 0 a = R[q 9, ] ( a, R[g, 5] ] [ R[g, 6], R[g, 4] ) ( R[g, 4], R[g 3, 3] ] ( R[q 9, ], R[q 0, ] ] ( a, R[g, 5] ] [ R[g, 6], R[g, 4] ] [ R[g, 7], R[g 3, 3] ] ( R[q 0, ], R[q 8, 5] ] ( a, R[g, 5] ] [ R[g, 6], R[g, 4] ] 3 ( R[q 8, 5],, 3] ] [ R[g, 4], R[g, 4] ] 4 [, R[q, 3] ] ( a, R[g, 4] ] 3 5 ( R[q, 3],, ] ] 34

length 4 3.0.5.0 0.5 0.0 0.5.0.5 a Figure 4.: The shaded region is the positive region in which the linear weights are positive. Notice that the horizontal axis is a and the vertical axis is the interval length b a. 35