Skip to main content

An efficient adaptive grid method for a system of singularly perturbed convection-diffusion problems with Robin boundary conditions

Abstract

A system of singularly perturbed convection-diffusion equations with Robin boundary conditions is considered on the interval \([0,1]\). It is shown that any solution of such a problem can be expressed to a system of first-order singularly perturbed initial value problem, which is discretized by the backward Euler formula on an arbitrary nonuniform mesh. An a posteriori error estimation in maximum norm is derived to design an adaptive grid generation algorithm. Besides, in order to establish the initial values of the original problems, we construct a nonlinear optimization problem, which is solved by the Nelder–Mead simplex method. Numerical results are given to demonstrate the performance of the presented method.

Introduction

In this paper, we consider the following strongly coupled system of singularly perturbed convection-diffusion Robin boundary conditions problems:

$$ \textstyle\begin{cases} \mathcal{L}_{1}\overrightarrow{u}(x):=\varepsilon _{1}u_{1}''(x)+(a_{11}(x)u_{1}(x))'+(a_{12}(x)u_{2}(x))'=f_{1}(x), \quad x \in (0,1), \\ \mathcal{L}_{2}\overrightarrow{u}(x):=\varepsilon _{2}u_{2}''(x)+(a_{21}(x)u_{1}(x))'+(a_{22}(x)u_{2}(x))'=f_{2}(x), \quad x \in (0,1), \\ u_{1}(0)+\varepsilon _{1} \beta _{1} u'_{1}(0)=s_{11}, \qquad u_{1}(1)+ \varepsilon _{1} \gamma _{1} u'_{1}(1)=s_{21}, \\ u_{2}(0)+\varepsilon _{2} \beta _{2} u'_{2}(0)=s_{12}, \qquad u_{2}(1)+ \varepsilon _{2} \gamma _{2} u'_{2}(1)=s_{22}, \end{cases} $$
(1.1)

where \(\overrightarrow{u}(x)=(u_{1}(x),u_{2}(x))^{T}\), \(0\leq \varepsilon _{1},\varepsilon _{2}\ll 1\), are the perturbation parameters, \(\beta _{1}\), \(\beta _{2}\), \(\gamma _{1}\), \(\gamma _{2}\), \(s_{ij}\ (i,j=1,2)\) are given constants. For each \(i,j=1,2\) and \(x\in [0,1]\), \(a_{ij}(x)\) are sufficiently smooth functions, and there exist constants \(\alpha _{i}\ (i=1,2)\) and C such that

$$\begin{aligned} &a_{ii}(x)\geq \alpha _{i}>0,\qquad a_{ij}(x)< 0,\quad i\neq j, \end{aligned}$$
(1.2)
$$\begin{aligned} &a_{ii}(x)\geq \bigl\vert a_{ij}(x) \bigr\vert \quad\text{for } x\in [0,1], i\neq j, \end{aligned}$$
(1.3)
$$\begin{aligned} & \bigl\vert f_{k}^{j}(x) \bigr\vert \leq C \biggl(1+ \varepsilon _{1}^{k-1-j} \exp \biggl(-\frac{\alpha x}{\varepsilon _{1}} \biggr)+ \varepsilon _{2}^{2-k-j} \exp \biggl(-\frac{\alpha x}{\varepsilon _{2}} \biggr) \biggr), \end{aligned}$$
(1.4)

where \(\alpha =\min \{ \alpha _{1},\alpha _{2} \} \), \(k=1,2\). Under these conditions, there exists a unique solution \(\overrightarrow{u}(t)\) of problem (1.1). Such type of problems appear in optimal control problems and in certain resistor-capacitor circuits (see [1]).

It is well known that many numerical methods have been developed for the solution of singularly perturbed problems (see [24] for example). To capture the singularly perturbed nature of these problems, one effective approach is based on the use of meshes that are designed to be very fine where sharp layer appears in the solution. Such meshes contain two classes: special meshes (e.g., Shishkin meshes) that are chosen by a priori information and adaptive meshes that are generated by a grid iterative algorithm. Over the past few decades, the special mesh approach [510] was used to solve some system of singularly perturbed problems. The authors in [11, 12] proposed adaptive grid methods to solve the system of singularly perturbed convection-diffusion problems with Dirichlet boundary conditions. As far as we know, the adaptive grid methods for the system of singularly perturbed convection-diffusion Robin boundary problems are not found in the literature.

In this paper, we propose an adaptive grid method to solve the above problem (1.1). An upwind finite difference scheme is developed to approximate the system of first-order singularly perturbed differential equations transformed from problem (1.1). Then, an a posteriori error estimate for the presented finite difference scheme is derived, which is used to design an adaptive grid algorithm(see [13]). In addition, in order to establish the approximation values of \(u'_{1}(0)\) and \(u'_{2}(0)\), we design a nonlinear optimization problem, which is solved by the Nelder–Mead simplex method [14]. Finally, linear and nonlinear numerical examples are used to verify the effectiveness and practicability of the proposed adaptive grid method.

Notations. Throughout this paper, let C be a generic positive constant that is independent of all perturbation parameters \(\varepsilon _{i}\) (\(i=1,2\)) and mesh parameter N. It may take different values in different place. Besides, in our estimates, we use the \(L_{\infty }\) norm defined by

$$\begin{aligned} \bigl\Vert v(x) \bigr\Vert _{\infty }=\operatorname{ess} \sup _{x\in [0,1)} \bigl\vert v(x) \bigr\vert . \end{aligned}$$

