1 Introduction

The nonlinear advection–diffusion type equation is one of the popular and important models describing many phenomena derived from various areas of mathematical physics and engineering fields such as gas dynamics, hydrodynamics, shock waves, heat conduction and so on. Also, the type of equation represents the Burgers equation, the heat conduction equation, the nonlinear Schrödinger equation, the Navier–Stokes equation, etc. Hence, the development of efficient and accurate algorithms for solving the equations is of great importance in the computational fluid dynamics community and has been widely studied by many researchers. To solve theses equations, there has become a great quantity of research available [1,2,3,4,5,6,7,8,9,10,11,12,13,14] in recent decades. In particular, the error correction method (ECM) [15, 16] for solving the characteristic curve in the backward semi-Lagrangian method (BSLM) [17, 18] was recently developed. This method solves a problem implicitly along the characteristic curves of fluid particles in the opposite direction with large time steps, which is the main advantage of the BSLM [17, 19]. Also, the method does not only have second and third convergence orders in time and space, respectively, but also does not have any iterative processes required to solve a nonlinear initial value problem (IVP) for departure points. To discretize the material derivative and the diffusion term along the characteristic curve in the BSLM framework, the backward difference formula (BDF2) and the fourth-order finite difference method (FDM) [20] are applied, respectively. The departure point of the characteristic curve is found by the ECM.

The aim of this article is to introduce newly a modified ECM instead of simply using the conventional ECM, motivated by the success of the ECM combined with the BSLM. To do this, we firstly present a modified Euler polygon, for the consideration of the physical domains in which the particles can move (see Sect. 3 for more information). In addition, boundary values are calculated by the same fourth-order finite difference scheme, unlike previous work that used a lower order scheme for boundary conditions. Moreover, to reduce the computational cost, the proposed scheme approximates the Jacobian value as a fixed one while maintaining the scale of the error, whereas the conventional ECM once again performs the interpolation with the derivatives of the original interpolation function. The interpolation for Jacobian in the conventional ECM required considerable computational cost since it occurs in every spatial variables at each time step. As a simple model to show this technique effectively, we apply the proposed method to the one-dimensional and the two-dimensional Burgers equations. Through several numerical simulations, it is shown that the proposed method has second temporal and third spatial convergence orders. Further, we discuss the energy and the mass conservation properties and numerically show a good performance on these properties.

The remainder of this paper is organized as follows. In Sect. 2, the BSLM based on the FDM and the BDF2 is reviewed for the Burgers equations. In Sect. 3, we introduce a modified error correction technique to solve the highly nonlinear IVP. Three test problems are numerically solved in Sect. 4 in order to demonstrate the accuracy and the efficiency of the proposed method. Finally, conclusions are given in Sect. 5.

2 Backward semi-Lagrangian method

This section aims to give brief descriptions for the BSLM based on both the FDM and the BDF2 for the one-dimensional case and the system of Burgers equations.

2.1 One-dimensional Burgers equation

As a model problem, we consider the one-dimensional Burgers equation described by

$$ u_{t}+uu_{x}=\nu u_{xx}, \quad x_{L}< x < x_{R}, 0< t\leq T , $$
(1)

with the boundary and the initial conditions given by

$$ \textstyle\begin{cases} u(t,x_{L})=g_{1} (t), \quad\quad u(t,x_{R})=g_{2}(t), \quad t>0, \\ u(0,x)=u^{0}(x),\quad x\in [x_{L},x_{R}], \end{cases} $$

where \(\nu >0\) is the coefficient of kinematic viscosity. Here, \(u^{0}(x)\) and \(g_{k}(t)\) (\(k=1,2\)) are assumed to be sufficiently smooth functions for the existence and the uniqueness of the solution [21, 22]. The solution u may represent a temperature for heat transfer or a species concentration for mass transfer at position x and time t with the advection velocity u.

From the Lagrangian view, consider the characteristic curve \(\pi (x_{i},t_{n+1};t)\) satisfying the following IVP with an initial value \(\pi (x,s;s)=x\):

$$ \frac{d\pi (x,s;t)}{dt}=u\bigl(t,\pi (x,s;t)\bigr),\quad t\leq s, $$
(2)

where \(u(t,\cdot )\) is the solution of (1). Then the material derivative \(\frac{D }{Dt}u(t,\pi (x,s;t))\) satisfies

$$ \frac{D }{Dt}u\bigl(t,\pi (x,s;t)\bigr)=\nu u_{xx} \bigl(t,\pi (x,s;t)\bigr), $$
(3)

which is valid along the characteristic curve \(\pi (x,s;t)\). Solving these two equations (2) and (3) simultaneously, the solution u of (1) can be obtained.

For further discussion, we introduce uniform discretizations of the temporal and the spatial domains as follows:

$$ t_{n}=nh \quad (0\leq n\leq N),\quad \quad x_{i}=x_{L}+i\Delta x \quad (0\leq i\leq M _{x}), $$
(4)

where \(h:=T/N\) and \(\Delta x:=(x_{R}-x_{L})/M_{x}\) are the temporal step and the spatial grid sizes, respectively. Additionally, to approximate the first and the second-order partial derivatives in the considered backward semi-Lagrangian algorithm, we introduce the fourth-order finite difference weight matrices of size \(\widehat{M}_{x}:=M_{x}+1\) (see [20]) as follows:

$$\begin{aligned}& \mathcal{W}^{1}_{x}=\frac{1}{12 \Delta x} \begin{bmatrix} -25 & 48 & -36 & 16 & -3 & \cdots & 0 \\ -3 & -10 & 18 & -6 & 1 & & \\ 1 & -8 & 0 & 8 & -1 & & \\ & \ddots & \ddots & \ddots & \ddots & & \\ & & 1 & -8 & 0 & 8 & -1 \\ & & -1 & 6 & -18 & 10 & 3 \\ 0 & \cdots & 3 & -16 & 36 & -48 & 25 \end{bmatrix} , \\& \mathcal{W}^{2}_{x}=\frac{1}{12 \Delta x^{2}} \begin{bmatrix} 45 & -154 & 214 & -156 & 61 & -10 & \cdots & 0 \\ 10 & -15 & -4 & 14 & -6 & 1 & & \\ -1 & 16 & -30 & 16 & -1 & & & \\ & -1 & 16 & -30 & 16 & -1 & & \\ & & \ddots & \ddots & \ddots & \ddots & \ddots & \\ & & & -1 & 16 & -30 & 16 & -1 \\ & & 1 & -6 & 14 & -4 & -15 & 10 \\ 0 & \cdots & -10 & 61 & -156 & 214 & -154 & 45 \end{bmatrix} . \end{aligned}$$

These sparse matrices \(\mathcal{W}^{1}_{x}\) and \(\mathcal{W}^{2}_{x}\) can be obtained by using a five point finite difference scheme [20] at the interior points and one-side method for points near the boundary. Using these matrices, the partial derivatives of a smooth function f can be expressed in matrix form as follows:

$$ \begin{aligned} &\frac{\partial^{m}}{\partial x^{m}}f(x_{i})= \bigl(\mathcal{W}^{m}_{x} \boldsymbol{f} \bigr)_{i}+\mathcal{O}\bigl(\Delta x^{4}\bigr),\quad m=1,2, \end{aligned} $$
(5)

where \(\boldsymbol{f}:= (f_{i} )_{\widehat{M}_{x}\times 1}\) for \(f_{i}:=f(x_{i})\) and \((\boldsymbol{a})_{i}\) denotes the ith component of a vector a. In the proposed scheme, \(\mathcal{W}^{1}_{x}\) and \(\mathcal{W}^{2}_{x}\) are used for the interpolation scheme and the diffusion term, respectively.

The BSLM we are concerned with is combined with both the BDF2 and the FDM to find an approximation of the solution u in each grid point \(x_{i}\) at \(t = t_{n+1}\) as follows. Firstly, we denote \(u^{n}(x_{i}):=u(t _{n},x_{i})\) and its approximation by \(U^{n}_{i}\) for each \(x_{i}\) at time \(t=t_{n}\). In addition, we introduce the notations \({\mathbf{U}} ^{n}:=[U_{0}^{n},U_{1}^{n},\ldots,U_{M_{x}}^{n}]^{\mathcal{T}}\) and \(\tilde{\mathbf{{U}}}^{n}:=[U_{1}^{n},U_{2}^{n},\ldots, U_{\overline{M} _{x}}^{n}]^{\mathcal{T}}\) for \(\overline{M}_{x}:=M_{x}-1\) and the superscript \(\mathcal{T}\) denotes the transpose. Here, we assume that the approximations \(U_{i}^{k}\) (\(k\leq n\)) have been previously calculated at all grid points. After evaluating (3) at point \((t,x)=(t_{n+1},x_{i})\) and applying the BDF2 for the material derivative in the left hand side of (3), we get the following formula:

$$ u^{n+1}(x_{i})-\tilde{\mu }u_{xx}^{n+1}(x_{i})= \frac{4}{3} u^{n}\bigl( \pi (x_{i},t_{n+1};t_{n}) \bigr)-\frac{1}{3} u^{n-1}\bigl(\pi (x_{i},t_{n+1};t _{n-1})\bigr)+{\mathcal{O}}\bigl(h^{3}\bigr), $$
(6)

for each i (\(i=1,\ldots,\overline{M}_{x}\)) with \(\tilde{\mu }=\frac{2h \nu }{3}\).

By applying the finite difference formula (5) with \(m=2\) to the diffusion term of (6), we get the semi-discretization system in matrix form as follows:

$$ \begin{aligned} &\mathcal{A}\tilde{\mathbf{{U}}}^{n+1}= \mathbf{d}^{n+1}+\mu {\mathbf{b}}^{n+1}, \\ &\mathcal{A}:=\bigl(\mathcal{I}-\tilde{\mu }\tilde{\mathcal{W}}^{2}_{x} \bigr), \quad\quad \mathbf{d}^{n+1}:=\bigl[d_{1}^{n+1},d_{2}^{n+1}, \ldots, d_{\overline{M} _{x}}^{n+1}\bigr]^{\mathcal{T}}, \\ &\mathbf{b}^{n+1}:= \bigl[10 g_{1}(t_{n+1}),-g_{1}(t_{n+1}),0, \ldots,0, -g_{2}(t_{n+1}),10 g_{2}(t_{n+1}) \bigr]^{\mathcal{T}}, \\ &d_{i}^{n+1}=\frac{4}{3}u^{n}\bigl(\pi (x_{i},t_{n+1};t_{n})\bigr)-\frac{1}{3}u ^{n-1}\bigl(\pi (x_{i},t_{n+1};t_{n-1}) \bigr)+{\mathcal{O}}\bigl(h^{3}+h\Delta x^{4}\bigr), \end{aligned} $$
(7)

