Solving numerically nonlinear systems of balance laws by multivariate sigmoidal functions approximation Danilo Costarelli & Renato Spigler
Computational and Applied Mathematics ISSN 0101-8205 Volume 37 Number 1 Comp. Appl. Math. (2018) 37:99-133 DOI 10.1007/s40314-016-0334-8
1 23
Your article is protected by copyright and all rights are held exclusively by SBMAC Sociedade Brasileira de Matemática Aplicada e Computacional. This e-offprint is for personal use only and shall not be self-archived in electronic repositories. If you wish to self-archive your article, please use the accepted manuscript version for posting on your own website. You may further deposit the accepted manuscript version in any repository, provided it is only made publicly available 12 months after official publication or later and provided acknowledgement is given to the original source of publication and a link is inserted to the published article on Springer's website. The link must be accompanied by the following text: "The final publication is available at link.springer.com”.
1 23
Author's personal copy Comp. Appl. Math. (2018) 37:99–133 https://doi.org/10.1007/s40314-016-0334-8
Solving numerically nonlinear systems of balance laws by multivariate sigmoidal functions approximation Danilo Costarelli1 · Renato Spigler2
Received: 5 May 2015 / Revised: 8 March 2016 / Accepted: 21 March 2016 / Published online: 7 April 2016 © SBMAC - Sociedade Brasileira de Matemática Aplicada e Computacional 2016
Abstract A numerical method for solving systems of nonlinear one-dimensional balance laws, based on multivariate sigmoidal functions approximation, is developed. Constructive approximation theorems are first established in both, uniform and L p norms. A priori as well as a posteriori error estimates are derived for the numerical solutions, when various kinds of sigmoidal functions, such as unit step, logistic and Gompertz functions, are chosen. The residual of the numerical method is also estimated. Numerical examples are given to test the performance of the algorithm, a comparison with the Godunov method is made concerning accuracy and computational cost. Finally, the numerical stability of the method is analyzed. Keywords Nonlinear systems of balance laws · Multivariate sigmoidal functions approximation · Unit step functions · Logistic functions · Gompertz functions Mathematics Subject Classification 65M99 · 41A30 · 35L65
1 Introduction In this paper, a numerical method is developed for solving systems of nonlinear onedimensional balance laws. The method is based on sigmoidal functions approximation.
To Peter D. Lax on his 90th birthday. Communicated by Armin Iske.
B
Danilo Costarelli
[email protected];
[email protected] Renato Spigler
[email protected]
1
Department of Mathematics and Computer Science, University of Perugia, 1, Via Vanvitelli, 06123 Perugia, Italy
2
Section of Mathematics, Department of Mathematics and Physics, University “Roma Tre”, 1, Largo S. Leonardo Murialdo, 00146 Rome, Italy
123
Author's personal copy 100
D. Costarelli, R. Spigler
Constructive multivariate approximation theorems are first developed, for approximating functions in both, uniform and L p norms (see Sect. 2). These constructive results are crucial to determine the explicit form of the numerical solutions. Recall that a function, σ : R → R, is termed “sigmoidal” whenever lim x→−∞ σ (x) = 0 and lim x→+∞ σ (x) = 1. Functions of this kind play a fundamental role in the theory of neural networks, where they are used as activation functions of the network. Neural networks are widely used in a number of applications to model real-world problems, see e.g., Cybenko (1989), Lenze (1992) and Pinkus (1999). Their flexibility makes them suitable to approximate functions of one or several variables, uniformly or in L p , see Barron (1993), Chen (1993), Gao and Xu (1993), Cybenko (1989), Costarelli (2014, 2015), Costarelli and Spigler (2013a, c, d, 2014b, 2015), Costarelli and Vinti (2015), Lewicki and Marino (2003), Light (1992) and Mhaskar and Micchelli (1992). The idea of using sigmoidal functions in numerical analysis was adopted in Costarelli and Spigler (2013b, 2014a), where the authors succeeded in exploiting sigmoidal functions to solve Volterra integral and integro-differential equations by collocation. Moreover, approximation theorems with respect to the Hausdorff metrics, and based on sigmoidal functions, have been recently applied in research problems involving fuzzy sets and systems, signal theory, antenna feeding techniques, and image processing, see e.g., Kyurkchiev and Markov (2015a, b) and Sendov (1990). In this paper, we first consider the case of single scalar balance law in one dimension (Sect. 3), of the form ⎧ ⎨ u t + f (u)x = s(x, t, u), a < x ≤ b, 0 < t ≤ T u(x, 0) = u 0 (x), x ≥a (I) ⎩ u(a, t) = 0, t > 0, on the bounded rectangle R := [a, b] × [0, T ], T > 0, where f , s, and u 0 are sufficiently smooth functions, see e.g., Lax (1972), Yong (2004) and Parés (2006). When the source function, s(x, t, u), is nonpositive, the equation in (I) is dissipative, and the conservation properties are destroyed by the presence of the source. Consequently, numerical schemes designed to preserve such a property have been observed to perform not so well, see e.g., Costarelli et al. (2013). Our method is based on the integral formulation of the nonlinear balance laws in (I), on the cells [xi , xi+1 ] × [t j , t j+1 ], see Costarelli and Spigler (2013a) and Isaacson and Temple (1995). We first approximate the function u x by a finite linear combination of unit step functions, and then obtain an approximation for the solution of (I), u, upon integration. In the approximating formula, there are several unknown coefficients to determine. Inserting such a formula in the integral equation derived from (I), we obtain a sequence of linear recursive formulae, where from the aforementioned coefficients can be computed (see Sect. 3). We stress that this is likely the most important feature of our numerical method. In fact, this represents a strong simplification, since the solution to a nonlinear equation is obtained through linear recursive formulae. We stress that no linearization of the original equations is required in our numerical method, at variance with other methods, such as for instance in some applications of the Godunov method for nonlinear systems of balance laws, see e.g., Isaacson and Temple (1995), LeVeque (1998, 2002) and Roe (1987). Our formulae involve a number of integrals that can be computed either explicitly or by numerical quadratures. We are also able to derive a priori as well as a posteriori estimates for the numerical errors and for residuals of the scheme (see Sect. 4). Since our numerical method is based on the integral formulation of (I), the natural setting for the approximate solutions, SN u, is the space L 1 . Note that here we define N := (N1 , N2 ) ∈
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
101
N2 , where (N1 + 1) × (N2 + 1) denote the numbers of superposed sigmoidal functions used
to represent the numerical solutions. Approximate solutions, given in terms of unit step functions, are of course discontinuous. To obtain smooth approximate solutions, we may adopt other kinds of sigmoidal functions, for instance logistic or Gompertz functions. The ensuing behavior can clearly be observed, exploiting the peculiarity by which the coefficients of the various approximations do not depend on the special choice of the sigmoidal functions adopted. The numerical errors can be seen to be now smaller than those made using unit step functions. In Sect. 5, our method is extended to handle the case of systems of balance laws. In the numerical examples, the performance of the method is compared with that of the Godunov method (Isaacson and Temple 1995; LeVeque 1998, 2002; Tadmor 1984, 2012) (see Sect. 6). The latter, run with very fine stepsizes, was considered as providing the correct results, and hence it was used for reference in some examples. In some other instances, the Godunov solutions and those computed by our method have been compared with the analytic solutions. In the latter cases, it turns out that the method based on sigmoidal functions does perform better than the Godunov method. Moreover, we observe that our solutions, SN u, are semianalytical in nature, and defined on the whole domain R. Therefore, we are able to obtain a global numerical solution using small values of N1 and N2 . On the other hand, using the Godunov method with stepsizes related to the values of N1 and N2 (where N1 is related to the space discretization and N2 to the time), we obtain poorly accurate results and only at some points inside the domain. Moreover, the numerical stability of the method is discussed through numerical experiments, which show that, a condition similar to the CFL of the Godunov method, is important to guarantee the stability of the method. At the end, we tested the numerical method based on sigmoidal functions, for solving both, scalar equations as well as systems. In particular, we also considered the case of scalar balance laws affected by shocks. In Sect. 7, finally, the high points of the paper are summarized, and some final remarks and observations are made.
2 Approximation by sigmoidal functions Recall that a function σ : R → R is called a “sigmoidal function” whenever lim x→−∞ σ (x) = 0 and lim x→+∞ σ (x) = 1. Sometimes, boundedness, continuity, and/or monotonicity are prescribed in addition. In Chen et al. (1992) and Costarelli and Spigler (2013a), constructive techniques have been developed to approximate functions uniformly on bounded intervals, or even in the L p sense, by sigmoidal functions. In what follows, we extend the approximation theorems established in Costarelli and Spigler (2013a) for functions of one variable, to the multivariate case. This generalization is required to be able to apply such results to the approximation of solutions to first-order nonlinear balance laws. We first recall the following. Theorem 2.1 (Costarelli and Spigler 2013a) Let σ be a bounded sigmoidal function, and let f ∈ C 0 [a, b] be fixed. For every ε > 0, there exist N ∈ N+ and w > 0 (depending on N and σ ), such that the function
(G N f )(x) :=
N [ f (xk ) − f (xk−1 )] σ (w(x − ξk )) + f (x0 ) σ (w(x − ξ0 )), k=1
123
Author's personal copy 102
D. Costarelli, R. Spigler
where xk := a + kh, h := (b − a)/N , and ξ0 := a − h, ξk := xk , for every k = 1, . . . , N , is such that G N f − f ∞ := max |(G N f )(x) − f (x)| < ε. x∈[a,b]
To better understand the following proofs, we precise some details of the proof of Theorem 2.1 given in Costarelli and Spigler (2013a). In particular, we specify as the parameters N and w > 0 are chosen for any fixed ε > 0. Remark 2.2 We first observe that f ∈ C 0 [a, b] is uniformly continuous. Therefore, correspondingly to the parameter η = ε ( f ∞ + 2σ ∞ + 2)−1 , there exists δ > 0 such that | f (x) − f (y)| < η, when x, y ∈ [a, b] are such that |x − y| < δ. Thus, N ∈ N+ is chosen sufficiently large, in such a way that h := (b − a)/N < δ/2 and 1/N < η. We point out that N depends on ε, f ∞ and σ ∞ . Now, in order to determine the parameter w > 0, it is important to keep in mind the definition of sigmoidal function. In fact, it is easy to see that there exists a constant w > 0 such that, for every w ≥ w the following holds: 1. |σ (wx) − 1| < 1/N , for every x ≥ h; 2. |σ (wx)| < 1/N , for every x ≤ −h. For more details about the choice of w, see Costarelli and Spigler (2013a, Lemma 2.1). We can now extend this theorem to the multivariate case, by a constructive proof, and consider, just for notational simplicity, the bivariate case. Denote by R := [a1 , b1 ]×[a2 , b2 ] ⊂ R2 the closed bounded intervals of R2 (R being the corresponding open rectangles), and let f ∈ C 0 (R), and ε > 0 fixed. Let the variable y ∈ [a2 , b2 ] be fixed. Then, we can use Theorem 2.1 to approximate the functions f (·, y) ∈ C 0 [a1 , b1 ], y ∈ [a2 , b2 ], superposing sigmoidal functions. This means that there exist N1 ∈ N+ and w1 > 0 (depending on N1 and σ ), such that (G N1 f )(·, y) :=
N1 k1 =1
=:
N1 k1 =0
[ f (xk1 , y) − f (xk1 −1 , y)] σ (w1 (· − ξk11 )) + f (x0 , y) σ (w1 (· − ξ01 )) f k1 (y) σ (w1 (· − ξk11 )),
where xk1 := a1 + k1 · h 1 , h 1 := (b1 − a1 )/N1 , ξ01 := a1 − h 1 , and ξk11 := xk1 , for every k1 = 1, . . . , N1 , can be estimated as ε (1) (G N1 f )(·, y) − f (·, y)∞ < , 2 for every y ∈ [a2 , b2 ]. Remark 2.3 We stress that N1 and w1 > 0 can be chosen independently of y ∈ [a2 , b2 ]. In fact, proceeding as in Remark 2.2, we set, for every fixed ε > 0, η = 2ε ( f ∞ + 2σ ∞ + 2)−1 , where, in this case, f ∞ is considered on the whole R. Now, if δ > 0 denotes the parameter of the uniform continuity of f corresponding to η, we can choose N1 ∈ N+ such that: h 1 := (b1 −a1 )/N1 < δ/2, and 1/N1 < η. We stress again that N1 depends on ε, f ∞ and σ ∞ . Moreover, the parameter w1 is determined by using the definition of sigmoidal function, and it depends on σ and N1 (see Remark 2.2 again). It is clear from the construction
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
103
above that N1 depends on f but only through the “global” constant f ∞ and the parameter δ of the uniform continuity. Then, the pointwise behavior of f does not affect the values of N1 and w1 . Moreover, for every f k1 ∈ C 0 [a2 , b2 ], applying again Theorem 2.1 with ε/[2 σ ∞ (N1 + 1)] in place of ε, we infer that there exist N2 ∈ N+ (depending on N1 ), and w2 > 0 (depending on σ , N2 and hence also on N1 ), such that N2
(G N2 f k1 )(y) :=
k2 =1
[ f k1 (yk2 ) − f k1 (yk2 −1 )] σ (w2 (y − ξk22 )) + f k1 (y0 ) σ (w2 (y − ξ02 )),
where yk2 := a2 + k2 · h 2 , h 2 := (b2 − a2 )/N2 , ξ02 := a2 − h 2 , and ξk22 := yk2 , for every k2 = 1, . . . , N2 , can be estimated as ε G N2 f k1 − f k1 ∞ < , (2) [2 σ ∞ (N1 + 1)] for every k1 = 0, 1, . . . , N1 . Remark 2.4 Clearly, N2 and w2 do not depend on y ∈ [a2 , b2 ], and for what were observed in Remarks 2.2 and 2.3, N2 and w2 do not depend on k1 . Moreover, if we repeat to choose N2 the same construction made to determine N1 , it turns out that N1 + 1 (3) 2σ ∞ ( f ∞ + 2σ ∞ + 2). ε In particular, assuming N1 as in Remark 2.3, i.e., N1 > (2/ε)( f ∞ + 2σ ∞ + 2), and choosing N2 > N1 σ ∞ (N1 + 1), condition (3) turns out to be satisfied. N2 >
We then define (G N f )(x, y) :=
N1 k1 =0
=:
(G N2 f k1 )(y) σ (w1 (x − ξk11 ))
N2 N1 k1 =0 k2 =0
f k1 ,k2 σ (w1 (x − ξk11 )) σ (w2 (y − ξk22 )),
where N := (N1 , N2 ), and obtain, from inequalities (1) and (2), G N f − f ∞ := max |(G N f )(x, y) − f (x, y)| (x,y)∈R
N1 1 ≤ max (G N f )(x, y) − f k1 (y) σ (w1 (x − ξk1 )) (x,y)∈R k1 =0 N1 + max f k1 (y) σ (w1 (x − ξk11 )) − f (x, y) (x,y)∈R k =0 1 < max
N1 (G N f k )(y) − f k (y) σ (w1 (x − ξ 1 )) + ε 2 1 1 k1 2
(x,y)∈R k =0 1
≤ σ ∞
N1 k1 =0
G N2 f k1 − f k1 ∞ +
ε < ε. 2
123
Author's personal copy 104
D. Costarelli, R. Spigler
Clearly, all considerations made here can be extended to functions of any number of variables. Hence, the following theorem holds. Theorem 2.5 Let σ be a bounded sigmoidal function, and let f ∈ C 0 (R), where R := [a1 , b1 ] × · · · × [an , bn ] ⊂ Rn . For every ε > 0, there exist N ∈ Nn+ , being N := (N1 , . . . , Nn ), the positive numbers w1 , . . . , wn (depending on N1 , . . . , Nn and σ ), and f k1 ,...,kn ∈ R, ki = 0, . . . , Ni , i = 1, . . . , n, such that, the function (G N f )(x1 , . . . , xn ) :=
N1
···
k1 =0
Nn kn =0
f k1 ,...,kn σ (w1 (x1 − ξk11 )) · · · σ (wn (xn − ξknn )),
where ξ0i := ai − h i , and ξki i := ai + ki · h i , for every ki = 1, 2, . . . , Ni , h i := (bi − ai )/Ni , i = 1, . . . , n, is such that G N f − f ∞ :=
max
(x1 ,...,xn )∈R
|(G N f )(x1 , . . . , xn ) − f (x1 , . . . , xn )| < ε.
We emphasize that here the continuity of σ is not required, and that, the proof of Theorem 2.5 is constructive. Moreover, as it was observed above, all values f k1 ,...,kn are computable differences of values of f at equally spaced nodes. Remark 2.6 The coefficients in the sums G N f in the previous theorem do not depend on the specific choice of σ . Therefore, a number of formulae can be provided for approximating f , using different sigmoidal functions, and this can be done keeping the same coefficients. Remark 2.7 Given a bounded sigmoidal function, for any fixed f ∈ C 0 (R), R ⊂ Rn , and for every ε > 0, correspondingly to |R|−1/ p ε (|R| denoting the Lebesgue measure of R), with 1 ≤ p < ∞, there exist N ∈ Nn+ and the positive numbers w1 , . . . , wn , such that G N f − f ∞ < |R|−1/ p ε. Thus, G N f also satisfies the inequality
1/ p
G N f − f p :=
|(G N f )(x1 , . . . , xn ) − f (x1 , . . . , xn )| dx1 · · · dxn p
R
p 1/ p ≤ |R| G N f − f ∞ < ε, for every 1 ≤ p < ∞. Remark 2.7 allow us to prove, by constructive arguments, that every function in L p (R) can be approximated in L p by sigmoidal functions. In fact, Theorem 2.8 Let σ be a bounded sigmoidal function, and f ∈ L p (R), 1 ≤ p < ∞, with R := (a1 , b1 ) × · · · × (an , bn ) ⊂ Rn . For every ε > 0, there exist N ∈ Nn+ , N := (N1 , . . . , Nn ), m ∈ N+ , the positive parameters w1 , . . . , wn (depending on N1 , . . . , Nn , and σ ), such that, the function G N f m , with f m ∈ C ∞ (R) defined as ρm (x1 − y1 , . . . , xn − yn ) f (y1 , . . . , yn ) dy1 · · · dyn , (4) f m (x1 , . . . , xn ) := R
for every (x1 , . . . , xn ) ∈ R, being (ρm )m∈N+ a sequence of mollifiers, is such that G N f m − f p < ε,
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
105
Proof The proof is constructive. Let (ρm )m∈N+ be a given sequence of mollifiers. We first define f : Rn → R with f ∈ L p (Rn ), 1 ≤ p < ∞, such that f (x1 , . . . , xn ) := f (x1 , . . . , xn ) for (x1 , . . . , xn ) ∈ R and f (x1 , . . . , xn ) := 0 otherwise. Moreover, we define f m as in (4), i.e., as the convolution f m := ρm ∗ f , m ∈ N+ . From the property of mollifiers (Brezis 2011), it follows that f m ∈ C ∞ (Rn ) for every m ∈ N+ , and the sequence ( f m )m∈N+ converges to f in L p (Rn ), and also converges to f in L p (R). Let ε > 0 be fixed. From the previous considerations and by Remark 2.7, we can write ε ε G N f m − f p ≤ G N f m − f m p + f m − f p < + = ε, 2 2 for m ∈ N+ sufficiently large, for suitable N ∈ Nn+ , and w1 > 0, . . . , wn > 0 [which depend on N = (N1 , . . . , Nn ) and σ ].
As a consequence of Theorem 2.8, the set of all finite linear combinations of elements in the set
Nn := σ w1 x1 − ξk11 · · · σ wn xn − ξknn , ki = 0, 1, . . . , Ni , i = 1, . . . , n , (5) for suitable positive values of w1 , . . . , wn (depending on N = (N1 , . . . , Nn )), is dense in L p (R), 1 ≤ p < ∞, for every N ∈ Nn+ . We stress once more that the proof of Theorem 2.8 is constructive, and by choosing a specific sequence of mollifiers, a precise analytic form for the sums G N f m can be obtained. Theorem 2.8 also provides a multivariate extension of the L p approximation theory by sigmoidal functions earlier developed in Costarelli and Spigler (2013a) in one dimension. A useful example of sigmoidal function is given by the logistic function, defined as σ (t) := (1 + e−t )−1 , t ∈ R. Logistic functions are widely used in many fields, such as biology and demography, see e.g., Brauer and Castillo Chavez (2001) and Hritonenko and Yatsenko (2006). Using σ in Theorems 2.5 and 2.8, we formulate the following. Corollary 2.9 Let σ (t) := (1 + e−t )−1 , t ∈ R. For every given f ∈ C 0 (R), R ⊂ Rn , and for every ε > 0, there exists N ∈ Nn+ , N = (N1 , . . . , Nn ), such that G N f − f ∞ < ε, where the scaling parameters wi , in the formula for G N f, are such that wi > (Ni /(bi − ai )) log(Ni − 1), i = 1, . . . , n. Moreover, for every f ∈ L p (R), 1 ≤ p < ∞, R ⊂ Rn , and for every ε > 0, there exist N ∈ Nn+ and m ∈ N+ , such that G N f m − f p < ε, where the scaling parameters in G N f m are the same defined above. We stress that the convergence estimate provided by Corollary 2.9 holds for G N f and G N f m whatever the parameters wi , with wi ≥ (Ni /(bi − ai )) log(Ni − 1) might be chosen. Corollary 2.9 represents a multivariate extension of a corollary earlier established by the authors in Costarelli and Spigler (2013a) for logistic functions. Its proof follows immediately, since Theorem 2.1 holds with σ = σ , where w > (N /(b − a)) log(N − 1) for every fixed N ∈ N+ (Costarelli and Spigler 2013a). Another interesting and useful example of sigmoidal functions is provided by the Gompertz functions, defined as σαβ (t) := e−α e
−βt
, t ∈ R,
(6)
123
Author's personal copy 106
D. Costarelli, R. Spigler
where α ∈ R, β > 0 represent an effective translation and a scaling, respectively. Gompertz functions find applications, e.g., in modeling tumor growth and in the description of population aging (Albano and Giorno 2009; Korf et al. 2012). Similarly to the case of logistic functions, we have the following. −βt
Corollary 2.10 Let σαβ := e−α e , t ∈ R, α, β > 0. For every f ∈ C 0 (R), R ⊂ Rn , and for every ε > 0, there exists N ∈ Nn+ such that G N f − f ∞ < ε, where the scaling parameters are now such that 1 Ni − 1 Ni max log − log wi > , β (bi − ai ) α Ni
log 1 log Ni , α
(7)
i = 1, . . . , n. Moreover, for every f ∈ L p (R), 1 ≤ p < ∞, R ⊂ Rn , and for every ε > 0, there exist N ∈ Nn+ and m ∈ N+ such that G N f m − f p < ε, where the scaling parameters are as above. Again, we stress that the convergence estimate given in Corollary 2.10 holds for G N f and G N f m defined for every chosen wi satisfying (7). Also in this case the proof follows immediately from Theorem 2.1, choosing σ = σαβ , and thus obtaining 1 1 N − 1 N , log max log − log , log N w> β (b − a) α N α for every N ∈ N+ , see Costarelli and Spigler (2013a). Finally, we consider the special case of unit step (or Heaviside) functions, H (t) := 1 for t ≥ 0 and H (t) := 0 for t < 0. As in Costarelli and Spigler (2013a, b) for the univariate case, here the sums G N f and G N f m in Theorems 2.5 and 2.8 turn out to be independent of the scaling parameters. For instance, if f ∈ C 0 (R), R ⊂ Rn , the sums G N f become (G N f )(x1 , . . . , xn ) :=
N1 k1 =0
···
Nn kn =0
f k1 ,...,kn H x1 − ξk11 · · · H xn − ξknn ,
(8)
where ξ0i := ai − h i , and ξki i := ai + ki · h i for ki = 1, . . . , Ni , h i := (bi − ai )/Ni , i = 1, . . . , n. The same happens in case of L p approximations.
3 Nonlinear scalar balance laws In this section, we study initial-boundary value problems for nonlinear scalar one-dimensional balance laws, of the form ⎧ ⎨ u t + f (u)x = s(x, t, u), a < x ≤ b, 0 < t ≤ T, u(x, 0) = u 0 (x), x ≥ a, (9) ⎩ u(a, t) = 0, t > 0,
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
107
where a, b ∈ R, T > 0, f , s, and u 0 are smooth and (9) has a smooth global in time solution. Moreover, we assume that the compatibility condition u 0 (a) = 0
(10)
is satisfied. We first rewrite (9) in the integral form (see e.g., LeVeque 1998, 2002; Trèves 1975) t j+1 xi+1 [u(x, t j+1 ) − u(x, t j )] dx + [ f (u( xi+1 , t)) − f (u( xi , t))] dt xi
=
xi+1
xi
tj
t j+1
tj
s(x, t, u(x, t)) dx dt,
(11)
xi+1 ∈ [a, b], and tj, t j+1 ∈ [0, T ]. Equation (11), written for for every pair of nodes, xi , suitable fixed nodes in [a, b] × [0, T ], will be used to construct our numerical scheme. In what follows, we consider the sums (G N u x )(x, t) =
N2 N1 k1 =0 k2 =0
u k1 ,k2 H x − ξk11 H t − ξk22 ,
(12)
for suitable values of u k1 ,k2 , for every (x, t) ∈ R := [a, b] × [0, T ], T > 0, N1 , N2 ∈ N+ , ξ01 = a − h 1 , ξ02 = −h 2 , ξk11 := a + k1 · h 1 , ξk22 := k2 h 2 , k1 = 1, . . . , N1 , k2 = 1, . . . , N2 , h 1 := (b − a)/N1 , h 2 := T /N2 . The quantity G N u x is intended to approximate u x on R, in terms of unit step functions, u being the solution to (11) and hence to (9). The coefficients u k1 ,k2 s are unknown so far. At the points (x, 0) of the boundary of the domain R, we have u x (x, 0) = u 0 (x). Being (G N u x )(x, 0) =
N1 k1 =0
u k1 ,0 H x − ξk11 ,
and being the initial condition, u 0 (x), a known smooth function, we can replace the terms approximating such function with the function itself. In practice, we replace in (G N u x )(x, t) the sum kN11=0 u k1 ,0 H (x − ξk11 ) with the known data, u 0 (x). The sums approximating u x reduce then to N u x )(x, t) := (G
N1 N2 k1 =0 k2 =1
u k1 ,k2 H x − ξk11 H t − ξk22 + u 0 (x),
(13)
for every (x, t) ∈ R. Now, being also u a smooth function and u 0 (a) = 0, we obtain, upon integration, x x u(x, t) = u x (y, t) dy + u(a, t) = u x (y, t) dy, a
a
N u x , we can define the functions and thus, replacing u x with its approximations of the form G x N u x )(y, t) dy, (x, t) ∈ R. (G (14) (SN u)(x, t) := a
Here, (SN u)(x, t) are our approximate solutions to (9), for every N ∈ N2 .
123
Author's personal copy 108
D. Costarelli, R. Spigler
Using again the fact that u 0 (a) = 0, (14) can also be written as (SN u)(x, t) =
N2 N1 k1 =0 k2 =1
= (x − a)
u k1 ,k2 H t − ξk22
N2 k2 =1
x
a
H y − ξk11 dy + u 0 (x)
N2 1 −1 N
u 0,k2 H t − ξk22 + u k1 ,k2 x − ξk11 H t − ξk22 k1 =1
ξk1 2. Clearly, in this case the method and its notations would
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
111
become very involved. Extensions to one-dimensional systems of balance laws will be made below, see Sect. 5. Remark 3.2 The numerical method described in this section cannot be applied to balance laws with discontinuous solutions. In fact, to show that the SN u, N ∈ N2 are approximations of u, the regularity of u and hence, in particular, also the continuity of u x , have been exploited. Balance laws with smooth solutions are not the most common. However, some models of this kind do exist. In literature, it is well-known that dissipative sources entering balance laws may contrast the formation of shocks in the solutions. In Alí and Jungel (2003), for instance, a hydrodynamic model is described for plasmas of electrons and positively charged ions, consisting of both, balance and conservation laws, having smooth solutions. As for the boundary conditions, in this paper we consider problems where data are imposed on the left-end side of the space domain, and hence, typically, in this case the characteristics point inward. Clearly, this is not the only instance that one may face, but, on the other hand, it is encountered in several applications, see Budzianowski and Miller (2009) and Byrne and Norbury (1994).
4 The numerical errors In what follows, eN (x, t) := u(x, t) − (SN u)(x, t), (x, t) ∈ R,
(17)
will denote the numerical error affecting our method. Here, u is the solution to problem (9) while SN u is its approximation at the points inside the rectangle R = [a, b] × [0, T ], T > 0, for N ∈ N2 . First of all, we observe that u satisfies the integral equation t (18) u(x, t) = u(x, t j ) + [s(x, τ, u) − f (u)x ] dτ, tj
obtained upon integrating the equation in (9) between t j and t, t > t j . Then, consider, for every fixed N ∈ N2 and for every t ∈ [0, T ], the index
jmax := max j : t j < t, j = 0, 1, . . . , N2 − 1 , where the t j s are the nodes defined in Sect. 3. Using then (18), we obtain t
u(x, t) − (SN u)(x, t) = u x, t jmax − (SN u)(x, t) + [s(x, τ, u) − f (u)x ] dτ. t jmax
Note that (SN u)(x, t) = (SN u)(x, t jmax ). Recalling the definition (17), this equation can be written as t
(19) eN (x, t) = eN x, t jmax + [s(x, τ, u) − f (u)x ] dτ. t jmax
Now, being u, s, and f smooth, u turns out to be bounded on R. Therefore, there exists M > 0 such that |s(x, τ, u) − f (u)x | ≤ M
(20)
123
Author's personal copy 112
D. Costarelli, R. Spigler
for every (x, t) ∈ R, where M depends only on the data of problem (9). Hence, from (19) and (20), |eN (x, t)| ≤ |eN (x, t jmax )| + M(t − t jmax ) ≤ |eN (x, t jmax )| + Mh 2 ,
(21)
where h 2 := T /N2 , N := (N1 , N2 ). Given that (21) holds for every (x, t) ∈ R, we can estimate |eN (x, t jmax )| exploiting (21) again, obtaining |eN (x, t)| ≤ |eN (x, t jmax −1 )| + 2Mh 2 , and proceeding by further jmax − 1 replacements in the previous equation, we have |eN (x, t)| ≤ |eN (x, t jmax −2 )| + 3Mh 2 ≤ · · · ≤ |eN (x, t0 )| + ( jmax + 1)Mh 2 . Since |eN (x, t0 )| = |(SN u)(x, 0) − u 0 (x)| = 0, we finally obtain the estimate |eN (x, t)| ≤ ( jmax + 1)Mh 2 ,
(22)
for every (x, t) ∈ R = [a, b] × [0, T ] and N ∈ N2 . The error estimate in (22) is an a priori estimate in the sense that it is obtained using constants only depending on the data of the original problem in (9). In particular, such an error estimate depends only on h 2 , hence it decreases as 1/N2 as N2 increases, and the mesh-size h 1 does not enters the estimate. All this is reasonable since, as it was observed in Remark 2.4, the values of N1 and N2 are related to each other. We infer from (22) that eN ∞ ≤ T M =: K 1 < +∞,
(23)
SN u∞ ≤ T M + u∞ =: K 2 < +∞,
(24)
and moreover
for every N ∈ The performance of our method can also be assessed analyzing the residuals of the equation in (9), that we define, using (18), as t N u x )] dτ, RN (x, t) := (SN u)(x, t) − (SN u)(x, t jmax ) − [s(x, τ, SN u) − f (SN u)(G N2 .
t jmax
(25) N u x is defined in (13). As it was for every (x, t) ∈ [a, b] × [0, T ] and N ∈ N2 , where G observed before, we have in general (SN u)(x, t) = (SN u)(x, t jmax ), and hence the definition of the residual (25) reduces to t N u x )] dτ, RN (x, t) := [s(x, τ, SN u) − f (SN u)(G t jmax
for every (x, t) ∈ [a, b] × [0, T ] and N ∈ N2 . Using the boundedness of SN u and the smoothness of f and s, we obtain 1 , | f (SN u)| ≤ M 2 , |s(x, t, SN u)| ≤ M 1 and M 2 , for every (x, t) ∈ [a, b] × [0, T ] and N ∈ N2 . We for some positive constants M 1 and M 2 do not depend on N ∈ N2 , since (24) holds for every stress that the constants M N ∈ N2 .
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
113
We can now establish an estimate for RN (x, t) proceeding as follows: t t N u x )(x, τ )| dτ |RN (x, t)| ≤ |s(x, τ, SN u)| dτ + | f (SN u)| |(G t jmax
1 h 2 + M 2 ≤M 2 +M
t jmax
t
N u x )(x, τ )| dτ ≤ M 1 h 2 |(G
t jmax t
2 |u 0 (x)| dτ + M
t jmax
t N2 N1 u k ,k H (x − tk ) H (τ − tk ) dτ. 1 2 1 2 t jmax
k1 =0 k2 =1
We now define (similarly to jmax ), i max := max {i : xi < x, i = 0, 1, . . . , N2 − 1} , and thus the previous estimate for |RN (x, t)| becomes: ⎛
⎞ jmax i max u k ,k ⎠ , 1 h 2 + M 2 h 2 ⎝|u 0 (x)| + |RN (x, t)| ≤ M 1 2
(26)
k1 =0 k2 =1
for every N ∈ N+ . The bound in (26) can be considered as an a posteriori estimate, since the computed numerical coefficients u k1 ,k2 appear. We observe finally that the estimate in (26) provides a measure of how well the numerical solutions SN u approximate the exact solution to the original problem in (9). Let now σ be a bounded sigmoidal function, and assume that it is, for simplicity, strictly increasing. Accordingly to our previous notation, we define as σ eN (x, t) := u(x, t) − (SNσ u)(x, t), (x, t) ∈ R,
(27)
the error inherent to our numerical algorithm, when the solution to (9) is represented through the sigmoidal function σ . From the integral equation in (18), we obtain t u(x, t) − (SNσ u)(x, t) = u(x, t jmax ) − (SNσ u)(x, t) + [s(x, τ, u) − f (u)x ] dτ, t jmax
(SNσ u)(x, t)
where jmax was defined above. In general,
= (SNσ u)(x, t jmax ) (while before we had that (SN u)(x, t) = (SN u)(x, t jmax )), then, we can write t σ eN (x, t) = eN (x, t jmax ) + (SN u)(x, t) − (SNσ u)(x, t) + [s(x, τ, u) − f (u)x ] dτ, t jmax
(28) for every (x, t) ∈ R, with eN defined in (27). Now, x N2 1 −1 N σ 1 = u)(x, t) − (S u)(x, t) u H (y − ξ ) dy H (t − ξk22 ) (SN k1 ,k2 k1 N a k1 =0 k2 =1 x N N2 1 −1 u k1 ,k2 σ (w1 (y − ξk11 )) dy σ (w2 (t − ξk22 )) − a k1 =0 k2 =1 ≤
N2 N 1 −1 k1 =0 k2 =1
|u k1 ,k2 |
a
x
H (y − ξk11 ) dy H (t − ξk22 ) − σ (w2 (t − ξk22 ))
123
Author's personal copy 114
D. Costarelli, R. Spigler
+
N N2 1 −1 k1 =0 k2 =1
jmax
≤
x
a
H (y − ξ 1 ) − σ (w1 (y − ξ 1 )) dy k1 k1
|u 0,k2 |(x − a) 1−σ (w2 (t − ξk22 ))
k2 =1
+
|u k1 ,k2 | σ (w2 (t − ξk22 ))
jmax N 1 −1 k1 =1 k2 =1 ξk1 0. Here F, U0 : Rm → Rm , and S : Rm+2 → Rm are smooth, see e.g., Gosse (2002), Lax (1973), LeVeque (1998, 2002) and Trèves (1975). Suppose that (37) has a global in time smooth solution and the “compatibility condition” U0 (a) = 0 is satisfied. We want to determine an approximate solution to U (x, t) of the form SN U , N := (N1 , N2 ) ∈ N2 , with each component given by (SN u ν )(x, t) := (x − a)
N2 k2 =1
+
N2 N1 k1 =1 k2 =1 ξk1 0, ν = 1, . . . , m. Note that SN u ν is computed as done in Sect. 3, that is approximating first each components of Ux by unit step functions, and then integrating. Here, u 0ν , Fν , and Sν are the components of U0 , F, and S, respectively. The same notation of Sect. 3 is adopted for ξk11 , ξk22 , xi , and t j .
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
117
In order to determine the coefficients in (38), we consider the integral form of (37), i.e., the systems t j+1 xi+1 [U (x, t j+1 ) − U (x, t j )] dx + [F(U (xi+1 , t)) − F(U (xi , t))] dt xi
xi+1
=
xi
tj
t j+1
S(x, t, U (x, t)) dx dt,
tj
where the solution U is replaced by its prospective approximation, SN U . Proceeding as in Sect. 3, we set up some formulae, to evaluate the coefficients of each SN u ν . We first define ν := Fi,j
Fν (SN u 1 )(xi , t), . . . , (SN u m )(xi , t) dt
t j+1
tj
⎞ j j i−1 i−1 0 ⎠ = h 2 Fν⎝ u 1k1 ,k2 (xi − xk1 ) + u 01 (xi ), . . . , um k1 ,k2 (x i − x k1 ) + u m (x i ) , ⎛
k1 =0 k2 =1
k1 =0 k2 =1
for i = 0, . . . , N1 − 1, j = 1, . . . , N2 , and xi+1 t j+1
Sνi,j := Sν x, t, (SN u 1 )(x, t), . . . , (SN u m )(x, t) dx dt xi
=
tj
t j+1 xi+1 xi
tj
⎛
Sν ⎝x, t,
j i k1 =0 k2 =1
+ u 01 (x), . . . ,
i
j
k1 =0 k2 =1
u 1k1 ,k2(x − xk1 )
um k1 ,k2 (x
⎞ −
xk1 ) + u 0m (x)⎠
dx dt.
ν and Sν are independent of u ν Note that, as in case of scalar equations, all terms Fi,j k1 ,k2 , for i,j
k1 = i, . . . , N1 , k2 = j +1, . . . , N2 , for every ν = 1, . . . , m. We have, for j = 0, . . . , N2 −1, u ν0, j+1 =
" 2 ! ν ν · S + h F (0) − F 2 ν 0,j 1,j . h 21
Furthermore, u 1,1 =
$ # 2 3 2 ν ν ν ν . h · S + F − F − u 1,0 1,1 2,1 2 1 0,1 h 21
Finally, we obtain, for the general case i = 2, . . . , N1 − 1 and j = 1, . . . , N2 − 1, ⎡ ⎤ i−1 2 ν ν − Fi+1,j − h 21 u νk1 , j+1 (i − k1 + 1/2)⎦ , u i,ν j+1 = 2 · ⎣Sνi,j + Fi,j h1 k =0 1
for every ν = 1, . . . , m. Clearly, the method can be extended to general bounded sigmoidal functions, as it was made in Sect. 3 for scalar equations. Moreover, all a priori as well a posteriori estimates established for the errors in Sect. 4 can also be extended to the case of systems.
123
Author's personal copy 118
D. Costarelli, R. Spigler
6 Numerical tests In this section, we test the numerical method proposed in this paper, to solve single scalar as well as systems of nonlinear one-dimensional balance laws. We also compare the numerical solutions with those computed by the celebrated Godunov method. Example 6.1 Consider the inhomogeneous Burgers’ equations with a dissipative source, 2 u ut + = −u 2 , 2 x for x ∈ [0, 1], t ∈ [0, 1], subject to the homogeneous boundary value u(0, t) = 0, and to the initial condition u(x, 0) = u 0 (x), with u 0 (a) = 0 and u 0 (x) = e−1/x for x > 0. We tested our method using unit step functions, SN u, for several values of N = (N1 , N2 ) ∈
N2 . Recall that N1 refers to the space discretization and N2 to time discretization. In Fig. 2,
we plotted the numerical errors for Example 6.1, comparing the solution obtained by our method with that given by the Godunov method, on the rectangle R = [0, 1] × [0, 1] (see Fig. 1). More in detail, for every numerical example below, and for every pair (N1 , N2 ), the Godunov solution is computed using the same uniform grid of n 1 × n 2 points on R, where n 1 and n 2 are chosen independently of the size of N1 and N2 . The space and time discretization sizes are kept fixed and both equal to 0.01, thus, n 1 = n 2 = 101. For this reason, the CPU time needed to compute the Godunov approximate solution does not change when different values of (N1 and N2 ) are considered. Clearly, when the Godunov solution is determined at every time-node, the algorithm is implemented requiring that the CFL condition be satisfied. The source terms in the Godunov method are computed using the trapezoidal rule. Note that, in our method, based on sigmoidal functions, inequality (3), apparently, plays the role of a CFL condition. When we compare our numerical solutions (i.e., SN u) with those computed with the Godunov method, we treat the latter as the exact solutions. This can be considered reasonable, since the Godunov method was implemented with suitably small stepsizes. Such comparison is made evaluating SN u (the semi-analytical solution on R) at the same n 1 × n 2 uniform grid points used to compute the Godunov solution (the discrete solution on R).
Fig. 1 The solution of Example 6.1 computed by Godunov method
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
119
First of all, we can observe that, for small values of N1 and N2 , the maximum numerical error is of the order of 10−2 . The peaks of errors are located only at some points, especially on the boundary (b, t), t ∈ [0, T ], and on the lines (x, t j ), j = 1, . . . , N2 , x ∈ [a, b], where the approximate solution, SN u, is discontinuous, presenting jumps. This behavior can be explained by the peculiarity itself of our method, since it performs well, by its own nature, in the L 1 -norm, rather than in the · ∞ -norm. In fact, our algorithm is based on the integral formulation of the balance laws. When the numerical solutions are considered globally on the rectangle [0, 1] × [0, 1], the absolute errors turn out to be significantly smaller (see Fig. 2), approximatively of the order of 10−3 . In Table 1, the numerical errors are shown between the solution computed using unit step functions and that obtained by the Godunov method in Example 6.1. Note that the prospective “CFL condition” in (3) here is not satisfied, which suggests that the estimate in (3) is an overestimate, rather than a necessary condition. In Fig. 2 the errors are plotted for N1 = N2 = 20 and N1 = N2 = 100. As it can be observed there, the errors increase with x, and the maximum error is achieved at some isolated points, located at the right-boundary of the domain. From the results of Sect. 4 as well as from the previous numerical examples, our method appears only first order accurate. On the other hand, this algorithm, which is based on sigmoidal functions, has the peculiarity to solve general nonlinear problems constructing the coefficients needed to approximate the solution just through certain linear explicit formulae (see Sect. 3). Note that no linearization of the original equation is required as it happens, instead, e.g., in some applications of the Godunov method (see Gosse 2002; LeVeque 2002; Roe 1987). At each step, the coefficient u k1 ,k2 can be computed just knowing the coefficients obtained at the previous steps, and this is a very simple task, since all integrals in the formulae yielding u k1 ,k2 can be evaluated by straightforward numerical quadratures. Here we used the MATLAB function quadl, which is based on the recursive adaptive Lobatto rule.
Fig. 2 Discrepancy between the solutions to the problem in Example 6.1, obtained by the numerical method with unit step functions for N1 = N2 = 20 (left), N1 = N2 = 100 (right), and the Godunov method, respectively Table 1 Numerical results for Example 6.1 (N1 , N2 )
(5, 5)
(10, 10)
(20, 20)
(100, 100)
eN ∞
5.31 × 10−2
2.93 × 10−2
1.52 × 10−2
9.8 × 10−3
eN 1
5.2 × 10−3
2.8 × 10−3
1.8 × 10−3
9.9 × 10−4
123
Author's personal copy 120
D. Costarelli, R. Spigler
As it was observed above, our method exhibits peaks of errors at the boundary points (b, t). To cope with such a drawback we can compute the coefficients of the numerical solution on the rectangle [a, b + ε] × [0, T ], choosing a small value of ε > 0, typically ε = 0.1, and then considering the approximate solution only for (x, t) ∈ R. In this way, the points (b, t) turn out to be relatively far from the new right-side boundary points, (b + ε, t). Following this strategy in Example 6.1, we computed the coefficients u k1 ,k2 on [0, 1.1] × [0, 1], and then we considered the approximate solutions on [0, 1] × [0, 1]. The difference between the numerical solution computed using unit step functions with this strategy, and that computed with the Godunov method is shown in Table 2. In Fig. 3, we plotted the discrepancy for Example 6.1 between the solution computed by our method, “modified” at the boundary, and the solution provided by the Godunov method. Comparing the errors in both, the · ∞ and the · 1 norms (Tables 1, 2), it can be observed that the errors made after the aforementioned adjustment at the boundary (b, t), are smaller than those made before. Compare, in particular, Fig. 2 with Fig. 3. In what follows, we will always apply our method with the previous boundary adjustment, in order to improve the accuracy at the boundary. As it was observed concerning Figs. 2 and 3, our method performs well globally, inside R where the numerical errors are smaller than those in the outer part of the domain. In Fig. 4 the numerical errors made on the space interval [0, 1] at t = 0.5 fixed, are shown. The plots in Fig. 4 confirm that the accuracy achieved by our algorithm inside the domain is higher than the (global) accuracy obtained on the whole domain, R. Here the maximum errors are of the order of 10−2 and 10−4 , even when N1 and N2 are quite small, say 5 or 10.
Table 2 Numerical errors for Example 6.1 on [0, 1] × [0, 1] (N1 , N2 )
(5, 5)
(10, 10)
(20, 20)
(100, 100)
eN ∞
4.58 × 10−2
2.36 × 10−2
1.43 × 10−2
5.5 × 10−3
eN 1
4.9 × 10−3
2.5 × 10−3
1.6 × 10−3
8.33 × 10−4
The coefficients of SN u were computed on [0, 1.1] × [0, 1]
Fig. 3 Discrepancy between the solution of Example 6.1 obtained with the Godunov method and with the method with unit step functions with N1 = N2 = 20 (left), and N1 = N2 = 100 (right), on [0, 1.1] × [0, 1] (ε = 0.1). The errors are plotted on [0, 1] × [0, 1]
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
121
Example 6.2 As a second example, we consider a nonlinear balance law with a nonlinear dissipative source, stronger than the previous one, 2 u = −u 4 , ut + 2 x for x ∈ [0, 1], t ∈ [0, 1], subject to the homogeneous √ boundary condition u(0, t) = 0, and the initial condition u(x, 0) = u 0 (x) with u 0 (x) := x + 1 − 1 for x ≥ 0. We recall that the parameter N1 refers to the space discretization while N2 refers to that in time. Since in Sect. 4, we have shown by means of an a posteriori estimate that the residuals RN (x, t) decrease as h 2 → 0, it would be interesting to analyze the behavior of the errors when we apply our method, keeping fixed N1 and increasing only N2 . Moreover, we can also approximate the solutions using other sigmoidal functions, as observed in Sect. 3. In Example 6.2, we have adopted the logistic function, σ (x) = (1 + σ e−x )−1 , thus obtaining smooth approximations, SN u, to the solutions. We expect that the absolute errors occurring near the discontinuity points of SN u, decrease. In Fig. 5, we plotted
Fig. 4 Discrepancy between the solutions of Example 6.1 computed with the Godunov method and by SN u, with N1 = N2 = 5 (left), and N1 = N2 = 10 (right), for t = 0.5
Fig. 5 Discrepancy between the solutions to the problem in Example 6.2, obtained using Godunov method, and the method with unit step functions (left) and logistic functions (right), with N1 = 5, and N2 = 10, σ respectively. In SN u, the scaling parameters are w1 = N12 and w2 = N22 , according to Corollary 2.9
123
Author's personal copy 122
D. Costarelli, R. Spigler
the errors for Example 6.2, and in Table 3 the discrepancies, pertaining to such example, between the numerical solutions computed with SN u, SNσ u, and those obtained with the Godunov method are shown. From Table 3 it is clear that the solutions computed using logistic functions are more accurate than those obtained by unit step functions. This fact complies with the error analysis made in Sect. 4 (see 36). Let us now analyze the errors made at the points of some straight lines, located inside the domain, as we did in Example 6.1. In Fig. 6 the discrepancies between the solutions of Example 6.2, obtained with the Godunov method, and SN u, SNσ u, are plotted, at the fixed value of time, t = 1. The plots confirm that the approximate solutions obtained using logistic functions are indeed more accurate than those computed with unit step functions. Remark 6.3 In order to investigate the numerical stability of the method introduced in the present paper, we proceed as follows. We first consider the balance laws in the form (9) with a perturbed initial condition, say u(x, 0) = u 0 (x) + ε =: u ε0 (x), ε > 0 being a small parameter. Then, we compare the numerical solutions SN u ε of the perturbed problem with SN u, i.e., the solution computed by considering the unperturbed initial condition, u 0 (x). The experimental results concerning the equations of Example 6.1, obtained with small perturbation parameters, ε, on the initial data, are shown in Table 4. Here, the coefficients of the numerical solutions have been determined considering the domain [0, 1] × [0, 1.1], as made in the previous example. Table 3 Numerical errors for Example 6.2
(N1 , N2 )
(5, 5)
(5, 10)
(5, 20)
eN ∞
3.34 × 10−2
1.72 × 10−2
9.98 × 10−3
eN 1
5.2 × 10−3
2.8 × 10−3
1.6 × 10−3
1.91 × 10−2
1.3 × 10−2
8.2 × 10−3
5 × 10−3
2.9 × 10−3
1.8 × 10−3
σ eN ∞ σ eN 1
Fig. 6 Left discrepancy between the solutions of Example 6.2 computed by the Godunov method and by SN u with N1 = N2 = 5, at time t = 1. Right discrepancy between the solution computed by the Godunov method σ σ and by SN u with N1 = N2 = 5, at time t = 1. In SN u, the scaling parameters are w1 = N12 and w2 = N22 , according to Corollary 2.9
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
123
Note that, for small value of N1 and N2 , the discrepancies between SN u and SN u ε can be approximatively estimated by the parameter’s value, ε, itself. However, the numerical method seems to be unstable, even when relatively small values of N1 = N2 are considered. Moreover, it can be observed that, by reducing the value of ε, the method turns out to be less affected by ε, and the instability seems to appear only when the values of N1 = N2 are increased. Indeed, for ε = 10−1 , the method fails approximatively for N1 = N2 = 20, when ε = 10−2 it fails for N1 and N2 almost equal to 40, and finally, it can be shown that when ε = 10−3 , it breaks down approximatively for N1 = N2 = 60 (note this is not shown in Table 4). Now, recalling what has been observed in Example 6.2, i.e., that the numerical method based on sigmoidal functions approximation can be more convenient when it is applied choosing a fixed value of N1 and then increasing N2 only. It may be interesting to test its numerical stability in the latter case, or, anyway when N2 is much larger than N1 . The experimental results are reported in Table 5. From the experimental results shown in Table 5 it seems clear that, by choosing N2 sufficiently large with respect to N1 , the numerical method becomes stable, and the discrepancies SN u ε − SN u∞ can be bounded approximatively by ε. The essential fact which lets the method to become stable, seems to be the possibility to choose N2 much larger than N1 . This is clear from the numerical results, e.g., comparing the case of N1 = N2 = 20 with ε = 10−1 of Table 4 with that of N1 = 20, N2 = 100, ε = 10−1 of Table 5. The considerations made above, can be brought back to what was observed concerning Eq. (3). This is not a very sharp inequality, and it is not strictly needed to compute the numerical solution of any given balance law. However, Eq. (3) suggests that the value of N2 (i.e., the number of harmonics related to the time-variable) should be much larger than N1 . This further confirms that (3) plays the same role of the CFL condition in the Godunov method, which guarantees the numerical stability of the method. The previous remarks, have been also confirmed by the numerical results of Table 6 referred to Example 6.2. Example 6.4 Consider now the Burgers equation with a certain nonlinear source, 2 u ut + = sin u, 2 x Table 4 Analysis of the numerical stability for Example 6.1, with N1 = N2 ε
(N1 , N2 )
(5, 5)
(10, 10)
(20, 20)
10−1
SN u ε − SN u∞
10−1
2.27 × 10−1
NaN
NaN
NaN
10−2
SN u ε − SN u∞ SN u ε − SN u∞
10−2
10−2
1.25 × 10−2
1.49 × 10−1
NaN
10−3
10−3
10−3
1.7 × 10−3
1.82 × 10−2
10−3
(30, 30)
(40, 40)
Table 5 Analysis of the numerical stability for Example 6.1, with N1 = 20, and larger values of N2 ε
(N1 , N2 )
(20, 100)
(20, 500)
(30, 100)
(40, 100)
10−1
SN u ε − SN u∞
1.1 × 10−1
1.1 × 10−1
1.38 × 10−1
1.3
10−2
SN u ε − SN u∞
1.09 × 10−2
1.09 × 10−2
1.08 × 10−2
1.08 × 10−2
123
Author's personal copy 124
D. Costarelli, R. Spigler
Table 6 Analysis of the numerical stability for Example 6.2, with N1 = 10, and larger values of N2 ε
(N1 , N2 )
(10, 100)
(10, 200)
(10, 300)
10−1
SN u ε − SN u∞
1.04 × 10−1
1.04 × 10−1
1.03 × 10−1
10−2
SN u ε − SN u∞
10−2
10−2
10−2
Table 7 Numerical errors for Example 6.4
(N1 , N2 )
(5, 5)
(5, 10)
eN ∞
5.19 × 10−2
2.98 × 10−2
3.27 × 10−2
2.23 × 10−2
3.49 × 10−2
2.48 × 10−2
σ eN ∞ σαβ eN ∞
Fig. 7 Discrepancy between the solutions to the problem in Example 6.4, obtained using Godunov method and σ SN u with Gompertz functions, σαβ , α = β = 0.5, with N1 = N2 = 5 (left), and N1 = 5, N2 = 10 (right), σ
respectively. In SN u, the scaling parameters are w1 = N12 /β and w2 = N22 /β, according to Corollary 2.10
for x ∈ [0, 1], t ∈ [0, 1], with the homogeneous √ boundary value u(0, t) = 0 and the initial condition u(x, 0) = u 0 (x), being u 0 (x) := x + 1 − 1 for x ≥ 0. Approximate solutions for this example have been obtained using unit steps, logistic, and −βx Gompertz functions. For the latter, σαβ (x) = e−αe , we chose α = 0.5 and β = 0.5. The corresponding errors are shown in Table 7, and are plotted in Fig. 7 only for the case of σαβ . From Table 7 it is clear (as in Example 6.2) that the maximum errors between the solutions σ computed with the Godunov method and SNαβ u given in terms of smooth sigmoidal functions are smaller than those obtained using SN u. The solutions SNσ u, however, are more accurate σ
than SNαβ u. In all cases, the L 1 -errors are of the order of 10−3 .
Now, in order to provide additional explanations and details concerning the numerical method introduced and studied in the present paper, in Table 8 we give a “pseudo-code” for the aforementioned algorithm. Now, to better assess the actual performance of our numerical method, in comparison to the Godunov method, we propose the following example, whose exact solution is known.
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
125
Table 8 Pseudo-code of the algorithm based on sigmoidal functions approximation for the numerical solution of balance laws
Objective: Computing the numerical solutions of a given balance laws by sigmoidal functions approximation. Inputs: The flux function f , the source term s, the initial condition u0 , the parameters a, b ∈ , T > 0, and N1 , N2 ∈ + . • Definition of the mesh size, h1 and h2 , both for spatial and time space discretization, by using N1 and N2 , respectively. • Compute the initial condition at the boundary nodes of [a, b] × [0, T ]. • Compute the coefficients involving the source term s at the fixed grid nodes. • Define a sigmoidal function, σ. • Compute the scaling parameters, w1 and w2 , depending on σ, N1 , and N2 . Iteration: Compute the numerical coefficients of the numerical solutions by the implementation of the recursive formulas of Section 3. Output: The numerical solution of the original balance law expressed by unit step functions, and the sigmoidal function σ on the set [a, b] × [0, T ].
Example 6.5 Consider the Burgers equation, 2 u = (u − x + 1)(−tu − x) + u, ut + 2 x for x ∈ [0, 1], t ∈ [0, 1], with u(0, t) = 0, and the initial condition u(x, 0) = x for x ≥ 0. The solution of this problem is u(x, t) = e−xt + x − 1 (see Fig. 8). In this example only, we consider the discrepancies between the numerical solutions (both, the Godunov solutions and the solutions computed with sigmoidal functions), and the analytical solution. In particular, we compute the Godunov solution on a uniform grid, constructed according to the values of N1 and N2 , with which we compute the numerical G the maximum error between u and the Godunov solution solutions SN u. Here, we denote by eN on the uniform grid with (N1 + 1)(N2 + 1) points on [0, 1] × [0, 1]. As in the previous σ σ examples, we write eN ∞ = u − SN u∞ , eN ∞ = u − SNσ u∞ and eNαβ ∞ = σ
G. u − SNαβ u∞ , α = β = 0.5, computed on the same uniformly spaced grid used for eN The solution computed with sigmoidal functions is obtained using the trick of increasing the
123
Author's personal copy 126
D. Costarelli, R. Spigler
Fig. 8 The analytical solution of Example 6.5
Table 9 Numerical errors for Example 6.5 (N1 , N2 )
(5, 5)
(10, 10)
(15, 15)
(20, 20)
G eN ∞
4.1 × 10−1
1.81 × 10−1
1.29 × 10−1
9.19 × 10−2
eN ∞
4.8 × 10−2
2.3 × 10−2
2.1 × 10−2
1.9 × 10−2
7 × 10−2
4.27 × 10−2
3 × 10−2
2.31 × 10−2
4.78 × 10−2
3.15 × 10−2
2.27 × 10−2
1.77 × 10−2
σ eN ∞ σαβ eN ∞
right-boundary of the space interval by an amount equal to 0.1. The numerical results are shown in Table 9. From the numerical results of Table 9, it is clear that the solutions obtained using sigmoidal functions are more accurate than those computed by the Godunov method, even though the two methods are both of the first order. The performance of our method with SN u, SNσ u and σ
SNαβ u seems to be very similar, others than in the previous examples, where SNσ u seems to perform better than the other. A possible explanation of this fact is that, throughout the paper, we used the parameters N1 and N2 to choose both, the number of the coefficients needed to construct the sigmoidal approximations and the stepsizes to be used by the Godunov method. In this way, we actually obtain a semi-analytic representation of solutions in terms of sigmoidal functions, that is the solution on the full domain, and not only at the grid points. The comparison between the two methods with the exact solution, however, was made only on such points. When the values of N1 and N2 are modest, the Godunov method provides poorly accurate results. Finally, in order to perform a deep analysis between the Godunov method and the method based on sigmoidal functions, we also provide a computational comparison between such methods, concerning the CPU time needed by both, when they approximate the exact solution of a given balance law, to any fixed degree of accuracy.
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
127
Concerning Example 6.5, the numerical experiments show that, for instance, to attain an absolute accuracy of almost 3 × 10−1 , on the domain [0, 1] × [0, 1], the Godunov method and the method based on sigmoidal functions require, respectively, 0.001 and 0.027 s of CPU time. Moreover, imposing an absolute error of about 2 × 10−2 , on the same domain, the previous methods require, respectively, 1.41 and 1.88 s of CPU time. Finally, the Godunov method needs 19.01 s of CPU time to achieve an accuracy of about 8 × 10−3 , while the method based on sigmoidal functions takes only 10.82 s to attain the same accuracy. A very different behavior concerning the computational costs of the two methods can be observed, when the required accuracy is increased. In fact, for low accuracy the Godunov method seems to go faster than the method based on sigmoidal functions, while such behavior is precisely the opposite one when the required absolute errors approach the order of 10−3 . The reason for this can be explained by the different nature of the two methods. In fact, the accuracy provided by the Godunov method increases as the grid where the numerical solutions are computed is refined, but, clearly, this implies an increase of the CPU time needed for the overall computations. On the other hand, the CPU time required by the method based on sigmoidal functions, is related to the values of N1 and N2 , and now, as showed by the previous examples, it is not necessary to choose N1 so high to achieve an accuracy of the order of 10−2 or 10−3 , and so on. Basing on what was observed, we can infer that, whenever a rather low accuracy is wanted, such as, e.g., 10−1 or 10−2 , then the Godunov method only needs few grid points to achieve it, and hence this method turns out to be faster than that based on sigmoidal functions, while the opposite happens when a higher accuracy is pursued. An additional advantage possessed by the method developed in the present paper, is that, once the numerical coefficients of SN u have been obtained, we obtain an approximate solution of the original balance law on the entire domain, hence at all the selected discrete grid points, and this can be done by using the same numerical solution SN u, without the need of implementing the algorithm again. The latter fact is not possible using the Godunov method, where changing the grid points we are forced to fully recompute the numerical solution, by rerunning the algorithm. As for systems of balance laws Example 6.6 We consider the nonlinear hyperbolic system of balance laws 2 ⎧ ⎨ u t + v4 = −u 2 − v 2 , 2 x 4 ⎩v + u = − arctan v − u4 , t 2 x
for x ∈ [0, 1], t ∈ [0, 1], subject to the homogeneous boundary values u(0, t)√= v(0, t) = 0 and the initial conditions u(x, 0) = u 0 (x), v(x, 0) = v0 (x), where u 0 (x) := x + 1 − 1 for x ≥ 0 and v0 (x) := e−1/x , for x > 0, v0 (0) = 0. We tested our method using unit steps as well as logistic functions, on the domain [0, 1] × [0, 1]. Here the errors have been computed as in Examples 6.1, 6.2 and 6.4, i.e., considering the solutions computed with Godunov method on a grid of 101×101 uniformly spaced points, as the exact solutions of the system. The coefficients of SN u and SN v were computed on the rectangle [0, 1.2] × [0, 1], choosing ε = 0.2, and following the same procedure outlined in the previous examples. In Fig. 9, a comparison is made with the Godunov method, which was implemented using the Roe linearization (Roe 1987; LeVeque 2002). All observations made for scalar equations hold true also here, for systems. The convergence of the algorithm seems to be rather slow, but its implementation and practical use are very simple. In addition, the coefficients of the approximation formulae can be computed
123
Author's personal copy 128
D. Costarelli, R. Spigler
Fig. 9 Discrepancy between the solutions to the problem in Example 6.6 obtained by the Godunov method and the numerical method with unit step (left), and with logistic functions (right), respectively, for N1 = 3, σ σ N2 = 20. In SN u and SN v, the scaling parameters are w1 = N12 and w2 = N22 , according to Corollary 2.9
Fig. 10 Left discrepancy between the solutions of Example 6.6 computed by the Godunov method and by SN u with N1 = 3, N2 = 20, at time t = 0.56. Right discrepancy between the solution computed by the σ σ Godunov method and by SN u with N1 = 3, N2 = 20, at time t = 0.56. In SN u, the scaling parameters w1 = N12 and w2 = N22 were chosen, according to Corollary 2.9
explicitly by linear recursion. The absolute numerical errors are now of order O 10−2 ,
while the L 1 -errors turn out to be of order O 10−3 . In Fig. 10, we plotted the errors for Example 6.6, on certain straight lines, located inside the domain, [0, 1] × [0, 1], for a close assessment of the method’s performance. As it was observed in the scalar cases, the errors made adopting logistic functions turn out to be smaller than those obtained using unit step functions. From the general theory discussed in the previous sections, we know that the numerical method for solving balance laws based on sigmoidal functions works for problems with sufficiently smooth solutions. Since it is well-known that, in many cases, balance laws have solutions affected by shocks, it may be interesting to analyze how such method performs when the solutions to such problems are discontinuous. Example 6.7 Let us consider ut +
123
u2 2
= x
1 −3 x + 20 t 10 e−2t , 4
Author's personal copy Solving numerically nonlinear systems of balance laws…
129
Fig. 11 The numerical solution of the equation in Example 6.7 computed with the Godunov method σ
Table 10 Numerical errors between the solution computed by the Godunov method, with SN u, and SN u, respectively, for the equation of Example 6.7 (N1 , N2 )
(5, 20)
(10, 50)
(15, 100)
(20, 250)
eN ∞
7.89 × 10−1
7.07 × 10−1
5.37 × 10−1
3.75 × 10−1
8.06 × 10−1
7 × 10−1
5.1 × 10−1
3.73 × 10−1
σ eN ∞
for x ∈ [0, 1], t ∈ [0, 1], with u(0, t) = 0 and the initial condition u(x, 0) = x/2 for x ≥ 0. The solution computed with the Godunov method is plotted in Fig. 11. It is well-known that the solution to the Burgers equation in Example 6.7 has shocks inside the domain [0, 1] × [0, 1]. We use such example to test the performance of the numerical method based on sigmoidal functions when applied to the case of balance laws with not necessarily continuous solutions. We tested our method using unit steps as well as logistic functions, on the domain [0, 1] × [0, 1]. The coefficients of the solutions SN u and SNσ u have been computed on the rectangle [0, 1.1] × [0, 1], as in the previous examples. Moreover, we compare SN u, and SNσ u against solution computed by the Godunov method. The corresponding absolute numerical errors are shown in Table 10. First of all, we can observe that, the behavior of the numerical method based on sigmoidal functions is almost the same both in case of unit step and logistic sigmoidal functions. Moreover, as it is natural, the convergence of such a method when the solutions have shocks is slower than in case of balance laws with smooth solutions. The latter fact can be also observed on the plots of Figs. 12 and 13, where the global absolute discrepancies between SN u and the “Godunov solution” are plotted. It is clear from the latter plots that there is a appreciable difference between the parts of the domain where the solution is smooth and where it develops shocks. Indeed, the peak of the errors occur in the neighborhood of the discontinuities of the solution.
123
Author's personal copy 130
D. Costarelli, R. Spigler
Fig. 12 The numerical differences between SN u and the solution computed with the Godunov method of the equation in Example 6.7, with N1 = 10, and N2 = 50
Fig. 13 The numerical differences between SN u and the solution computed with the Godunov method of the equation in Example 6.7, in case of N1 = 15, and N2 = 100
A detailed picture of what happens near to the shocks can be given by Figs. 14 and 15, where SN u and the “Godunov solution” have been plotted for some fixed values of x ∈ [0, 1].
7 Conclusions In this paper, a new numerical method is developed to solve single scalar as well as systems of nonlinear balance laws in one space dimension. The method is based on a multivariate approximation of solutions, realized by sigmoidal functions. The schemes are defined starting from the integral form of the balance laws, subject to appropriate initial and boundary conditions, and allow us to construct numerical solutions to nonlinear problems through a
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
131
Fig. 14 The SN u (dotted-line) and the “Godunov solution” (line) of the equation in Example 6.7, with N1 = 10, N2 = 50 (left), and N1 = 15, N2 = 100 (right), at the fixed value x = 0.1, and t ∈ [0, 1]
Fig. 15 The SN u (dotted-line) and the “Godunov solution” (line) of the equation in Example 6.7, with N1 = 10, N2 = 50 (left), and N1 = 15, N2 = 100 (right), for x = 0.33 fixed and t ∈ [0, 1]
sequence of linear recursive formulae. One of the advantages of such method is that, for nonlinear problems, no linearization is required for the original equations, as it happens, instead, for others methods, such as for instance in some applications of the Godunov method. Both, analysis and computation of the errors, show that our algorithm is only first order accurate. It is, however, very simple to implement and, as shown in Example 6.5, it performs better than the Godunov method, i.e., the accuracy of our method with sigmoidal functions seems to be better with respect to that achieved by the Godunov method with the same stepsizes. Moreover, our solutions, SN u, are semi-analytical and defined on the whole domain, R. In this way, with small values for N1 and N2 (5 or 10, e.g.) we are able to construct a global numerical solution, while implementing the Godunov method with a stepsize linked to the values of N1 and N2 , poorly accurate results are obtained, and this only at some points of the domain. An additional advantage of our approach with respect to Godunov’s method is that, whenever the solution would be looked for at different grid points, the Godunov’s algorithm should be re-implemented, while such a problem does not appear in our method, since each solution SN u is semi-analytical and hence, it is known on the whole [a, b] × [0, T ]. Approximate solutions can be represented by several kinds of sigmoidal functions, such as unit steps (discontinuous), logistic, and Gompertz (smooth) functions. In all cases above, the performance of our method seems to be better, i.e., the numerical errors smaller, in comparison with Godunov method. Furthermore, a stability analysis has been performed for the algorithm proposed in this paper. We showed, through numerical experiments, that our method is stable when the parameter N2 , related to the time discretization, is chosen larger than N1 . A (not sharp) inequality, which relates the two parameters, N1 and N2 , was derived in (3), which plays the same role of the CFL condition in the Godunov method.
123
Author's personal copy 132
D. Costarelli, R. Spigler
In closing, we remark that, even though the best performance of our numerical method can be achieved when applied to balance laws with smooth solutions, numerical approximations of solutions to equations with shocks can also be obtained. Clearly, in the latter case, the accuracy of the method suffers the effects due to the discontinuities of the solutions, and, as it is natural, the convergence becomes slower compared to the case of regular solutions. Acknowledgements The authors would like to thank the referees for their useful and constructive criticism, which lead to improve the quality of this paper. This work was supported, in part, by the GNAMPA and the GNFM of the Italian INdAM. Danilo Costarelli was partially supported by the Department of Mathematics and Computer Science, University of Perugia, and by the GNAMPA-INdAM Project “Metodi di approssimazione e applicazioni al Signal e Image Processing”, Project Number U2015/000396, 12/03/2015.
References Albano G, Giorno V (2009) On the first exit time problem for a Gompertz-type tumor growth. Lect Notes Comput Sci 5717:113–120 Alí G, Jungel A (2003) Global smooth solutions to the multi-dimensional hydrodynamic model for two-carrier plasmas. J Differ Equ 190:663–685 Barron AR (1993) Universal approximation bounds for superpositions of a sigmoidal function. IEEE Trans Inf Theory 39(3):30–945 Brauer F, Castillo Chavez C (2001) Mathematical models in population biology and epidemiology. Springer, New York Brezis H (2011) Functional analysis, Sobolev spaces and partial differential equations. Universitext. Springer, New York Budzianowski WM, Miller R (2009) Superadiabatic lean catalytic combustion in a high-pressure reactor. Int J Chem React Eng 7(1). Article A20:1–31 Byrne H, Norbury J (1994) Stable solutions for a catalytic converter. SIAM J Appl Math 54(3):789–813 Chen D (1993) Degree of approximation by superpositions of a sigmoidal function. Approx Theory Appl 9(3):17–28 Chen H, Chen T, Liu R (1992) A constructive proof and an extension of Cybenko’s approximation theorem. Computing science and statistics. Springer, New York, pp 163–168 Costarelli D (2014) Interpolation by neural network operators activated by ramp functions. J Math Anal Appl 419(1):574–582 Costarelli D (2015) Neural network operators: constructive interpolation of multivariate functions. Neural Netw 67:28–36 Costarelli D, Spigler R (2013a) Constructive approximation by superposition of sigmoidal functions. Anal Theory Appl 29(2):169–196 Costarelli D, Spigler R (2013b) Solving Volterra integral equations of the second kind by sigmoidal functions approximations. J Integral Equ Appl 25(2):193–222 Costarelli D, Spigler R (2013c) Approximation results for neural network operators activated by sigmoidal functions. Neural Netw 44:101–106 Costarelli D, Spigler R (2013d) Multivariate neural network operators with sigmoidal activation functions. Neural Netw 48:72–77 Costarelli D, Spigler R (2014a) A collocation method for solving nonlinear Volterra integro-differential equations of the neutral type by sigmoidal functions. J Integral Equ Appl 26(1):15–52 Costarelli D, Spigler R (2014b) Convergence of a family of neural network operators of the Kantorovich type. J Approx Theory 185:80–90 Costarelli D, Spigler R (2015) Approximation by series of sigmoidal functions with applications to neural networks. Ann Mat Pura Appl 194(1):289–306 Costarelli D, Vinti G (2015) Max-product neural network and quasi-interpolation operators activated by sigmoidal functions, submitted Costarelli D, Laurenzi M, Spigler R (2013) Asymptotic-numerical solution of nonlinear systems of onedimensional balance laws. J Comput Phys 245:347–363 Cybenko G (1989) Approximation by superpositions of a sigmoidal function. Math Control Signals Syst 2:303–314 Gao B, Xu Y (1993) Univariant approximation by superpositions of a sigmoidal function. J Math Anal Appl 178:221–226
123
Author's personal copy Solving numerically nonlinear systems of balance laws…
133
Gosse L (2002) Localization effects and measure source terms in numerical schemes for balance laws. Math Comput 71(238):553–582 Hritonenko N, Yatsenko Y (2006) Mathematical modelling in economics, ecology and the environment. Science Press, Beijing Isaacson E, Temple B (1995) Convergence of the 2 ∗ 2 Godunov method for a general resonant nonlinear balance law. SIAM J Appl Math 55(3):625–640 Korf J, Sas AA, Snieder H (2012) Gompertz’ survivorship law as an intrinsic principle of aging. Med Hypotheses 78(5):659–663 Kyurkchiev N, Markov S (2015a) On the Hausdorff distance between the Heaviside step function and Verhulst logistic function. J Chem Math. doi:10.1007/S10910-015-0552-0 Kyurkchiev N, Markov S (2015b) Sigmoid function: some approximation and modelling aspects. LAP Lambert Academic Publishing, Saarbrucken Lax PD (1972) The formation and decay of shock waves. Am Math Mon 79(3):227–241 Lax PD (1973) Hyperbolic systems of conservation laws and the mathematical theory of shock waves. In: CBMS regional conference series in Applied Mathematics, vol 11. Society for Industrial and Applied Mathematics, Philadelphia Lenze B (1992) Constructive multivariate approximation with sigmoidal functions and applications to neural networks. In: Numerical methods of approximation theory. Birkhaüser, Basel, pp 155–175 LeVeque RJ (1998) Balancing source terms and flux gradients in high-resolution Godunov methods: the quasi-steady wave-propagation algorithm. J Comput Phys 146(1):346–365 LeVeque RJ (2002) Finite volume methods for hyperbolic problems. In: Cambridge texts in applied mathematics. Cambridge University Press, Cambridge Lewicki G, Marino G (2003) Approximation by superpositions of a sigmoidal function. Z Anal Anwend J Anal Appl 22(2):463–470 Light W (1993) Ridge functions, sigmoidal functions and neural networks. Approximation theory VII (Austin, TX, 1992). Academic Press, Boston, pp 163–206 Mhaskar HN, Micchelli CA (1992) Approximation by superposition of sigmoidal and radial basis functions. Adv Appl Math 13:350–373 Parés C (2006) Numerical methods for nonconservative hyperbolic systems: a theoretical framework. SIAM J Numer Anal 44(1):300–321 Pinkus A (1999) Approximation theory of the MLP model in neural networks. Acta Numer 8:143–195 Roe PL (1987) Upwind differencing schemes for hyperbolic conservation laws with source terms, Nonlinear Hyperbolic Problems (St. Etienne, 1986). Lecture notes in mathematics, vol 1270. Springer, Berlin, pp 41–51 Sendov, Bl (1990) Hausdorff approximations, vol 50. Springer Science & Business Media Tadmor E (1984) The large-time behavior of the scalar, genuinely nonlinear Lax–Friedrichs scheme. Math Comput 43(168):353–368 Tadmor E (2012) A review of numerical methods for nonlinear partial differential equations. Bull Am Math Soc (NS) 49(4):507–554 Trèves F (1975) Basic linear partial differential equations. Pure and Applied Mathematics (Amst), vol 62. Academic Press, New York Yong WA (2004) Entropy and global existence for hyperbolic balance laws. Arch Ration Mech Anal 172(2):247–266
123