For vector-valued functions \(\mathbf{v}= (v_{1}(x),v_{2}(x) )^{T}\), let \(|\mathbf{v}|= (|v_{1}(x)|,|v_{2}(x)| )^{T}\) and \(\|\mathbf{v}\|_{\infty }=\max \{ \|v_{1}\|_{\infty },\|v_{2}\|_{ \infty } \} \). For a real-valued mesh function \(\varphi:= \{ \varphi (x_{i}) \} _{i=0}^{N}\), define the discrete maximum norm for such functions by \(\|\varphi \|_{\infty }=\max_{i=0,1,\ldots,N}|\varphi (x_{i})|\). For vector mesh functions \(\mathbf{V}:= \{ (V_{1}(x_{i}),V_{2}(x_{i}))^{T} \} _{i=0}^{N}\), we set \(\|\mathbf{V}\|_{\infty }=\max \{ \|V_{1}\|_{\infty }, \|V_{2}\|_{ \infty } \} \).

Reformulation of the boundary value problem

Our numerical method for solving (1.1) is based on reformulating it as a system of first-order singularly perturbed differential equations, for which we will design an adaptive grid method.

Now, we integrate the two sides of the first two equations of problem (1.1) from 0 to x and write it into the following matrix form:

$$ \textstyle\begin{cases} \mathcal{L}\overrightarrow{u}(x):=E\overrightarrow{u}'(x) +A(x) \overrightarrow{u}(x)=\overrightarrow{F}(x)+E\overrightarrow{u}'(0)+A(0) \overrightarrow{u}(0),\\ \quad x\in \Omega =(0,1), \\ \overrightarrow{u}(0)=\overrightarrow{\eta },\qquad \overrightarrow{u}'(0)= \overrightarrow{\theta }, \end{cases} $$
(2.1)

where \(\overrightarrow{u}(x)=(u_{1}(x),u_{2}(x))^{T}\), \(E=\operatorname{diag}(\varepsilon _{1},\varepsilon _{2})\), \(\overrightarrow{F}(x)=\int _{0}^{x}\overrightarrow{f}(t)\,\mathrm{d}t\), \(\overrightarrow{f}(t)= (f_{1}(t),f_{2}(t) )^{T}\), \(\overrightarrow{\eta }=(\eta _{1}, \eta _{2})^{T}\), \(\overrightarrow{\theta }=(\theta _{1},\theta _{2})^{T}\), and

$$ A(x)= \begin{pmatrix} a_{11}(x), a_{12}(x) \\ a_{21}(x), a_{22}(x) \end{pmatrix}. $$

Then, from the Robin boundary conditions of problem (1.1), we have

$$\begin{aligned} \overrightarrow{\eta }+E\beta \overrightarrow{\theta }= \overrightarrow{s}_{1}, \end{aligned}$$

where β= ( β 1 0 0 β 2 ) , s 1 = ( s 11 , s 12 ) T . It should be pointed out that the constant vector \(\overrightarrow{\eta }\) is an initial condition which will be adjusted so that the solution satisfies the right Robin boundary condition of problem (1.1). In recent years, the numerical methods of this type of equations were discussed in [15, 16]. Our numerical method for solving (1.1) is based on discretizing (2.1). That is, we solve our original Robin boundary problems by applying the adaptive grid approach to solve problem (2.1). This numerical method is cheap: a direct method to settle (1.1) would entail solving a linear system of equations with \(2N+2\) unknowns, but when using (2.1) instead, we only solve N second-order linear systems.

For the later analysis of our numerical method, further information about the structure of the continuous solution \(\overrightarrow{u}(x)\) of (2.1) is needed. We shall mainly consider the following stability result for problem (2.1).

Lemma 2.1

(Stability result)

The solution \(\overrightarrow{u}(x)\) of the initial value problem (2.1) satisfies the following inequality:

$$\begin{aligned} \bigl\Vert \overrightarrow{u}(x) \bigr\Vert _{\infty }\leq C\max \bigl\{ \vert \overrightarrow{\eta } \vert , \bigl\Vert \mathcal{L} \overrightarrow{u}(x) \bigr\Vert _{\infty } \bigr\} ,\quad \forall x\in (0,1). \end{aligned}$$
(2.2)

Proof

The proof can be seen in Theorem 2.4 of [15]. □

Corollary 2.1

For two given function vectors \(\overrightarrow{v}(x)\) and \(\overrightarrow{w}(x)\), let

$$ \overrightarrow{v}(0)=\overrightarrow{w}(0) $$

and

$$\begin{aligned} \mathcal{L}\overrightarrow{v}(x)-\mathcal{L}\overrightarrow{w}(x)= \overrightarrow{G}(x), \end{aligned}$$
(2.3)

where \(\overrightarrow{G}(x)\) is a piecewise continuous function vector. Then we have

$$\begin{aligned} \bigl\Vert \overrightarrow{v}(x)-\overrightarrow{w}(x) \bigr\Vert _{\infty } \leq C \bigl\Vert \mathcal{L}\overrightarrow{v}(x)-\mathcal{L} \overrightarrow{w}(x) \bigr\Vert _{\infty }. \end{aligned}$$
(2.4)

Discretization and nonuniform mesh

Finite difference discretization

Let \(\bar{\Omega }_{N}=\{x_{i}|0=x_{0}< x_{1}<\cdots <x_{N}=1\}\) be an arbitrary nonuniform mesh and \(h_{i}=x_{i}-x_{i-1}, i=1,\ldots,N\), be the local mesh size. Then the finite difference scheme of (2.1) can be constructed as follows:

$$\begin{aligned} \begin{aligned} &\mathcal{L}^{N} \overrightarrow{U}_{i}:=E D^{-} \overrightarrow{U}_{i}+A_{i} \overrightarrow{U}_{i}=\sum_{j=1}^{i} \int _{x_{j-1}}^{x_{j}}\overrightarrow{f}(x_{j})\,{ \mathrm{ d}t}+E \overrightarrow{\theta }+A(0)\overrightarrow{\eta },\quad 1\leq i \leq N, \\ &\overrightarrow{U}_{0}=\overrightarrow{u}(0)=\overrightarrow{\eta }, \end{aligned} \end{aligned}$$
(3.1)

where \(D^{-}\overrightarrow{U}_{i}= \frac{\overrightarrow{U}_{i}-\overrightarrow{U}_{i-1}}{h_{i}}\), \(A_{i}=A(x_{i})\), and \(\overrightarrow{U}_{i}=(U_{1i},U_{2i})^{T}\) is the approximation solution of \(\overrightarrow{u}(x_{i})\). Here, we use \(\sum_{j=1}^{i}\int _{x_{j-1}}^{x_{j}}\overrightarrow{f}(x_{j})\,\mathrm{ d}t\) to approximate the integral term \(\int _{0}^{x_{i}}\overrightarrow{f}(t)\,{\mathrm{ d}t}\).

Next, we give the stability property for the discrete scheme (3.1). The discrete maximum principle implies the following discrete stability result.

Theorem 3.1

Let \(\{ \overrightarrow{U}_{i} \} _{i=0}^{N}\) be the solution of difference scheme (3.1) computed on an arbitrary mesh \(\{ x_{i} \} _{i=0}^{N}\). Then we have

$$\begin{aligned} \Vert \overrightarrow{U} \Vert _{\infty }\leq C\max \bigl\{ \bigl\Vert \overrightarrow{U}(0) \bigr\Vert _{\infty }, \bigl\Vert \mathcal{L}^{N} \overrightarrow{U} \bigr\Vert _{\infty } \bigr\} ,\quad 0\leq i\leq N. \end{aligned}$$

Proof

The proof can be seen in Lemma 3.2 of [14]. □

Nonuniform mesh generation algorithm

It is well known that many researchers developed an adaptive grid method to solve the single singularly perturbed differential equation (see, e.g., [1519]). In these works, the authors used the arc-length monitor function to design a grid generation algorithm. Recently, Liu and Chen [13] proposed an adaptive grid method for a system of singularly perturbed differential equations.

In this paper, similar to [13, 17], we also choose the following monitor function:

$$\begin{aligned} \widetilde{M} \bigl(\overrightarrow{U}(x),x \bigr) =\sqrt{1+\max _{x\in (0,1]} \bigl\{ \bigl[\widetilde{U}'_{1}(x) \bigr]^{2}, \bigl[\widetilde{U}'_{2}(x) \bigr]^{2} \bigr\} }, \end{aligned}$$

where \(\widetilde{U}_{j}(x)\in C(0,1]\) is a piecewise linear interpolation function through the knots \((x_{i},U_{j,i} )\), \(j=1,2\), \(i=0,1,\ldots,N\). Thus, the key technologies of the adaptive mesh method is to find \((x_{i},U_{j,i} )\) such that

$$\begin{aligned} \int _{x_{i}}^{x_{i+1}}\widetilde{M} \bigl( \overrightarrow{U}(x),x \bigr)\,\mathrm{ d}x=\frac{1}{N} \int _{0}^{1} \widetilde{M} \bigl( \overrightarrow{U}(x),x \bigr)\,\mathrm{ d}x, \end{aligned}$$
(3.2)

where \(j=1,2, i=0,1,\ldots,N-1\).

Here, in order to solve the above equidistribution problem (3.2), we construct the following grid iteration algorithm [17].

Step 1. Let \(k=0\), choose \(\bar{\Omega }_{N}^{(k)}= \{ x_{i}|x_{i}=i/N,i=0,1,\ldots,N \} \) as an initial mesh.

Step 2. For given k, assume that the mesh \(\bar{\Omega }_{N}^{(k)}= \{ x_{0}^{(k)},x_{1}^{(k)},\ldots,x_{N}^{(k)} \} \) and the corresponding computational solutions \(\{ U_{j,i}^{(k)} \} \) satisfy (3.2). Let \(h_{i}^{(k)}=x_{i}^{(k)}-x_{i-1}^{(k)}\) for each i and

$$\begin{aligned} l_{i}^{(k)}=\sqrt{ \bigl(h_{i}^{(k)} \bigr)^{2}+\max_{1 \leq j\leq 2} \bigl[ \bigl(U_{j,i}^{(k)}-U_{j,i-1}^{(k)} \bigr)^{2} \bigr]} \end{aligned}$$

be the maximum arc-length between the points \((x_{i-1}^{(k)},U_{j,i-1}^{(k)} )\) and \((x_{i}^{(k)},U_{j,i}^{(k)} )\) in the piecewise linear computed solutions \(\widetilde{U}_{j}^{(k)}(x)\), where \(j=1,2\). Then

$$\begin{aligned} L^{(k)}=\sum_{i=1}^{N}\sqrt { \bigl(h_{i}^{(k)} \bigr)^{2} +\max _{1\leq j\leq 2 } \bigl[ \bigl(U_{j,i}^{(k)}-U_{j,i-1}^{(k)} \bigr)^{2} \bigr]}. \end{aligned}$$