where \(\mathcal{I}\) denotes an identity matrix of size \(\overline{M} _{x}\) and \(\tilde{\mathcal{W}^{2}_{x}}\) is the matrix constructed from \(\mathcal{W}^{2}_{x}\) by taking the interior elements \((i,j)=(1: \overline{M}_{x},1:\overline{M}_{x})\).

For the full-discretization of (7), let \(\pi_{i}^{n+1,k}\) be an approximation of the departure position \(\pi (x_{i},t_{n+1};t_{k})\) of grid point \((t_{n+1},x_{i})\) at each time step \(t_{k}\), which are discussed in detail in Sect. 3. Because these departure points generally do not coincide with any grid points and we only know the approximate values on the grid points at \(t\leq t_{n}\), a proper interpolation method is needed. In the proposed scheme, the Hermite cubic interpolation \(I_{H}\) [23] is adopted among various interpolation schemes.

Now, after the use of the interpolation scheme, taking Taylor expansions of \(u^{n}(\cdot )\) and \(u^{n-1}(\cdot )\) about \(\pi_{i}^{n+1,k}\) (\(k=n,n-1\)) and dropping truncation errors, we can obtain a full-discretization system for the semi-discretization system (7) by the following approximation of \(d_{i}^{n+1}\):

$$ d_{i}^{n+1}\approx \frac{4}{3}I_{H} { \mathbf{{U}}}^{n}\bigl(\pi_{i}^{n+1,n}\bigr)- \frac{1}{3}I_{H}{\mathbf{{U}}}^{n-1}\bigl( \pi_{i}^{n+1,n-1}\bigr), $$

where \(I_{H} {\mathbf{{U}}}^{k}\) denotes the Hermite cubic interpolation with the approximate vector \(\mathbf{{U}}^{k}\). Notice that, since \(\tilde{\mu }>0\) and \(\mathcal{A}\) is non-singular, the solution of the full-discretization system can easily be obtained by using the LU factorization.

2.2 System of two-dimensional Burgers equations

In this subsection, we extend the BSLM to solve a system of two-dimensional Burgers equations given by

$$ \textstyle\begin{cases} u_{t}+uu_{x}+vu_{y}= \nu (u_{xx}+u_{yy}), \\ v_{t}+uv_{x}+vv_{y}=\nu (v_{xx}+v_{yy}), \end{cases} $$
(8)

with the initial and the boundary conditions

$$ \textstyle\begin{cases} u(0,x,y)=u^{0}(x,y), \quad\quad v(0,x,y)=v^{0}(x,y), \quad (x,y)\in \mathcal{D}=[x_{L},x_{R}]\times [y_{L},y_{R}], \\ u(t,x,y)=g_{1}(t,x,y),\quad\quad v(t,x,y)=g_{2}(t,x,y), \quad t\in [0,T], (x,y) \in \partial \mathcal{D}, \end{cases} $$

where ν is a positive constant and \(u^{0}\), \(v^{0}\) and \(g_{i}\) are given smooth functions in the physical domain \(\mathcal{D}\). For further discussion, together with (4) we additionally introduce the discretization of the spatial domain in the y-direction as follows:

$$ y_{j}=y_{L}+j\Delta y, \quad 0\leq i\leq M_{y}, $$
(9)

where \(\Delta y:=(y_{R}-y_{L})/M_{y}\) is the spatial grid size in the y-direction. Also, let \(u^{k}(\mathbf{{x}}_{i,j}):=u(t_{k},\mathbf{{x}}_{i,j})\) with \(\mathbf{{x}} _{i,j}=[x_{i},y_{j}]^{\mathcal{T}}\) and \(U^{k}_{i,j}\) be its approximate value. In addition, we introduce some notations \({\mathbf{U}}^{k}:=[U _{0,0}^{k},U_{1,0}^{k},\ldots,U_{M_{x},0}^{k},U_{0,1}^{k},U_{1,1} ^{k}\cdots ,U_{M_{x},M_{y}}^{k}]^{\mathcal{T}}\) and \(\tilde{\mathbf{{U}}} ^{k}:=[U_{1,1}^{k},U_{2,1}^{k}, \ldots, U_{\overline{M}_{x},1}^{k},U _{1,2}^{k},U_{2,2}^{k},\ldots,U_{\overline{M}_{x},\overline{M}_{y}} ^{k}]^{\mathcal{T}}\) for \(\overline{M}_{x}:=M_{x}-1\) and \(\overline{M}_{y}:=M_{y}-1\), and the superscript \(\mathcal{T}\) denotes the transpose.

From the Lagrangian view, problem (8) is equivalent as