Step 3. Choose a user-chosen constant \(C_{0}>1\). If \(C_{0}\) satisfies the following stopping criterion:

$$\begin{aligned} \frac{\max_{1\leq i\leq N} \{ l_{i}^{(k)} \} }{L^{(k)}}\leq \frac{C_{0}}{N}, \end{aligned}$$
(3.3)

then go to Step 5. Otherwise, continue to Step 4.

Step 4. Generate a new mesh \(\bar{\Omega }_{N}^{(k+1)}= \{ 0=x_{0}^{(k+1)}< x_{1}^{(k+1)}< \cdots <x_{N}^{(k+1)}=1 \} \) such that

$$\begin{aligned} \int _{x_{i-1}^{(k+1)}}^{x_{i}^{(k+1)}} \sqrt{1+\max _{x\in (0,1]} \bigl\{ \bigl[ \bigl(\widetilde{U}_{1}^{k}(x) \bigr)' \bigr]^{2}, \bigl[ \bigl(\widetilde{U}_{2}^{k}(x) \bigr)' \bigr]^{2} \bigr\} }\,\mathrm{ d}x=L^{(k)}/N, \end{aligned}$$
(3.4)

where \(i=1,2,\ldots,N \). \(k=k+1\), return to Step 2.

Step 5. Set \(x_{i}^{*}=x_{i}^{(k+1)}\) and \(U_{j,i}^{*}=U_{j,i}^{(k+1)}\), \(j=1,2\), \(i=0,1,\ldots,N\), then stop.

A posterior error analysis

Let \(\overrightarrow{U}^{N}(x)\) be a piecewise linear interpolation function vector of the solution \(\{ \overrightarrow{U}_{i} \} _{i=0}^{N}\), this yields

$$\begin{aligned} \overrightarrow{U}^{N}(x)=\overrightarrow{U}_{i}+(x-x_{i}) D^{-} \overrightarrow{U}_{i},\quad x\in (x_{i-1},x_{i}). \end{aligned}$$
(4.1)

Then, based on this interpolation function (4.1), we can derive the following a posteriori error estimate for the discrete scheme (3.1).

Theorem 4.1

Let \(\overrightarrow{u}(x)\) be the exact solution of equation (2.1), \(\overrightarrow{U}_{i}\) be the discrete solution of equation (3.1), and \(\overrightarrow{U}^{N}(x)\) be its piecewise linear interpolation function vector defined in (4.1). Then we have

$$\begin{aligned} \bigl\Vert \overrightarrow{U}^{N}(x)- \overrightarrow{u}(x) \bigr\Vert _{\infty }\leq C\max_{1\leq i\leq N} \Bigl\{ h_{i}+h_{i}\max_{1\leq j\leq 2} \bigl\vert D^{-}{U}_{ji} \bigr\vert \Bigr\} . \end{aligned}$$
(4.2)

Proof

By the definition of the differential operator \(\mathcal{L}\), we have

$$\begin{aligned} \begin{aligned} \mathcal{L}\overrightarrow{U}^{N}(x)- \mathcal{L}\overrightarrow{u}(x)={}&ED^{-} \overrightarrow{U}_{i}+A(x) \overrightarrow{U}^{N}(x)- \biggl( \int _{0}^{x} \overrightarrow{f}(t)\,{\mathrm{ d}t}+E\overrightarrow{\theta }+A(0) \overrightarrow{\eta } \biggr) \\ ={}&\sum_{j=1}^{i} \int _{x_{j-1}}^{x_{j}}\overrightarrow{f}(x_{j})\, \mathrm{ d}t-A_{i}\overrightarrow{U}_{i}+A(x) \overrightarrow{U}^{N}(x)- \int _{0}^{x}\overrightarrow{f}(t)\,{\mathrm{ d}t} \\ ={}&\sum_{j=1}^{i} \int _{x_{j-1}}^{x_{j}}\overrightarrow{f}(x_{j})\, \mathrm{ d}t - \int _{0}^{x_{i}}\overrightarrow{f}(t)\,{\mathrm{ d}t}+ \int _{x}^{x_{i}} \overrightarrow{f}(t)\,{\mathrm{ d}t} \\ &{}+A(x)\overrightarrow{U}^{N}(x)-A_{i}\overrightarrow{U}_{i} \\ ={}&\overrightarrow{p}+\overrightarrow{q}+\overrightarrow{r}, \end{aligned} \end{aligned}$$
(4.3)

where

$$\begin{aligned} &\overrightarrow{p}=\sum_{j=1}^{i} \int _{x_{j-1}}^{x_{j}} \bigl(\overrightarrow{f}(x_{j})- \overrightarrow{f}(t) \bigr)\,{\mathrm{ d}t}, \\ &\overrightarrow{q}= \int _{x}^{x_{i}}\overrightarrow{f}(t)\,{\mathrm{ d}t}, \\ &\overrightarrow{r}=A(x)\overrightarrow{U}^{N}(x)-A_{i} \overrightarrow{U}_{i}. \end{aligned}$$

For the first term of (4.3), we have

$$\begin{aligned} \begin{aligned} \vert \overrightarrow{p} \vert &\leq \sum _{j=1}^{i} \biggl\vert \int _{x_{j-1}}^{x_{j}}\overrightarrow{f}(x_{j})- \overrightarrow{f}(t)\,{\mathrm{ d}t} \biggr\vert \\ &\leq \sum_{j=1}^{i} \int _{x_{j-1}}^{x_{j}} \bigl\vert \overrightarrow{f}'(t) \bigr\vert (t-x_{j-1})\,{\mathrm{ d}t} \\ &\leq \sum_{j=1}^{i} h_{j} \int _{x_{j-1}}^{x_{j}} \bigl\vert \overrightarrow{f}'(t) \bigr\vert \,{\mathrm{ d}t} \\ &\leq C\max_{1\leq i\leq N} h_{i} \begin{pmatrix} \int _{0}^{1} \vert f_{1}'(t) \vert \,{\mathrm{ d}t} \\ \int _{0}^{1} \vert f_{2}'(t) \vert \,{\mathrm{ d}t} \end{pmatrix} \\ &\leq C\max_{1\leq i\leq N} h_{i} \begin{pmatrix} 1 \\ 1 \end{pmatrix}, \end{aligned} \end{aligned}$$
(4.4)

where condition (1.4) is used.

Obviously, the second term of (4.3) satisfies the following estimation:

$$\begin{aligned} \vert \overrightarrow{q} \vert \leq Ch_{i} \begin{pmatrix} 1 \\ 1 \end{pmatrix}. \end{aligned}$$
(4.5)

For the third term of (4.3), we have

$$\begin{aligned} \begin{aligned} \vert \overrightarrow{r} \vert &= \bigl\vert A(x)\overrightarrow{U}^{N}(x)-A_{i} \overrightarrow{U}_{i} \bigr\vert \\ &= \bigl\vert A(x) \bigl(\overrightarrow{U}_{i}+D^{-} \overrightarrow{U}_{i}(x-x_{i}) \bigr)-A_{i} \overrightarrow{U}_{i} \bigr\vert \\ &= \bigl\vert \bigl(A(x)-A_{i} \bigr)\overrightarrow{U}_{i}+A(x)D^{-} \overrightarrow{U}_{i}(x-x_{i}) \bigr\vert \\ &\leq \bigl\vert A(x)-A_{i} \bigr\vert \vert \overrightarrow{U}_{i} \vert + \bigl\vert A(x) \bigr\vert \bigl\vert D^{-}\overrightarrow{U}_{i} \bigr\vert h_{i} \\ &\leq Ch_{i} \begin{pmatrix} 1 \\ 1 \end{pmatrix}+ Ch_{i} \begin{pmatrix} 1 &1 \\ 1& 1 \end{pmatrix} \begin{pmatrix} \vert D^{-}U_{1i} \vert \\ \vert D^{-}U_{2i} \vert \end{pmatrix}, \end{aligned} \end{aligned}$$
(4.6)

where we have used the assumptions of \(a_{ij}(x)\) and Theorem 3.1.

Combined with (4.3)–(4.6) and Corollary 2.1, we can obtain

$$\begin{aligned} \bigl\Vert \overrightarrow{U}^{N}(x)-\overrightarrow{u}(x) \bigr\Vert _{\infty }\leq C \max_{1\leq i\leq N} \Bigl\{ h_{i}+h_{i}\max_{1\leq j \leq 2} \bigl\vert D^{-}U_{ji} \bigr\vert \Bigr\} . \end{aligned}$$
(4.7)

 □

Numerical results and discussion

In Sect. 5.1, we first design a numerical method to obtain the parameter vector \(\overrightarrow{\theta }\) defined in (3.1). Then, numerical experiments are presented in Sect. 5.2 to demonstrate the validity and efficiency of the presented adaptive grid method. In the numerical experiments below, we shall take \(C_{0}=1.1\).

For comparison purpose, the presented finite difference scheme (3.1) is also studied on a piecewise-uniform Shishkin mesh, which is constructed as follows [20]: Let N be divisible by 3 and \(\lambda >0\) be a mesh parameter. Fixed mesh transition points \(\sigma _{1}\) and \(\sigma _{2}\) are as follows:

$$\begin{aligned} \sigma _{2}=\min \biggl\{ \frac{2}{3},\frac{\varepsilon _{2}}{\lambda } \ln N \biggr\} , \qquad\sigma _{1}=\min \biggl\{ \frac{\sigma _{2}}{2}, \frac{\varepsilon _{1}}{\lambda }\ln N \biggr\} . \end{aligned}$$

Then the mesh is obtained by dividing each of the intervals \([0,\sigma _{1}]\), \([\sigma _{1},\sigma _{2}]\), and \([\sigma _{2},1]\) into \(N/3\) equal subintervals.

A calculating method of initial values

At first, from the first Robin boundary conditions of problem (1.1), we have

$$\begin{aligned} \overrightarrow{\eta }=-E\beta \overrightarrow{\theta }+ \overrightarrow{s}_{1}. \end{aligned}$$
(5.1)

Then, for given \(\overrightarrow{\theta }\), combining with (5.1), we can use the presented adaptive grid method to calculate the numerical solution \(\overrightarrow{U}_{i}\) of (2.1). Obviously, the numerical solution \(\overrightarrow{U}_{i}\) depends on the value of \(\overrightarrow{\theta }\). Finally, in order to obtain the approximation value of \(\overrightarrow{\theta }\), we construct the following optimization problem:

$$\begin{aligned} \min Z (\overrightarrow{\theta } )= {}&\biggl\Vert \biggl( \overrightarrow{U}_{0}+E \beta \frac{\overrightarrow{U}_{1}-\overrightarrow{U}_{0}}{h_{1}}- \overrightarrow{s}_{1} \biggr)^{2} \\ &{}+ \biggl(\overrightarrow{U}_{N}+E \gamma \frac{\overrightarrow{U}_{N}-\overrightarrow{U}_{N-1}}{h_{N}}- \overrightarrow{s}_{2} \biggr)^{2} \biggr\Vert , \end{aligned}$$
(5.2)