$$ \frac{D}{Dt}\mathbf{u}\bigl(t,\boldsymbol{\pi }( \mathbf{{x}},t_{n+1};t)\bigr)=\nu \Delta \mathbf{u}\bigl(t,\boldsymbol{\pi }(\mathbf{{x}},t_{n+1};t)\bigr),\quad t\in [0,T] , $$
(10)

along the characteristic curve \(\boldsymbol{\pi }(\mathbf{{x}},t_{n+1};t): =[\pi _{1}(x,t_{n+1};t),\pi_{2}(y,t_{n+1};t)]^{\mathcal{T}}\) satisfying the following IVP:

$$ \textstyle\begin{cases} \frac{d\boldsymbol{\pi }(\mathbf{{x}},t_{n+1};t)}{dt}=\mathbf{u}(t,\boldsymbol{\pi }( \mathbf{{x}},t_{n+1};t)),\quad t\leq t_{n+1}, \\ \boldsymbol{\pi }(\mathbf{{x}},t_{n+1};t_{n+1})=\mathbf{{x}}, \end{cases} $$
(11)

where \(\mathbf{u}(t,\boldsymbol{\pi }(\mathbf{{x}},t_{n+1};t))=[u(t,\boldsymbol{\pi }( \mathbf{{x}},t_{n+1};t)),v(t,\boldsymbol{\pi }(\mathbf{{x}},t_{n+1};t))]^{ \mathcal{T}}\).

As described in Sect. 2.1, after evaluating (10) at time \(t=t_{n+1}\) and grid point \(\mathbf{{x}}= \mathbf{{x}}_{i,j}\), the BDF2 and the finite difference formula (5) are applied to approximate the material derivative and diffusion term, respectively. Then, by a similar process to the derivation of equations (6) and (7), we obtain the full-discretization systems for (10) given by

$$ \begin{aligned} &\mathcal{A} {\tilde{\mathbf{U}}}^{n+1} = {\mathbf{d}}^{n+1}+\mu_{1}{\mathbf{b}} ^{n+1},\quad \quad \mathcal{A} {\tilde{\mathbf{V}}}^{n+1} = {\hat{\mathbf{d}}}^{n+1}+ \mu_{2}{\hat{\mathbf{b}}}^{n+1}, \\ &\mathcal{A}=\mathcal{I}_{y}\otimes \mathcal{I}_{x}- \tilde{\mu } \bigl(\mathcal{I}_{y}\otimes \tilde{\mathcal{W}}^{2}_{x} \bigr)-\tilde{\mu } \bigl( \tilde{\mathcal{W}}^{2}_{y} \otimes \mathcal{I}_{x} \bigr), \end{aligned} $$
(12)

where \({\mathbf{d}}^{n+1}:=[d_{1,1}^{n+1},d_{2,1}^{n+1},\ldots, d_{ \overline{M}_{x},1}^{n+1},d_{1,2}^{n+1},d_{2,2}^{n+1},\ldots,d_{ \overline{M}_{x}-1,\overline{M}_{y}}^{n+1},d_{\overline{M}_{x}, \overline{M}_{y}}^{n+1}]^{\mathcal{T}}\) and \({\hat{\mathbf{d}}}^{n+1}:=[ \hat{d}_{1,1}^{n+1}, \hat{d}_{2,1}^{n+1}, \ldots, \hat{d}_{ \overline{M}_{x},1}^{n+1},\hat{d}_{1,2}^{n+1},\hat{d}_{2,2}^{n+1},\ldots, \hat{d}_{\overline{M}_{x}-1,\overline{M}_{y}}^{n+1},\hat{d} _{\overline{M}_{x},\overline{M}_{y}}^{n+1}]^{\mathcal{T}}\) are \(\overline{M}_{x}\overline{M}_{y} \times 1\) vectors whose entries are given by

$$ \begin{gathered} d_{i,j}^{n+1} \approx \frac{4}{3}I_{H}{\mathbf{{U}}}^{n}\bigl(\boldsymbol{ \pi }_{i,j} ^{n+1,n}\bigr)-\frac{1}{3}I_{H}{ \mathbf{{U}}}^{n-1}\bigl(\boldsymbol{\pi }_{i,j}^{n+1,n-1} \bigr), \\ \hat{d}_{i,j}^{n+1} \approx \frac{4}{3}I_{H}{ \mathbf{{V}}}^{n}\bigl(\boldsymbol{\pi } _{i,j}^{n+1,n} \bigr)-\frac{1}{3}I_{H}{\mathbf{{V}}}^{n-1}\bigl( \boldsymbol{\pi }_{i,j}^{n+1,n-1}\bigr). \end{gathered} $$

Here, \(\tilde{\mu }:=\frac{2\nu h}{3}\), and \(\mathcal{I}_{x}\) and \(\mathcal{I}_{y}\) are identity matrices of sizes \(\overline{M}_{x}\) and \(\overline{M}_{y}\), respectively. Additionally, the matrix \(\tilde{\mathcal{W}}^{2}_{y}\) can be defined similarly from the definition of \(\tilde{\mathcal{W}}^{2}_{x}\). The notation ⊗ is for the tensor product, and \(\mathbf{b}^{n+1}\) and \({\hat{\mathbf{b}}}^{n+1}\) are vectors induced from the boundary conditions, which are obtained by a similar process to that described in Sect. 2.1.

To solve the system (12) effectively, we employ the following eigenvalue decomposition:

$$ \tilde{\mathcal{W}}^{2}_{k}=Q_{k} \varLambda_{k}Q_{k}^{-1} \quad (k=x,y), $$
(13)

where \(Q_{k}\) and \(\varLambda_{k}\) are the matrices of eigenpair for the matrix \(\tilde{\mathcal{W}}^{2}_{k}\). Then, using the property of the tensor product and (13), the coefficient matrix \(\mathcal{A}\) defined by (12) can be decomposed as

$$ \mathcal{A}= (Q_{y}\otimes Q_{x} ) \varSigma (Q_{y}\otimes Q_{x} )^{-1}, $$

where \(\varSigma :=(\mathcal{I}_{y}\otimes \mathcal{I}_{x})-\tilde{\mu }( \mathcal{I}_{y}\otimes \varLambda_{x})-\tilde{\mu }( \varLambda_{y} \otimes \mathcal{I}_{x})\). Hence, the system (12) can be solved effectively by three linear systems for u as follows:

$$ \breve{\mathbf{d}}^{n+1}= (Q_{y}\otimes Q_{x} )^{-1} \bigl( \mathbf{d}^{n+1}+ \mu_{1}{\mathbf{b}}^{n+1} \bigr), \quad\quad {\hat{ \mathbf{U}}}^{n+1}=\varSigma^{-1}\breve{\mathbf{d}}^{n+1}, \quad\quad {\tilde{\mathbf{U}}}^{n+1}= (Q_{y}\otimes Q_{x} ){\hat{\mathbf{U}}} ^{n+1}. $$

In a similar way, three linear systems can be obtained for v.

3 Modified error correction method

The goal of this section is to develop a modified ECM for the approximate values \(\pi_{i}^{n+1,k}\) (\(k=n,n-1\)) of the departure points, which maintains the advantage of the original ECM introduced in [17, 18] with less computational costs. For the two-dimensional case, \(\boldsymbol{\pi }_{i,j}^{n+1,k}\) (\(k=n,n-1\)) can be obtained by extension of the following process. Let \(\pi_{i}(t):=\pi (x_{i},t _{n+1};t)\) be the solution of the nonlinear IVP with an initial value \(\pi_{i}(t_{n+1})=x_{i}\) given by

$$ \frac{d\pi_{i}(t)}{dt}=u\bigl(t,\pi_{i}(t)\bigr),\quad t\in [t_{n-1},t_{n+1}), $$
(14)

where u is the solution of the Burgers equation (1) for an arbitrary grid point \(x_{i}\).

We begin by introducing modified Euler polygons:

$$\begin{aligned} \begin{gathered} y_{i}(t):=\min \bigl\{ \max \bigl\{ \hat{y}_{i}(t),x_{L} \bigr\} ,x_{R} \bigr\} \quad \text{(Dirichlet boundary case)}, \\ y_{i}(t):= \textstyle\begin{cases} \hat{y}_{i}(t) & \hat{y}_{i}(t) \in [x_{L}, x_{R}], \\ x_{R}-(x_{L}-\hat{y}_{i}(t)) & \hat{y}_{i}(t)< x_{L}, \\ x_{L}+(\hat{y}_{i}(t)-x_{R}) & \hat{y}_{i}(t)>x_{R}, \end{cases}\displaystyle \quad \text{(periodic boundary case)}, \end{gathered} \end{aligned}$$
(15)

where \(\hat{y}_{i}(t):=x_{i}+(t-t_{n+1})u(t_{n},x_{i})\). Note that the above modified Euler polygons are constructed so that the position of the particle remains in the physical domain. Hereafter, we regard \(y_{k}(t)\) as \(\hat{y}_{k}(t)\) for simplicity of the discussion.

Let \(\pi_{i}(t)\) be the solution to the nonlinear IVP (14) at the fixed grid point \(x_{i}\), and assume that it is sufficiently smooth with respect to both t and \(x_{i}\). Then the Taylor expansions of \(\pi_{i}(t)\) at \(t_{n+1}\) and \(u(t_{n+1}, x_{i})\) at \(t_{n}\) give

$$ \begin{aligned}[b] \pi_{i}(t) &= \pi_{i}(t_{n+1})+(t-t_{n+1})u\bigl(t_{n+1},\pi (t_{n+1})\bigr)+ \mathcal{O}\bigl(h^{2}\bigr) \\ &=x_{i}+(t-t_{n+1})u(t_{n},x_{i})+ \mathcal{O}\bigl(h^{2}\bigr). \end{aligned} $$
(16)

Moreover, an error between of the \(\pi_{i}(t)\) and \(y_{i}(t)\) is defined

$$ \psi_{i}(t):=\pi_{i}(t)-y_{i}(t), \quad i=1,\ldots,\overline{M}_{x} $$
(17)

with asymptotic behavior of \(\psi_{i}(t)=\mathcal{O}(h^{2})\), which is obtained by combining (16) and (17). After differentiating (17), combining the result with (14) and the Euler polygons leads to the following formula:

$$ \begin{aligned} \psi^{\prime}_{i}(t) &= \pi^{\prime}_{i}(t)-y^{\prime}_{i}(t)=u \bigl(t, \pi_{i}(t) \bigr)-u(t_{n},x_{i})=u ( \bigl(t,y_{i}(t)+\psi_{i}(t) \bigr)-u(t_{n},x _{i}). \end{aligned} $$

By taking a Taylor expansion \(\pi_{i}(t)\) about \(y_{i}(t)\), we can see the asymptotic linear IVP for \(\psi_{i}(t)\) given by

$$ \begin{aligned}& \psi^{\prime}_{i}(t)=u \bigl(t,y_{i}(t) \bigr)+u_{x} \bigl(t,y_{i}(t) \bigr) \psi_{i}(t)-u(t_{n},x_{i})+{\mathcal{O}} \bigl(\psi (t)^{2} \bigr), \quad t\leq t_{n+1} \end{aligned} , $$
(18)

with the initial value \(\psi_{i}(t_{n+1})=0\). Then, instead of solving the nonlinear problem (14), the proposed method solves the linear IVP (18).

To reduce the computational cost, the proposed method approximates the Jacobian value \(u_{x}(t,y_{i}(t))\) as a fixed one \(u_{x}(t_{n},x_{i})\). By Taylor’s expansion the Jacobian \(u_{x} (t,y_{i}(t) )\) about \(t=t_{n}\), (18) can be changed with the asymptotic behavior of \(\psi_{i}(t)\) as follows:

$$ \begin{aligned}& \psi^{\prime}_{i}(t)=u_{x}(t_{n},x_{i}) \psi_{i}(t)+u\bigl(t,y_{i}(t)\bigr)-u(t_{n},x _{i})+\mathcal{O}\bigl(h^{3}\bigr),\quad t\leq t_{n+1}. \end{aligned} $$
(19)

Note that the fixed value does not affect the scale of the second-order asymptotic error. On the other hand, the conventional ECM once again performs the interpolation with the derivatives of the original interpolation function for every spatial grid in each time integration.

To solve the asymptotic IVP (19), after integrating both sides of (19) over \([t_{n-1},t_{n+1}]\), we use the midpoint integration rule and \(\psi_{i}(t_{n})=\frac{1}{2} (\psi_{i}(t_{n+1})+ \psi_{i}(t_{n-1}) )+{\mathcal{O}}(h^{2})\). Then we obtain

$$ \bigl(1+h u_{x}(t_{n},x_{i}) \bigr)\psi_{i}(t_{n-1})=2h \bigl(u\bigl(t_{n},y _{i}(t_{n})\bigr)-u(t_{n},x_{i}) \bigr)+\mathcal{O}\bigl(h^{3}\bigr). $$
(20)

Recall that we only know the approximations \(U_{i}^{k}\) (\(k \leq n\)) at the grid points. Thus, to evaluate the solution at the non-grid point \(y_{i}(t_{n})\), we apply the Hermite cubic interpolation. Then, instead of solving (20), we solve the following equation:

$$ \psi_{i}^{n-1}:=2h\frac{U^{n}_{i}-I_{H}{\boldsymbol{U}}^{n}(y_{i}(t_{n}))}{1+h \mathcal{J}_{i}},\quad 0 \leq i\leq\overline{M}_{x}, $$

to obtain an approximation \(\pi_{i}^{n+1,n-1}\) defined by

$$ \pi_{i}^{n+1,n-1}:=y_{i}(t_{n-1})+ \psi_{i}^{n-1}, $$
(21)

where \(\mathcal{J}_{i}:= (\tilde{\mathcal{W}}^{1}_{x} \tilde{\mathbf{{U}}}^{n} )_{i}\) for \(\tilde{\mathcal{W}^{1}_{x}}\) constructed by interior elements of \(\mathcal{W}^{1}_{x}\).

To find an approximate value \(\pi_{i}^{n+1,n}\), after using the Taylor expansion of \(\pi_{i}(t)\) about \(t_{n-1}\) together with the initial condition \(\pi_{i}(t_{n+1})=x_{i}\), evaluating at time \(t_{n}\) leads to

$$ \pi_{i}(t_{n})=\frac{1}{4} \bigl(x_{i}+3\pi_{i}(t_{n-1})+2hu \bigl(t_{n-1}, \pi_{i}(t_{n-1})\bigr) \bigr)+ \mathcal{O}\bigl(h^{3}\bigr). $$
(22)

By using \(\pi_{i}^{n+1,n-1}\), \(I_{H}{\mathbf{{U}}}^{n-1}(\pi_{i}^{n+1,n-1})\) and (22), we can define the approximation of \(\pi_{i}(t_{n})\) as

$$ \pi_{i}^{n+1,n}:=\frac{1}{4} \bigl(x_{i}+3\pi_{i}^{n+1,n-1}+2hI_{H} { \mathbf{{U}}}^{n-1}\bigl(\pi_{i}^{n+1,n-1}\bigr) \bigr). $$

Remark

The method discussed above for finding \(\pi_{i}^{n+1,k}\) (\(k=n,n-1\)) can be naturally extended to the case of system for the characteristic curve.

4 Numerical experiments

In this section, we carry out numerical simulations to illustrate the accuracy and the efficiency of the proposed method. To measure the computational error of the proposed scheme, we use the maximum norm error \(\mathit {err}_{\infty }(t)\) and the relative \(L_{2}\) norm error \(\mathit {err}_{R2}(t)\), which are, respectively, defined by

$$ \begin{gathered} \mathit {err}_{\infty }(t_{k})=\max _{i} \bigl\vert u^{k}(x_{i})-U^{k}_{i} \bigr\vert , \\ \mathit {err}_{R2}(t_{k})= \biggl( \sum_{i} \bigl\vert u^{k}(x_{i})-U^{k}_{i} \bigr\vert ^{2} \biggr)^{1/2} \Big/ \biggl( \sum _{i} \bigl\vert u^{k}(x_{i}) \bigr\vert ^{2} \biggr)^{1/2}, \end{gathered} $$

where \(u^{k}(x_{i})\) is the exact solution and \(U^{k}_{i}\) is its approximation at time \(t=t_{k}\) and each grid point \(x_{i}\). For the two-dimensional case, we similarly define both the maximum norm error and the relative \(L_{2}\) norm error. All numerical simulations are executed with MATLAB 2013a (8.1.0.604) using Windows 10 OS.

Example 1

Consider the one-dimensional Burgers equation (1) on \([0,1]\) with the shock initial condition [24] as follows:

$$ u(0,x)= \textstyle\begin{cases} 9x, & 0\leq x\leq \frac{1}{10}, \\ 1-x, & \frac{1}{10}\leq x\leq 1, \end{cases} $$

and the homogeneous boundary condition or the periodic boundary condition. For the discussion of the energy and the mass conservation properties, we measure the energy and the mass by the energy function \(E(t)\) and the mass function \(M(t)\) defined as

$$ \begin{aligned} &\frac{d}{dt}E(t)=-\nu \int_{0}^{1}u_{x}^{2}(t,x)\,dx, \quad\quad \frac{d}{dt}M(t)=\nu \bigl(u_{x}(t,1)-u_{x}(t,0) \bigr), \\ &E(t)=\frac{1}{2} \int_{0}^{1}u^{2}(t,x)\,dx,\quad\quad M(t)= \int_{0}^{1}u(t,x) \,dx. \end{aligned} $$
(23)

Both \(E(t)\) and \(M(t)\) are approximated with the composed trapezoidal rule defined by

$$ E(t_{k})\approx \frac{\Delta x}{2}\sum_{i=1}^{\overline{M_{x}}} \bigl(U _{i}^{k} \bigr)^{2},\quad\quad M(t_{k})\approx \Delta x\sum_{i=1}^{\overline{M _{x}}} \bigl(U_{i}^{k} \bigr). $$

We solve the problem using fixed time and grid sizes of \(h=0.01\) and \(\Delta x=\frac{1}{400}\), respectively, by varying of the viscosity coefficients \(\nu =10^{-k}\) (\(k=1,2,3,4\)) with homogeneous boundary condition. Using the obtained numerical solutions, we calculate the mentioned energy \(E(t)\) and mass \(M(t)\) at discrete time levels and display the results in Fig. 1. From the formula of (23), \(E(t)\) and \(M(t)\) must tend to constants when the viscosity coefficient ν theoretically goes to zero. As expected, the numerical results clearly support that the proposed method has a good performance for both the energy and the mass conservation properties when the viscosity coefficient goes to zero. We additionally observe the behaviors of the numerical solutions over time for relatively small viscosity coefficients \(\nu =10^{-k}\) (\(k=3,6\)) with homogeneous boundary condition and the results are plotted in Fig. 2. In Fig. 2, the parameters used in (a)–(b) are \(h=0.01\), \(\Delta x=\frac{1}{200}\) and (c)–(d) are \(h=0.002\), \(\Delta x=\frac{1}{1000}\). It can be seen that the proposed method shows good performance even for the advection dominated case \(\nu =10^{-6}\) without unnecessary oscillation.

Figure 1
figure 1

(a) Energy \(E(t)\) and (b) mass \(M(t)\) behaviors via the proposed method with different viscosity coefficients for Example 1

Figure 2
figure 2

Evolution profiles of the numerical solutions with (a\(\nu =10^{-3}\) and (b\(\nu =10^{-6}\) with fixed \(h=0.001\) and \(\Delta x=\frac{1}{1000}\) for Example 1

Finally, we also observed the behavior of the numerical solutions for various viscosity coefficients \(\nu =10^{-k}\) (\(k=0,1,2,3\)) on the periodic boundary condition to observe how they behave with mild to smaller viscosity coefficients. The wave propagation outline of \(u(t,x)\) is illustrated in Fig. 3. It is clear from Fig. 3(a) and (b) that there is no sharp front in the solutions for \(\nu =10^{-1}\) and \(\nu =10^{-2}\), which becomes sharper for \(\nu =10^{-3}\) and \(\nu =10^{-4}\). In other words, as ν becomes smaller, the curves steepen and develop a shock-like discontinuity. As seen in Fig. 3(c) and (d), the proposed method is able to capture the sharp front very well under the periodic boundary conditions. Note that this test is valuable, since the Burgers equation has been studied in a limited work over the periodic boundary conditions compared to non-periodic boundary conditions.

Figure 3
figure 3

Numerical solutions of Example 1 on the periodic boundary with (a\(\nu =10^{-1}\), (b\(\nu =10^{-2}\), (c\(\nu =10^{-3}\) and (d\(\nu =10^{-4}\)

Example 2

We consider the two-dimensional unsteady Burgers equation,

$$ u_{t}+uu_{x}+uu_{y}=\nu (u_{xx}+u_{yy}) $$

on \((x,y)\in [0,1]^{2}\) with the Dirichlet boundary condition whose analytic solution [4] is given by

$$ u(t,x,y)=\frac{1}{1+\exp (\frac{x+y-t}{2\nu } )}. $$

We first examine the temporal convergence rate for the proposed method for the two viscosity coefficients \(\nu =0.1\) and \(\nu =0.01\). Results are measured by both the maximum norm and the relative \(L_{2}\) norm errors with a fixed spatial grid size \(\Delta x=\Delta y=1/2000\) and varying time step size h at two different times \(t=0.1\) and \(t=1.0\). The numerical results are listed in Table 1, and they show that the proposed method has second-order temporal convergence. Also, to assess the spatial convergence rate for the proposed method, \(\mathit {err}_{\infty }\) and \(\mathit {err}_{R2}\) are calculated with a sufficiently small temporal step size \(h=0.00002\) by the variation of spatial resolutions \(M_{x}=M_{y}\) from 20 to 640 at two different time points \(t=0.1\) and \(t=1.0\). The results are displayed in Table 2. It is seen that the rate of spatial convergence is greater than or equal to 3.

Table 1 Temporal convergence rate for Example 2
Table 2 Spatial convergence rate for Example 2 with fixed \(h=0.00002\)

To explore the efficiency of the proposed method, the method is compared with the Chebyshev spectral collocation method (CSCM) combined with the fourth-order Runge–Kutta time integration scheme developed by [4]. For the CSCM, we use the numbers of Chebyshev–Gauss–Lobatto points N and M shown in Table 3. We calculate \(\mathit {err}_{R2}\) at time \(t=0.05\) and estimate the computational time cost (CPU) for each method. The numerical results are displayed in Table 3. It can be seen that the proposed method is superior to the CSCM in terms of CPU for the two cases \(\nu =1.0\) and \(\nu =0.1\). In particular, for \(\nu =0.1\), the result shows that the proposed method is superior to the CSCM in terms of both CPU and accuracy.

Table 3 Comparison of numerical errors obtained from the proposed method and the CSCM for Example 2

Example 3

Consider the system of the two-dimensional Burgers equations (8) on \((x,y)\in [0,1]^{2}\) with the Dirichlet boundary condition whose analytic solution [4] is given by

$$ \begin{aligned} u(t,x,y)=v(t,x,y)=\frac{3}{4}- \frac{1}{4(1+\exp (\frac{4y-4x-t}{32 \nu }))}. \end{aligned} $$

We compute the relative \(L_{2}\) norm error, \(\mathit {err}_{R2}(t)\), at two times \(t=0.5\) and \(t=2.0\) with the viscosity coefficient \(\nu =0.01\) and fixed spatial grid size \(\Delta x=\Delta y=\frac{1}{160}\). Additionally, we investigate the temporal convergence rate by the variation of time step sizes from \(\frac{1}{80}\) to \(\frac{1}{2560}\). The numerical results are listed in Table 4, and the second-order convergence is numerically obtained for the two velocities u and v. To explore the efficiency of the present method, we compare the proposed method with the CSCM. The relative \(L_{2}\) norm error for u is calculated at time \(t=0.01\) with various viscosity coefficients \(\nu =1.0, 0.1, 0.01\), and 0.005. The numerical results are displayed in Table 5. One can see that our method has a good performance with a significantly reduced computational cost when compared to that of the CSCM. Overall, it could be noted that, with an increased size of the system, there is an increased efficiency in the proposed method when compared to that of the CSCM. It must be noted that the result for v has a similar aspect to that of u.

Table 4 Temporal convergence rates for Example 3, with \(\Delta x=\Delta y=\frac{1}{160}\) and \(\nu =0.01\)
Table 5 Comparison of numerical results for u obtained from the proposed method and the CSCM for Example 3

To compare the proposed method and the original ECM in terms of computational costs, we measured the relative \(L_{2}\) norm error and CPU with fixed time and grid sizes \(h = 0.005\) and \(\Delta x = 1/500\) at the different time levels \(t=1.0, 2.0\) and 3.0, and the results are listed in Table 6. Table 6 shows that the proposed method requires less CPU without any loss in accuracy when compared with the original ECM. Because similar results are obtained for u from the symmetric property of u and v, the results of u are omitted.

Table 6 Comparison of errors and CPUs of v via the proposed method and the original ECM for Example 3

5 Conclusions

A modified error correction scheme has been developed for efficiently finding numerical solutions in the BSLM framework. Instead of using the traditional way to find the departure points of the particles, we suggest a new technique by constructing new Euler polygon in the error correction strategy, depending on the given boundary conditions. To reduce the computational cost, the proposed method approximates the Jacobian value by a fixed value while maintaining the scale of error, whereas the conventional ECM performs the interpolation with derivatives newly updated in each time integration step. Through several numerical results, the proposed method has a convergence rate of 2 in time. Also, it is shown that the proposed method obtains outstanding numerical results compared with the existing methods, and it well preserves the energy and mass.