where γ= ( γ 1 0 0 γ 2 ) , s 2 = ( s 21 , s 22 ) T .

Since the above objective function \(Z (\overrightarrow{\theta } )\) is an implicit function above variable \(\overrightarrow{\theta }\), we choose the Nelder–Mead simplex method [14] to solve the above nonlinear optimization problem (5.2).

Example 1: a linear problem

In this section, we give a linear test problem to illustrate the theoretical result of the presented adaptive grid method

$$\begin{aligned} &\varepsilon _{1}u''_{1}(x)+ \bigl((2x+1)u_{1}(x) \bigr)'- \bigl(x^{2}u_{2}(x) \bigr)'=f_{1}(x),\quad x\in (0,1), \end{aligned}$$
(5.3)
$$\begin{aligned} &\varepsilon _{2}u''_{2}(x)- \bigl(x^{2}u_{1}(x) \bigr)'+ \bigl(u_{2}(x) \bigr)'=f_{2}(x),\quad x \in (0,1) \end{aligned}$$
(5.4)

with Robin boundary conditions

$$\begin{aligned} &u_{1}(0)+\varepsilon _{1}u'_{1}(0)=1,\qquad u_{1}(1)+\varepsilon _{1} u'_{1}(1)=2+2 \varepsilon _{1}, \\ &u_{2}(0)+\varepsilon _{2}u'_{2}(0)=2,\qquad u_{2}(1)+\varepsilon _{2} u'_{2}(1)=4+3 \varepsilon _{2}-\varepsilon _{2} \cos 1-\sin 1. \end{aligned}$$

Here, we choose \(f_{1}(x)\) and \(f_{2}(x)\) to agree with the following exact solutions:

$$\begin{aligned} &u_{1}(x)=1-\exp (-x/\varepsilon _{1})+x^{2}, \\ &u_{2}(x)=2-2\exp (-x/\varepsilon _{2})+x(1+x)-\sin x. \end{aligned}$$

Recalling that \(\overrightarrow{U}_{i}^{N}\) is the solution of the discrete scheme (3.1), we calculate the errors

$$\begin{aligned} E_{\varepsilon _{1},\varepsilon _{2}}^{N}:=\max_{0\leq i \leq N} \bigl\Vert \overrightarrow{u}(x_{i})-\overrightarrow{U}_{i}^{N} \bigr\Vert _{\infty }, \end{aligned}$$
(5.5)

where \(x_{i}\) are the points in the final mesh generated by the above iteration algorithm. Rates of convergence are calculated by

$$\begin{aligned} r_{\varepsilon _{1},\varepsilon _{2}}^{N}=\log _{2} \biggl( \frac{E_{\varepsilon _{1},\varepsilon _{2}}^{N}}{E_{\varepsilon _{1},\varepsilon _{2}}^{2N}} \biggr). \end{aligned}$$
(5.6)

For different values of \(\varepsilon _{i}\ (i=1,2)\) and N, we use the Nelder–Mead simplex method to calculate the above nonlinear optimization problem (5.2) with \((2,2)^{T}\) as the initial value of \(\overrightarrow{\theta }\). Next, for \(\varepsilon _{1}=2^{-9}\), \(\varepsilon _{2}=2^{-2k}\) and \(\varepsilon _{2}=2^{-9}\), \(\varepsilon _{1}=2^{-2k}\), where \(k=0,1,\ldots,10\), we use the presented adaptive grid method to calculate the test problem with \(N=32,64,128,256,512,1024\), and the errors in the maximum norm, the rates of convergence, and the number of iterations K are given in Tables 12. Besides, to illustrate the advantages of the adaptive grid method, we also compare the numerical results computed on an adaptive grid to those obtained on a Shishkin mesh, see Table 3. It is shown from these results that the convergence order of the presented adaptive grid method is first order and the accuracy of adaptive grid method is higher than that of Shishkin mesh method.

Table 1 Numerical results with \(\varepsilon _{1}=2^{-9}\) for Example 1
Table 2 Numerical results with \(\varepsilon _{2}=2^{-9}\) for Example 1
Table 3 Comparison of numerical results with Shishkin mesh for Example 1

For \(\varepsilon _{1}=10^{-6}\), \(\varepsilon _{2}=10^{-8}\), and \(N=64\), Fig. 1 shows the changing process of mesh movement with the number of iterations K. The right-hand part of this figure is labeled with the value of \(C_{0}\) for which the stopping criterion (3.3) becomes an equation. It is shown from Fig. 1 that the solution of Example 1 has a boundary layer at \(x=0\).

Figure 1
figure1

Mesh movement with \(\varepsilon _{1}=10^{-6}\), \(\varepsilon _{2}=10^{-8}\), and \(N=64\) for Example 1

A nonlinear problem

To demonstrate that our presented adaptive grid method can be successfully applied in a nonlinear setting, consider the following system of quasi-linear convection-diffusion equations:

$$\begin{aligned} &\varepsilon _{1} u''_{1}(x)+ \bigl(b_{1} \bigl(x,u_{1}(x),u_{2}(x) \bigr) \bigr)'=f_{1}(x), \end{aligned}$$
(5.7)
$$\begin{aligned} &\varepsilon _{2} u''_{2}(x)+ \bigl(b_{2} \bigl(x,u_{1}(x),u_{2}(x) \bigr) \bigr)'=f_{2}(x) \end{aligned}$$
(5.8)

with Robin boundary conditions

$$\begin{aligned} &u_{1}(0)+\varepsilon _{1} \beta _{1} u'_{1}(0)=s_{11}, \qquad u_{1}(1)+ \varepsilon _{1} \gamma _{1} u'_{1}(1)=s_{21}, \end{aligned}$$
(5.9)
$$\begin{aligned} &u_{2}(0)+\varepsilon _{2} \beta _{2} u'_{2}(0)=s_{12},\qquad u_{2}(1)+ \varepsilon _{2} \gamma _{2} u'_{2}(1)=s_{22}. \end{aligned}$$
(5.10)

As far as we know, the layer-adapted meshes and adaptive grid approaches for a single singularly perturbed quasi-linear two-point boundary value problem have attracted much attention; see [19, 21] and the references therein. However, the adaptive grid method for the system of quasi-linear convection-diffusion equations (5.7)–(5.10) is not found in the literature to the best of our knowledge. Thus, in this paper, we will also use the presented adaptive grid method to solve the following test problem:

$$ \textstyle\begin{cases} \varepsilon _{1}u_{1}''(x)+ (3u_{1}(x)-\frac{1}{4}e^{-u_{1}^{2}(x)}-u_{2}(x) )'=2x,\quad x\in (0,1), \\ \varepsilon _{2}u_{2}''(x)+ (4u_{2}(x)-\cos (u_{2}(x))-u_{1}(x) )'=\exp (x),\quad x\in (0,1), \\ u_{1}(0)+\varepsilon _{1} u'_{1}(0)=-\frac{3}{4}, \qquad u_{1}(1)+ \varepsilon _{1} u'_{1}(1)=\frac{1}{4}, \\ u_{2}(0)+\varepsilon _{2} u'_{2}(0)=2,\qquad u_{2}(1)+\varepsilon _{2} u'_{2}(1)=e+1. \end{cases} $$

The exact solution is unknown, so we take \(\bar{U}_{j}^{2048}(x)\) as our reference solution, which is the piecewise linear interpolation function through points \((x_{i},U_{ji}^{4096} ),i=0,1,\ldots,N\). Then the error in each computed solution can be given as follows:

$$\begin{aligned} E_{\varepsilon _{1},\varepsilon _{2}}^{N}=\max_{0\leq i\leq N} \max _{1\leq j\leq 2} \bigl\vert \bar{U}^{2048}_{j}(x_{i})-U^{N}_{j,i} \bigr\vert . \end{aligned}$$

Here, we also use (5.6) to calculate the rates of convergence.

Let \((-1,1)^{T}\) be the initial value of \(\overrightarrow{\theta }\). Then we utilize the Nelder–Mead simplex algorithm to solve the optimization problem (5.2) for \(\varepsilon _{1}\), \(\varepsilon _{2}\), and N. For \(\varepsilon _{1}=10^{-4}\), \(\varepsilon _{2}=10^{-2k}(k=1,\ldots,5)\), and \(N=32,64,128,256,512,1024\), Table 4 lists the errors and rates of convergence for the numerical solutions of this nonlinear test problem. One can see that the presented adaptive grid method is quite successful: for large N, the errors are robust with respect to \(\varepsilon _{i}\ (i=1,2)\) and the convergence rates are close to one. In addition, the evolution process of the mesh by the above iteration algorithm is given in Fig. 2 for the case \(\varepsilon _{1}=10^{-4}\), \(\varepsilon _{2}=10^{-3}\), and \(N=64\), which shows that this nonlinear test problem also has a boundary layer at \(x=0\).

Figure 2
figure2

Mesh movement with \(\varepsilon _{1}=10^{-4}\), \(\varepsilon _{2}=10^{-3}\), and \(N=64\) for Example 2

Table 4 Numerical results with \(\varepsilon _{1}=10^{-4}\) for Example 2

Conclusion

It was shown that a system of singularly perturbed convection-diffusion equations with Robin boundary conditions could be reformulated in terms of a first-order system of singularly perturbed initial value problems. It also led to the development of an efficient adaptive grid method for solving the original problem.

Our numerical experiment has shown that the presented method can achieve first-order convergence. It should be pointed out that the ideas presented in this paper can be used to deal with the other high-order singularly perturbed differential equations with Robin boundary conditions.

Availability of data and materials

Not applicable.

References

  1. 1.

    Kokotović, P.V.: Applications of singular perturbation techniques to control problems. SIAM Rev. 26, 501–550 (1984)

    MathSciNet  Article  Google Scholar 

  2. 2.

    Turkyilmazoglu, M.: Analytic approximate solutions of parameterized unperturbed and singularly perturbed boundary value problems. Appl. Math. Model. 35, 3879–3886 (2011)

    MathSciNet  Article  Google Scholar 

  3. 3.

    Turkyilmazoglu, M.: Series solution of nonlinear two-point singularly perturbed boundary layer problems. Comput. Math. Appl. 60, 2109–2114 (2010)

    MathSciNet  Article  Google Scholar 

  4. 4.

    Kadalbajoo, M.K., Gupta, V.: A brief survey on numerical methods for solving singularly perturbed problems. Appl. Math. Comput. 217, 3641–3716 (2010)

    MathSciNet  MATH  Google Scholar 

  5. 5.

    Bellew, S., O’Riordan, E.: A parameter robust numerical method for a system of two singularly perturbed convection-diffusion equations. Appl. Numer. Math. 51, 171–186 (2004)

    MathSciNet  Article  Google Scholar 

  6. 6.

    O’Riordan, E., Stynes, J., Stynes, M.: A parameter-uniform finite difference method for a coupled system of convection-diffusion two-point boundary value problems. J. Comput. Math. 1, 176–197 (2008)

    MathSciNet  MATH  Google Scholar 

  7. 7.

    Cen, Z.: Parameter-uniform finite difference scheme for a system of coupled singularly perturbed convection-diffusion equations. Int. J. Comput. Math. 82, 177–192 (2005)

    MathSciNet  Article  Google Scholar 

  8. 8.

    Priyadharshini, R.M., Ramanujam, N.: Uniformly-convergent numerical methods for a system of coupled singularly perturbed convection-diffusion equations with mixed type boundary conditions. Math. Model. Anal. 18, 577–598 (2013)

    MathSciNet  Article  Google Scholar 

  9. 9.

    Basha, P.M., Shanthi, V.: A numerical method for singularly perturbed second order coupled system of convection-diffusion Robin type boundary value problems with discontinuous source term. Int. J. Appl. Comput. Math. 3, 381–397 (2015)

    MathSciNet  Article  Google Scholar 

  10. 10.

    Rao, S.C.S., Chawla, S.: Robin boundary value problems for a singularly perturbed weakly coupled system of convection-diffusion equations having discontinuous source term. J. Anal. 28, 305–321 (2020)

    MathSciNet  Article  Google Scholar 

  11. 11.

    Linß, T.: Analysis of a system of singularly perturbed convection-diffusion equations with strong coupling. SIAM J. Numer. Anal. 47, 1847–1862 (2009)

    MathSciNet  Article  Google Scholar 

  12. 12.

    Liu, L.B., Chen, Y.: A robust adaptive grid method for a system of two singularly perturbed convection-diffusion equations with weak coupling. J. Sci. Comput. 61, 1–16 (2014)

    MathSciNet  Article  Google Scholar 

  13. 13.

    Liu, L.B., Chen, Y.: An adaptive moving grid method for a system of singularly perturbed initial value problems. J. Comput. Appl. Math. 274, 11–22 (2015)

    MathSciNet  Article  Google Scholar 

  14. 14.

    Olsson, D.M., Nelson, L.S.: The Nelder–Mead simplex procedure for function minimization. Technometrics 17, 45–51 (1975)

    Article  Google Scholar 

  15. 15.

    Mackenzie, J.: Uniform convergence analysis of an upwind finite difference approximation of a convection-diffusion boundary value problem on an adaptive gird. SIMA J. Numer. Anal. 1, 233–249 (1999)

    Article  Google Scholar 

  16. 16.

    Qiu, Y., Sloan, D.M., Tang, T.: Numerical solution of a singularly perturbed two-point boundary value problem using equidistribution: analysis of convergence. J. Comput. Appl. Math. 116, 121–143 (2000)

    MathSciNet  Article  Google Scholar 

  17. 17.

    Mohapatra, J., Natesan, S.: Parameter-uniform numerical method for global solution and global normalized flux of singularly perturbed boundary value problems using grid equidistribution. Comput. Math. Appl. 60, 1924–1939 (2010)

    MathSciNet  Article  Google Scholar 

  18. 18.

    Kopteva, N.: Maximum norm a posteriori error estimates for a one-dimensional convection-diffusion problem. SIAM J. Numer. Anal. 39, 423–441 (2001)

    MathSciNet  Article  Google Scholar 

  19. 19.

    Kopteva, N., Stynes, M.: A robust adaptive method for a quasilinear one-dimensional convection-diffusion problem. SIAM J. Numer. Anal. 39, 1446–1467 (2001)

    MathSciNet  Article  Google Scholar 

  20. 20.

    Kumar, S., Kumar, M.: Parameter-robust numerical method for a system of singularly perturbed initial value problems. Numer. Algorithms 59, 185–195 (2012)

    MathSciNet  Article  Google Scholar 

  21. 21.

    Linß, T., Roos, H.G., Vulanovic, R.: Uniform pointwise convergence on Shishkin-type meshes for quasi-linear convection-diffusion problems. SIAM J. Numer. Anal. 38, 897–912 (2000)

    MathSciNet  Article  Google Scholar 

Download references

Acknowledgements

The authors wish to express their gratitude to the editors.

Funding

This work is supported by the National Science Foundation of China (11761015), the key project of Anhui natural science research (KJ2015A213), the projects of Excellent Young Talents Fund in Universities of Anhui Province (gxyq2017105), the Natural Science Foundation of Guangxi (2020GXNSFAA159010), and the key project of Guangxi Natural Science Foundation (2017GXNSFDA198014, AD20238065) and the Natural Science Key Project Fund of Chizhou University (CZ2018ZR06).

Author information

Affiliations

Authors

Contributions

The first author and the corresponding author provided the problem and gave the proof of the main results, and the other authors finished the numerical experiment. All authors read and approved the final manuscript.

Corresponding author

Correspondence to Xiaobing Bao.

Ethics declarations

Competing interests

The authors declare that they have no competing interests.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Liu, LB., Liang, Y., Bao, X. et al. An efficient adaptive grid method for a system of singularly perturbed convection-diffusion problems with Robin boundary conditions. Adv Differ Equ 2021, 6 (2021). https://doi.org/10.1186/s13662-020-03166-y

Download citation

MSC

  • 65L05
  • 65L12
  • 65L20
  • 65L70

Keywords

  • Singularly perturbed
  • Convection-diffusion problem
  • Robin boundary conditions
  • Adaptive grid