Introduction

Singular perturbation problems (SPPs) arise in various fields of science and engineering which include fluid mechanics, fluid dynamics, quantum mechanics, control theory, semiconductor device modeling, chemical reactor theory, elasticity, hydrodynamics, gas porous electrodes theory, etc. SPPs are characterized by the presence of a small parameter \((0<\varepsilon \ll 1)\) that multiplies the highest derivative term. This leads to boundary and/or interior layers in the solution of such problems. Many researchers have attracted much attention on these problems to obtain good approximate solutions for the past few decades. Since classical numerical methods fail to produce good approximations for these equations, it is inevitable to go for non-classical methods. Many articles have published on non-classical methods which dealt with single singularly perturbed problems. Since 2003 there has been a surge of interest to develop robust numerical methods for system of singularly perturbed reaction–convection–diffusion problems. These system of equations have applications in electro analytic chemistry, predator-prey population dynamics, etc. Oseen equations form a convection–diffusion system where as linearized Navier–Stokes equations yield a reaction–diffusion system at large Reynolds number.

Some authors have developed robust numerical methods for system of singularly perturbed ordinary differential equations, both convection–diffusion and reaction–diffusion, on smooth data. A classical finite difference method on Shishkin mesh for a system of singularly perturbed reaction–diffusion equations was developed by Matthews et al. [1] on smooth data and the same was extended for non-smooth case by Tamilselvan et al. [2]. A Schwarz method on three overlapping subdomains was considered for a system of singularly perturbed reaction-diffusion equations by Stephens and Madden [3] to get the parameter-uniform convergence. An upwind finite difference scheme was analyzed by Cen [4] on Shishkin mesh to solve the system of singularly perturbed convection–diffusion equations. Lin\(\beta \) [5] also analyzed the upwind finite difference scheme on arbitrary meshes to solve the system of singularly perturbed convection–diffusion equations in which he considered systems with arbitrary number of equations. Munyakazi and Patidar [6] proposed a fitted operator finite difference method on uniform mesh to solve the system of singularly perturbed reaction-diffusion equations and the same idea was extended and proposed a nonstandard finite difference scheme by Munyakazi [7] for a system of convection–diffusion equations to get the first order uniform convergence.

In recent years, system of singularly perturbed mixed type boundary value problems have attracted a lot of attention for many researchers. Mythili Priyadharshini and Ramanujam [8] have established uniformly-convergent numerical methods for a system of coupled singularly perturbed convection–diffusion equations with mixed type boundary conditions and Tamilselvan et al. [9] have developed a parameter uniform numerical method for a system of coupled singularly perturbed convection–diffusion equations with mixed type boundary conditions on smooth data. Das and Natesan [10] have proposed an efficient numerical scheme for singularly perturbed system of Robin type reaction–diffusion problems based on Shishkin mesh using hybrid scheme. Only a few authors have considered non-smooth data for the numerical solution of coupled system of convection–diffusion equations. Tamilselvan and Ramanujam [11] have already developed a numerical method for singularly perturbed system of second order ordinary differential equations of convection–diffusion type with a discontinuous source term subject to Dirichlet boundary conditions. Motivated by the above works, we developed a numerical method for a system of two coupled singularly perturbed convection–diffusion Robin type boundary value problems with discontinuous source term. This discontinuity gives rise to a weak interior layer in the exact solution of the problem in addition to the boundary layer at the outflow boundary point.

The contents of the present paper is organized as follows. In “Continuous Problem” section, some analytical results of the solution of singularly perturbed Robin type boundary value problems with discontinuous source term are presented. The numerical method is described in “Discrete Problem” section. Error analysis of the method is carried out in “Error Analysis” section. Numerical examples are provided in “Numerical Results” section and conclusions are given in “Conclusions” section.

Throughout this paper, \(C\) denotes a generic positive constant that is independent of the singular perturbation parameter \(\varepsilon \) and the dimension N of the discrete problem. Let \(y:D=[a,b]\rightarrow \mathbb {R}.\) The norm which is suitable for studying the convergence of numerical solution to the exact solution of a singular perturbation problem is the maximum norm \(\parallel \!\! y\! \!\parallel _{D} = \sup \limits _{x \in D} | y(x) |.\) Further, \( |\mathbf y (x)|\) means \((|y_1(x)|,|y_2(x)|)^T,\; \parallel \! y\!\parallel _{D}=\max \{\; \parallel \! y_1\!\parallel _{D},\; \parallel \! y_2\!\parallel _{D}\}\) and \(\mathbf y \ge \mathbf 0 \) provided \(y_1(0)\ge 0\) and \(y_2(0)\ge 0.\)

Continuous Problem

Statement of the Problem

Find \(y_1,y_2 \in \mathbf y \equiv {\mathcal {C}}^1(\overline{\varOmega })\cap {\mathcal {C}}^2(\varOmega ^-\cup \varOmega ^+)\) such that

$$\begin{aligned} P_1\mathbf y (x)&\equiv -\varepsilon y_1''(x)-a_{1}(x) y_1'(x)+b_{11}(x)y_1(x)+b_{12}(x)y_2(x)=f_1(x),\quad x\in \varOmega ^-\cup \varOmega ^+, \nonumber \\\end{aligned}$$
(1)
$$\begin{aligned} P_2\mathbf y (x)&\equiv -\varepsilon y_2''(x)-a_{2}(x) y_2'(x)+b_{21}(x)y_1(x)+b_{22}(x)y_2(x)=f_2(x),\quad x\in \varOmega ^-\cup \varOmega ^+,\nonumber \\ \end{aligned}$$
(2)

with the boundary conditions

$$\begin{aligned} B_{10}y_1(0)&\equiv \beta _{11}y_1(0) - \varepsilon \beta _{12}y_1'(0)=p,~~B_{11}y_1(1)\equiv \gamma _{11}y_1(1) + \gamma _{12}y_1'(1)=q, \end{aligned}$$
(3)
$$\begin{aligned} B_{20}y_2(0)&\equiv \beta _{21}y_2(0) - \varepsilon \beta _{22}y_2'(0)=r,~~B_{21}y_2(1)\equiv \gamma _{21}y_2(1) + \gamma _{22}y_2'(1)=s, \end{aligned}$$
(4)

where \(\varepsilon \) is a small parameter \((0\;<\varepsilon \ll \;1)\), and assume that

$$\begin{aligned} a_1(x) \ge \alpha _1&> 0,\quad a_2(x) \ge \alpha _2 > 0, \\ b_{12}(x)&\le 0,\quad b_{21}(x) \le 0, \\ b_{11}(x) + b_{12}(x)&\ge 0, \quad b_{21}(x) + b_{22}(x) \ge 0, \\ |[f_1](d)|&\le C,\quad |[f_2](d)|\le C. \end{aligned}$$

Here \(\varOmega =(0,1),\varOmega ^-=(0,d),\varOmega ^+=(d,1),d\in \varOmega \) and \(\mathbf y =(y_1,y_2)^T.\) It is also assumed that the functions \(a_{i}(x),b_{ij}(x)\) are sufficiently smooth on \(\overline{\varOmega },\beta _{j2}>0,2\beta _{j1}+\varepsilon \beta _{j2}\ge 1,\gamma _{j2}\ge 0\) and \(\gamma _{j1}-\gamma _{j2}\ge 1,\) for \(i,j=1,2\) and the source terms \(f_i(x),i=1,2\) are sufficiently smooth on \(\;\overline{\varOmega }\setminus \{d\};\) a single discontinuity in \(f_i(x),i=1,2\) occur at the point \(d\in \varOmega ;f_i(x),i=1,2\) and their derivatives have jump discontinuity at the same point. In general, this discontinuity gives rise to weak interior layers in the solution of the problem. Let \(\alpha = \min \{\alpha _1, \alpha _2 \}\).

The above system can be written in matrix form as

$$\begin{aligned}&\mathbf P \mathbf y \equiv \left( \begin{array}{c} P_1\mathbf y \\ P_2\mathbf y \end{array}\right) \equiv \left( \begin{array}{c@{\quad }c} -\varepsilon \dfrac{d^2}{dx^2} &{} 0 \\ 0 &{} -\varepsilon \dfrac{d^2}{dx^2} \end{array}\right) \mathbf y -\mathbf A (x)\mathbf y '+\mathbf B (x)\mathbf y =\mathbf f (x),\; x\in \varOmega ^-\cup \varOmega ^+ \\&\quad i.e., \mathbf P \mathbf y \equiv -\varepsilon \mathbf y ''(x)-\mathbf A (x)\mathbf y '(x)+\mathbf B (x)\mathbf y (x)=\mathbf f (x),\; x\in \varOmega ^-\cup \varOmega ^+ \end{aligned}$$

with the boundary conditions

$$\begin{aligned} \left( \begin{array}{c} B_{10}y_1(0) \\ B_{20}y_2(0) \end{array}\right) =\left( \begin{array}{c} p \\ r \end{array}\right) ,\left( \begin{array}{c} B_{11}y_1(1) \\ B_{21}y_2(1) \end{array}\right) =\left( \begin{array}{c} q \\ s \end{array}\right) , \end{aligned}$$

where

$$\begin{aligned} \mathbf A (x)=\left( \begin{array}{c@{\quad }c} a_{1}(x) &{} 0 \\ 0 &{} a_{2}(x) \end{array}\right) ,\quad \mathbf B (x)=\left( \begin{array}{c@{\quad }c} b_{11}(x) &{} b_{12}(x)\\ b_{21}(x) &{} b_{22}(x) \end{array}\right) \hbox {and} \quad \mathbf f (x)=\left( \begin{array}{c} f_1(x) \\ f_2(x) \end{array}\right) . \end{aligned}$$

The jump at \(d\) is denoted in any function \(w\) with \([w](d)=w(d^+)-w(d^-)\).

Analytical Results

In this section,the maximum principle,stability result and derivative estimates are established for the boundary value problem (BVP) (1)–(4).

Theorem 1

(Maximum principle) Suppose that \(\mathbf y (x)=(y_1(x),y_2(x))^T,y_1,y_2\;\in \;\mathbf y \) satisfies \(B_{j0}y_j(0)\ge \mathbf{0}, B_{j1}y_j(1)\ge \mathbf{0}, for\ j = 1,2,\mathbf P \mathbf y (x)\ge \mathbf 0 \), and \([\mathbf y '](d)\le \mathbf 0 ,\forall \;x\in \;\varOmega ^-\cup \varOmega ^+.\) Then \(\mathbf y (x)\ge \mathbf 0 ,\forall \;x\in \;\overline{\varOmega }.\)

Proof

Define \(\mathbf t (x)=(t_1(x),t_2(x))^T\)as

$$\begin{aligned} t_1(x)=t_2(x)=\left\{ \begin{array}{l@{\quad }l} \dfrac{1}{4}-\dfrac{x}{8}+\dfrac{d}{8},&{}\quad x \in \varOmega ^-\cup \{d\},\\ \dfrac{1}{4}-\dfrac{x}{4}+\dfrac{d}{4},&{}\quad x \in \varOmega ^+\cup \{1\}. \end{array}\right. \end{aligned}$$

Then \(t_1,t_2\;\in \;{\mathbf {y}}, B_{j0}t_j(0)\ge \mathbf{0}, B_{j1}t_j(1)\ge \mathbf{0}, for\ j = 1,2,\mathbf P \mathbf t (x)\ge \mathbf 0 \) and \([\mathbf t '](d)\le \mathbf 0 ,\forall \;x\in \;\varOmega ^-\cup \varOmega ^+\).

Further, define

$$\begin{aligned} \eta =\max \left\{ \max _{x\in \overline{\varOmega }} \left( \dfrac{-y_1}{t_1}\right) ,\max _{x\in \overline{\varOmega }} \left( \dfrac{-y_2}{t_2}\right) \right\} . \end{aligned}$$

Assume that the theorem is not true.

Then \(\eta >0\) and there exists a point \(x_0\) such that \(\left( \dfrac{-y_1}{t_1}\right) (x_0)=\eta \) or \(\left( \dfrac{-y_2}{t_2}\right) (x_0)=\eta \) or both.

Further, \(x_0\in \varOmega ^-\cup \varOmega ^+\) or \(x_0=d.\) Also \(({\mathbf {y}}+\eta {\mathbf {t}})({x})\ge \mathbf{0}, x\in \overline{\varOmega }\).

Case-(i): \((y_1+\eta t_1)(x_0)=0,\) for \(x_0=0.\) It implies that \((y_1+\eta t_1)\) attains a minimum at \(x_0.\) Therefore, \(0<B_{10}(y_1+\eta t_1)(x_0)=\beta _{11}(y_1+\eta t_1)(x_0)-\varepsilon \beta _{12}(y_1+\eta t_1)'(x_0)\le 0,\) which is a contradiction.

Case-(ii): \((y_1+\eta t_1)(x_0)=0,\) for \(x_0\in \varOmega ^-\cup \varOmega ^+.\) It implies that \((y_1+\eta t_1)\) attains a minimum at \(x_0.\) Therefore, \(0<{P}_1({\mathbf {y}}+\eta {\mathbf {t}})({x}_0)\equiv -\varepsilon (y_1+\eta t_1)''({x}_0)-a_1({x}_0)(y_1+\eta t_1)'({x}_0)+b_{11}({x}_0)(y_1+\eta t_1)({x}_0)+b_{12}({x}_0)\,(y_2+\eta t_2)({x}_0)\le 0,\) which is a contradiction.

Case-(iii): \((y_1+\eta t_1)(x_0)=0,\) for \(x_0=d.\) It implies that \((y_1+\eta t_1)\) attains a minimum at \(x_0.\) Therefore, \(0\le [(y_1+\eta t_1)'](x_0)=[y_1'](d)+\eta [t_1'](d)<0,\) which is a contradiction.

Case-(iv): \((y_1+\eta t_1)(x_0)=0,\) for \(x_0=1.\) It implies that \((y_1+\eta t_1)\) attains a minimum at \(x_0.\) Therefore, \(0<B_{11}(y_1+\eta t_1)(x_0)=\gamma _{11}(y_1+\eta t_1)(x_0)+\gamma _{12}(y_1+\eta t_1)'(x_0)\le 0,\) which is a contradiction.

Case-(v): \((y_2+\eta t_2)(x_0)=0,x_0\in \varOmega ^-\cup \varOmega ^+.\) Similar to Case-(ii), it leads to a contradiction.

Case-(vi): \((y_2+\eta t_2)(x_0)=0,x_0=d.\) Similar to Case-(iii), it leads to a contradiction.

Case-(vii): \((y_2+\eta t_2)(x_0)=0,x_0=0.\) Similar to Case-(i), it leads to a contradiction.

Case-(viii): \((y_2+\eta t_2)(x_0)=0,x_0=1.\) Similar to Case-(iv), it leads to a contradiction. Hence, \(\mathbf y (x)\ge \mathbf 0 ,\forall x\in \overline{\varOmega }\). \(\square \)

Theorem 2

(Stability result) If \(y_1,y_2\;\in \;\mathbf y ,\) then for \(i=1,2,\)

$$\begin{aligned} |y_i(x)|&\le C[\max \{|B_{10}y_1(0)|,|B_{11}y_1(1)|,|B_{20}y_2(0)|,|B_{21}y_2(1)|, \Vert P_1\mathbf y \Vert _{\varOmega ^-\cup \varOmega ^+},\\&\Vert P_2\mathbf y \Vert _{\varOmega ^-\cup \varOmega ^+}],~x\;\in \;\overline{\varOmega }. \end{aligned}$$

Proof

Let

$$\begin{aligned} M&= C[\max \{|B_{10}y_1(0)|,|B_{11}y_1(1)|,|B_{20}y_2(0)|,|B_{21}y_1(1)|, \Vert P_1\mathbf y \Vert _{\varOmega ^-\cup \varOmega ^+},\\&\Vert P_2\mathbf y \Vert _{\varOmega ^-\cup \varOmega ^+}\}]. \end{aligned}$$

Define the functions \(\varvec{\omega }^\pm (x)=(\omega _1^\pm (x),\omega _2^\pm (x))^T\) where

$$\begin{aligned} \omega _1^\pm (x)=Mt_1(x)\pm y_1(x),\quad \omega _2^\pm (x)=Mt_2(x)\pm y_2(x). \end{aligned}$$

Since \(M(2\beta _{11}+\varepsilon \beta _{12})\pm B_{10}y_1(0)\ge 0,M(2\beta _{21}+\varepsilon \beta _{22})\pm B_{20}y_2(0)\ge 0,M(\gamma _{11}-\gamma _{12})\pm B_{11}y_1(1)\ge 0\) and \(M(\gamma _{21}-\gamma _{22})\pm B_{21}y_2(1)\ge 0,\) it is easy to prove that \(B_{10}{\omega _1}^\pm (0)\ge 0,\quad B_{11}{\omega _1}^\pm (0)\ge 0,\quad B_{20}{\omega _2}^\pm (0)\ge 0,\quad B_{21}{\omega _2}^\pm (0)\ge 0\).

Also \(\mathbf P \varvec{\omega }^\pm (x)\ge \mathbf 0 \) and \([\varvec{\omega '}](d)\le \mathbf 0 \), by a proper choice of C.

Therefore, by the maximum principle the required result follows. \(\square \)

Derivative Estimates

In this section, the derivative estimates for the BVP (1)–(4) are provided.

The sharper bounds on the derivatives of the solution are obtained by decomposing the solution \(\mathbf y \) into smooth and singular components as \(\mathbf y =\mathbf v +\mathbf w \), where the smooth component \(\mathbf v =(v_1,v_2)^T\) and \(\mathbf w =(w_1,w_2)^T.\) The regular component \(\mathbf v \) can be written in the form \(\mathbf v =\mathbf v _0+\varepsilon \mathbf v _1+\varepsilon ^2\mathbf v _2,\) where \(\mathbf v _0=(v_{01},v_{02})^T, \, \mathbf v _1=(v_{11},v_{12})^T, \, \mathbf v _2=(v_{21},v_{22})^T\) are defined respectively to be the solutions of the problems

$$\begin{aligned} -\mathbf A (x)\mathbf v _0'+\mathbf B (x)\mathbf v _0&= \mathbf f (x),\quad x \in \varOmega ^-\cup \varOmega ^+,\quad \left( \begin{array}{c} B_{11}v_{01}(1) \\ B_{21}v_{02}(1) \end{array}\right) =\left( \begin{array}{c} B_{11}y_1(1) \\ B_{21}y_2(1) \end{array}\right) ; \\ -\mathbf A (x)\mathbf v _1'+\mathbf B (x)\mathbf v _1&= \mathbf v _0'',\quad \left( \begin{array}{c} B_{11}v_{11}(1) \\ B_{21}v_{12}(1) \end{array}\right) =\mathbf 0 ;\\ \mathbf P \mathbf v _2=\mathbf v _1'',\quad x&\ne d, \quad \left( \begin{array}{c} B_{10}v_{21}(0) \\ B_{20}v_{22}(0) \end{array}\right) = \left( \begin{array}{c} B_{1d}v_{21}(d) \\ B_{2d}v_{22}(d) \end{array}\right) = \left( \begin{array}{c} B_{11}v_{21}(1) \\ B_{21}v_{22}(1) \end{array}\right) =\mathbf 0 . \end{aligned}$$

Thus the regular component \(\mathbf v \) is the solution of

$$\begin{aligned} \mathbf P \mathbf v&= \mathbf f (x),\quad x \in \varOmega ^-\cup \varOmega ^+, \end{aligned}$$
(5)
$$\begin{aligned} \left( \begin{array}{c} B_{10}v_1(0) \\ B_{20}v_2(0) \end{array}\right)&= \left( \begin{array}{c} B_{10}v_{01}(0)+\varepsilon (B_{10}v_{11}(0))+\varepsilon ^2(B_{10}v_{21}(0)) \\ B_{20}v_{02}(0)+\varepsilon (B_{20}v_{12}(0))+\varepsilon ^2(B_{20}v_{22}(0)) \end{array}\right) , \end{aligned}$$
(6)
$$\begin{aligned} \left( \begin{array}{c} B_{10}v_1(d) \\ B_{20}v_2(d) \end{array}\right)&= \left( \begin{array}{c} B_{10}v_{01}(d)+\varepsilon (B_{1d}v_{11}(d))+\varepsilon ^2(B_{10}v_{21}(d)) \\ B_{20}v_{02}(d)+\varepsilon (B_{2d}v_{12}(d))+\varepsilon ^2(B_{20}v_{22}(d)) \end{array}\right) , \end{aligned}$$
(7)
$$\begin{aligned} \left( \begin{array}{c} B_{11}v_1(1) \\ B_{21}v_2(1) \end{array}\right)&= \left( \begin{array}{c} B_{11}y_1(1) \\ B_{21}y_2(1) \end{array}\right) . \end{aligned}$$
(8)

Further, we decompose the singular component \(\mathbf w \) as \(\mathbf w =\mathbf w _1+\mathbf w _2,\) where \(\mathbf w _1=(w_{11},w_{12})^T, \mathbf w _2=(w_{21},w_{22})^T.\) Thus \(\mathbf w _1=w_{11}+w_{21},\) and \(\mathbf w _2=w_{12}+w_{22}.\) Note that \(\mathbf w _1\) is the solution of

$$\begin{aligned} \mathbf P \mathbf w _1&= \mathbf 0 ,\quad x \in \varOmega , \end{aligned}$$
(9)
$$\begin{aligned} \left( \begin{array}{c} B_{10}w_{11}(0) \\ B_{20}w_{12}(0) \end{array}\right) v&= \left( \begin{array}{c} B_{10}y_1(0)-B_{10}v_1(0) \\ B_{20}y_2(0)-B_{20}v_2(0) \end{array}\right) ,\quad \left( \begin{array}{c} B_{10}w_{11}(1) \\ B_{20}w_{12}(1) \end{array}\right) =\mathbf 0 , \end{aligned}$$
(10)

and \(\mathbf w _2\) is the solution of

$$\begin{aligned} \mathbf P \mathbf w _2&= \mathbf 0 ,\quad x \in \varOmega ^-\cup \varOmega ^+, \end{aligned}$$
(11)
$$\begin{aligned} \left( \begin{array}{c} B_{11}w_{21}(0) \\ B_{21}w_{22}(0) \end{array}\right)&= \mathbf 0 ,\quad \left( \begin{array}{c} B_{11}w_{21}(1) \\ B_{21}w_{22}(1) \end{array}\right) =\mathbf 0 , \end{aligned}$$
(12)
$$\begin{aligned}{}[\mathbf w '(d)]&= -[\mathbf v '(d)]. \end{aligned}$$
(13)

The following lemma provides the bounds on the derivatives of the regular and singular components of the solution \(\mathbf y \) and it can be proved by following the procedure adopted in [8, 1113].

Lemma 1

The solution \(\mathbf y \) can be decomposed into the sum \(\mathbf y =\mathbf v +\mathbf w ,\) where \(\mathbf v \) and \(\mathbf w \) are regular and singular components. Further, regular components and their derivatives satisfy the bounds

$$\begin{aligned} \parallel v_j^{(k)}\parallel&\le C(1+\varepsilon ^{2-k}),\quad k=0,1,2,3,\quad j=1,2,\quad x \in \varOmega ^-\cup \varOmega ^+, \end{aligned}$$

the solution \(\mathbf w _1\) satisfies the bounds

$$\begin{aligned} |w_{j1}^{(k)}(x)|&\le C\varepsilon ^{-k}e^{-\alpha x/\varepsilon },\quad \forall x \in \overline{\varOmega },\quad k=0,1,2,3,\quad j=1,2, \end{aligned}$$

and the solution \(\mathbf w _2\) satisfies the bounds

$$\begin{aligned} |w_{j2}(x)|&\le C\varepsilon ,\quad j=1,2\\ |w_{j2}^{(k)}(x)|&\le {\left\{ \begin{array}{ll} C\varepsilon ^{1-k}e^{-\alpha x/\varepsilon },\quad x \in \varOmega ^-,\\ C\varepsilon ^{1-k}e^{-\alpha (x-d)/\varepsilon },\quad x \in \varOmega ^+ \end{array}\right. },\quad k=1,2,3,\quad j=1,2. \end{aligned}$$

\(\square \)

Discrete Problem

A fitted mesh method for the BVP (1)–(4) is now described. On \(\; \varOmega ^-\cup \varOmega ^+\;\) a piecewise uniform mesh of N mesh intervals is constructed as follows:

The interval \(\;\overline{\varOmega }^-\;\) is subdivided into two subintervals \([0, \tau _1]\) and \([\tau _1, d]\) for some \(\;\tau _1\;\) that satisfies \(\; 0 < \tau _1\le d/2.\) On each subinterval a uniform mesh with \(\;\dfrac{N}{4}\;\) mesh-intervals is placed. The sub-intervals \([d, d+\tau _2]\) and \([d+\tau _2, 1]\) on \(\overline{\varOmega }^+\) are treated analogously for some \(\tau _2\) satisfying \(0<\tau _2\le (1-d)/2.\)

The interior points of the mesh are denoted by

$$\begin{aligned} \varOmega _\varepsilon ^N = \{ x_i: 1\le i \le \dfrac{N}{2}-1\} \cup \{ x_i: \dfrac{N}{2}+1\le i \le N -1\}. \end{aligned}$$

Clearly \(\;x_{N/2}=d \;\) and \(\;\overline{\varOmega }_\varepsilon ^N=\{x_i\}_0^N.\;\) The transition parameters \(\;\tau _1\;\) and \(\; \tau _2\;\) are functions of N and \(\;\varepsilon \;\) and are chosen as

$$\begin{aligned} \tau _1 = \min \left\{ \dfrac{d}{2}, (\varepsilon /\alpha ) \ln N\right\} \, \hbox {and} \; \tau _2 = \min \left\{ \dfrac{1-d}{2}, (\varepsilon /\alpha ) \ln N\right\} , \end{aligned}$$

where \(\alpha =\min \{\alpha _1,\alpha _2\}\).

The four mesh widths are given by

$$\begin{aligned} h_1=4\tau _1/N, \quad h_2=4(d-\tau _1)/N, \quad h_3=4\tau _2/N, \quad h_4=4(1-d-\tau _2)/N. \end{aligned}$$

On the piecewise-uniform mesh \(\;\overline{\varOmega }_\varepsilon ^N\;\) a standard centered finite difference operator is used. Then the fitted mesh method for the BVP (1)–(4) is

$$\begin{aligned} P_1^N\mathbf Y (x_i)&\equiv -\varepsilon \delta ^2 Y_1(x_i)-a_1(x_i)D^+Y_1(x_i)+b_{11}(x_i)Y_1(x_i)+b_{12}(x_i)Y_2(x_i)=f_1(x_i), \end{aligned}$$
(14)
$$\begin{aligned} P_2^N\mathbf Y (x_i)&\equiv -\varepsilon \delta ^2 Y_2(x_i)-a_2(x_i)D^+Y_2(x_i)+b_{21}(x_i)Y_1(x_i)+b_{22}(x_i)Y_2(x_i)=f_2(x_i), \end{aligned}$$
(15)
$$\begin{aligned} B_{10}^N Y_1(x_0)&\equiv \beta _{11}Y_1(x_0) - \varepsilon \beta _{12}D^+Y_1(x_0)=p, \end{aligned}$$
(16)
$$\begin{aligned} B_{11}^N Y_1(x_N)&\equiv \gamma _{11}Y_1(x_N) + \gamma _{12}D^-Y_1(x_N)=q, \end{aligned}$$
(17)
$$\begin{aligned} B_{20}^N Y_2(x_0)&\equiv \beta _{21}Y_2(x_0) - \varepsilon \beta _{22}D^+Y_2(x_0)=r, \end{aligned}$$
(18)
$$\begin{aligned} B_{21}^N Y_2(x_N)&\equiv \gamma _{21}Y_2(x_N) + \gamma _{22}D^-Y_2(x_N)=s, \end{aligned}$$
(19)
$$\begin{aligned} D^-Y_1(x_{N/2})&= D^+Y_1(x_{N/2}),~~D^-Y_2(x_{N/2})=D^+Y_2(x_{N/2}), \end{aligned}$$
(20)

where

$$\begin{aligned} \delta ^2Y_j(x_i)&= \dfrac{(D^+ - D^-)Y_j(x_i)}{(x_{i+1}-x_{i-1})/2},\quad j=1,2, \\ D^+Y_j(x_i)&= \dfrac{Y_j(x_{i+1})-Y_j(x_i)}{x_{i+1}-x_i}, \qquad \text {and}\qquad D^-Y_j(x_i)=\dfrac{Y_j(x_i)-Y_j(x_{i-1})}{x_i-x_{i-1}}. \end{aligned}$$

The difference operator \(\mathbf P ^N\) can be defined as

$$\begin{aligned} \mathbf P ^N\mathbf Y (x_i)\equiv \left( \begin{array}{c} P_1^N\mathbf Y (x_i) \\ P_2^N\mathbf Y (x_i) \end{array}\right)&\equiv \left( \begin{array}{c@{\quad }c} -\varepsilon \delta ^2 &{} 0 \\ 0 &{} -\varepsilon \delta ^2 \end{array}\right) \mathbf Y (x_i)-\left( \begin{array}{c@{\quad }c} a_1(x_i)D^+ &{} 0\\ 0 &{} a_2(x_i)D^+ \end{array}\right) \mathbf Y (x_i) \\&+\left( \begin{array}{c@{\quad }c} b_{11}(x_i) &{} b_{12}(x_i)\\ b_{21}(x_i) &{} b_{22}(x_i) \end{array}\right) \mathbf Y (x_i)=\mathbf f (x_i). \end{aligned}$$

Analogous to the continuous results stated in Theorems 1 and 2, the following results can be proved.

Theorem 3

(Discrete maximum principle) For any mesh function \(\mathbf{\Psi }(x_i),\) assume that \(B_{j0}^N\Psi _j(x_0)\ge \mathbf{0}, B_{j1}^N\Psi _j(x_N)\ge \mathbf{0}\), for \(j=1,2\) and \(\mathbf P ^N\mathbf{\Psi }(x_i)\ge \mathbf{0},\) for all \(x_i \in \varOmega _\varepsilon ^N\) and \(D^+\mathbf{\Psi }_{N/2}-D^-\mathbf{\Psi }_{N/2}\le \mathbf 0 \). Then \(\mathbf{\Psi }(x_i)\ge \mathbf 0 \) for all \(x_i \in \overline{\varOmega }_\varepsilon ^N\).\(\square \)

Theorem 4

(Discrete stability result) If \(\mathbf Z (x_i)=(Z_1(x_i),Z_2(x_i))^T\) is any mesh function then, for all \(x_i \in \overline{\varOmega }_{\varepsilon }^N,~j=1,2,\)

$$\begin{aligned} |Z_j(x_i)|&\le C[\max \{|B_{10}^N Z_1(x_0)|,|B_{11}^N Z_1(x_N)|,|B_{20}^N Z_2(x_0)|,|B_{21}^N Z_2(x_N)|,\\&\qquad \quad \Vert P_1^N\mathbf Z (x_i)\Vert _{\varOmega ^-\cup \varOmega ^+},\Vert P_2^N\mathbf Z (x_i)\Vert _{\varOmega ^-\cup \varOmega ^+}\}]. \end{aligned}$$

\(\square \)

Error Analysis

If \(\mathbf Y (x_i)\) is the discrete solution, then \(|\mathbf Y (d)|\le C\) and it can be decomposed into the sum \(\mathbf Y (x_i)=\mathbf V (x_i)+\mathbf W (x_i),\) where \(\mathbf V (x_i)\) and \(\mathbf W (x_i)\) are regular and singular components respectively defined as

$$\begin{aligned} \mathbf P ^N\mathbf V (x_i)&= \mathbf f (x_i),\quad \forall x_i \in \varOmega _\varepsilon ^N\setminus \{d\} \\ \left( \begin{array}{c} B_{10}^NV_1(x_0)\\ B_{20}^NV_2(x_0) \end{array}\right)&= \left( \begin{array}{c} B_{10}v_1(0)\\ B_{20}v_2(0) \end{array}\right) , \left( \begin{array}{c} B_{1d}^NV_1(d)\\ B_{2d}^NV_2(d) \end{array}\right) =\left( \begin{array}{c} B_{1d}v_1(d)\\ B_{2d}v_2(d) \end{array}\right) ,\\ \left( \begin{array}{c} B_{11}^NV_1(x_N)\\ B_{21}^NV_2(x_N) \end{array}\right)&= \left( \begin{array}{c} B_{11}v_1(1)\\ B_{21}v_2(1) \end{array}\right) \\ \text {and} \quad \mathbf P ^N\mathbf W (x_i)&= \mathbf 0 ,\quad \forall x_i \in \varOmega _\varepsilon ^N\setminus \{d\} \\ \left( \begin{array}{c} B_{10}^NW_1(x_0)\\ B_{20}^NW_2(x_0) \end{array}\right)&= \left( \begin{array}{c} B_{10}w_1(0)\\ B_{20}w_2(0) \end{array}\right) ,\quad \left( \begin{array}{c} B_{11}^NW_1(x_N)\\ B_{21}^NW_2(x_N) \end{array}\right) = \left( \begin{array}{c} B_{11}w_1(1)\\ B_{21}w_2(1) \end{array}\right) \\ {[}D\mathbf W (d){]}&= -[D\mathbf V (d)], \end{aligned}$$

where the jump in the derivative of a mesh function \(\mathbf Z \) at the point \(x_i=d\) is denoted by

$$\begin{aligned}{}[D\mathbf Z (d)]=D^+\mathbf Z (d)-D^-\mathbf Z (d). \end{aligned}$$

Analogous to the continuous case \(\mathbf W \) can be decomposed as \(\mathbf W =\mathbf W _1+\mathbf W _2\). The error in the numerical solution can be written as

$$\begin{aligned} (\mathbf Y -\mathbf y )(x_i)=(\mathbf V -\mathbf v )(x_i)+(\mathbf W -\mathbf w )(x_i), \end{aligned}$$

where \(\mathbf W _1\) and \(\mathbf W _2\) are defined respectively as the solutions of

$$\begin{aligned} \mathbf P ^N\mathbf W _1&= 0,\quad \forall x_i \in \varOmega _\varepsilon ^N\cup \{d\} \end{aligned}$$
(21)
$$\begin{aligned} \left( \begin{array}{c} B_{10}^NW_{11}(x_0)\\ B_{20}^NW_{12}(x_0) \end{array}\right)&= \left( \begin{array}{c} B_{10}w_{11}(0)\\ B_{20}w_{12}(0) \end{array}\right) ,\quad \left( \begin{array}{c} B_{11}^NW_{11}(x_N)\\ B_{21}^NW_{12}(x_N) \end{array}\right) =0 \quad \text {and} \end{aligned}$$
(22)
$$\begin{aligned} \mathbf P ^N\mathbf W _2&= 0,\quad \forall x_i \in \varOmega _\varepsilon ^N\cup \{d\} \end{aligned}$$
(23)
$$\begin{aligned} \left( \begin{array}{c} B_{10}^NW_{21}(x_0)\\ B_{20}^NW_{22}(x_0) \end{array}\right)&= \left( \begin{array}{c}B_{10}w_{21}(0)\\ B_{20}w_{22}(0) \end{array}\right) ,\quad \left( \begin{array}{c} B_{11}^NW_{21}(x_N)\\ B_{21}^NW_{22}(x_N) \end{array}\right) =0 \end{aligned}$$
(24)
$$\begin{aligned} {[}D\mathbf W _2{]}&= -[D\mathbf V (d)]-[D\mathbf W _1(d)]. \end{aligned}$$
(25)

Lemma 2

At each mesh point \(x_i \in \overline{\varOmega }_\varepsilon ^N,\) the error of the regular component satisfies the estimate

$$\begin{aligned} |(\mathbf V -\mathbf v )(x_i)|&\le \left( \begin{array}{c} CN^{-1}(d-x_i)\\ CN^{-1}(d-x_i) \end{array}\right) \quad \text {on} \;\varOmega ^{-}, \\ |(\mathbf V -\mathbf v )(x_i)|&\le \left( \begin{array}{c} CN^{-1}(1-x_i)\\ CN^{-1}(1-x_i) \end{array}\right) \quad \text {on} \;\varOmega ^{+}, \end{aligned}$$

Proof

$$\begin{aligned} |\mathbf P ^N(\mathbf V -\mathbf v (x_i))|&= |(\mathbf P -\mathbf P ^N)\mathbf v (x_i)|\\&\le \left( \begin{array}{c} \dfrac{\varepsilon }{3}(x_{i+1}-x_{i-1})\parallel v_1^{(3)} \parallel +\dfrac{a_1(x_i)}{2}(x_i-x_{i-1}) \parallel v_1^{(2)} \parallel \\ \dfrac{\varepsilon }{3}(x_{i+1}-x_{i-1})\parallel v_2^{(3)} \parallel +\dfrac{a_2(x_i)}{2}(x_i-x_{i-1}) \parallel v_2^{(2)} \parallel \end{array}\right) \\&\le \left( \begin{array}{c} CN^{-1}\\ CN^{-1} \end{array}\right) . \end{aligned}$$

Let \(\varvec{\Phi }^{\pm }(x_i)\) be the mesh functions defined as

$$\begin{aligned} \varvec{\Phi }^{\pm }(x_i)=\left( \begin{array}{c} CN^{-1}(d-x_i)\\ CN^{-1}(d-x_i) \end{array}\right) \pm (\mathbf V -\mathbf v (x_i)). \end{aligned}$$

It is easy to see that \(B_{j0}^N\varPhi _j^{\pm }(x_0)=\mathbf 0 ,\quad B_{j1}^N\varPhi _j^{\pm }(x_N)>\mathbf 0 ,\;j=1,2,\)

$$\begin{aligned} \mathbf P ^N\varvec{\Phi }^{\pm }(x_i)\ge \mathbf 0 \;\text {and}\;D^+\varvec{\Phi }^{\pm }_{N/2}-D^-\varvec{\Phi }^{\pm }_{N/2}\le \overline{0}. \end{aligned}$$

Then by discrete maximum principle, we get \(\varvec{\Phi }^{\pm }(x_i)\ge \mathbf 0 ,\quad x_i \in \varOmega ^{-},\) which leads to the required result.

Similarly the second result can be proved on \(\varOmega ^{+}\). \(\square \)

Lemma 3

[13] At each mesh point \(x_i \in \overline{\varOmega }_\varepsilon ^N,\) the error of the singular component satisfies the estimate

$$\begin{aligned} |(\mathbf W _1-\mathbf w _1)(x_i)| \le \left( \begin{array}{c} CN^{-1}\ln N\\ CN^{-1}\ln N \end{array}\right) . \end{aligned}$$

We establish the bound for \(\mathbf W _2\) in the following lemma as the jump at \(x=d\) in the derivative of the weak interior layer function \(\mathbf w _2\).

Lemma 4

[11] Let \(\mathbf W _2\) be the solution of (23), then it satisfies the following \(\varepsilon -\) uniform bound

$$\begin{aligned} |[D\mathbf W _2(d)]| \le \left( \begin{array}{c} C(1+\varepsilon ^{-1}N^{-1})\\ C(1+\varepsilon ^{-1}N^{-1}) \end{array}\right) . \end{aligned}$$

Proof

At \(x=d,\) let \(D^-\mathbf V (d)=D^-(\mathbf V -\mathbf v )(d)+D^-\mathbf v (d)\).

Since \(\parallel \mathbf v ' \parallel _{\varOmega ^-}\le \left( \begin{array}{c} C\\ C \end{array}\right) \), we have

$$\begin{aligned} |D^-\mathbf v (d)|&\le \left( \begin{array}{c} C\\ C \end{array}\right) \\ \text {and} \quad |D^-(\mathbf V -\mathbf v )(d)|&= |{\dfrac{(\mathbf V -\mathbf v )(d)-(\mathbf V -\mathbf v )(d-h_2)}{h_2}}| \le \left( \begin{array}{c}CN^{-1}\\ CN^{-1} \end{array}\right) .\\ \therefore |D^-\mathbf V (d)|&\le \left( \begin{array}{c} C(1+N^{-1})\\ C(1+N^{-1}) \end{array}\right) .\\ \text {Let}\quad D^+\mathbf V (d)&= D^+(\mathbf V -\mathbf v )(d)+D^+\mathbf v (d)\quad \text {and} \quad \parallel \mathbf v ' \parallel _{\varOmega ^{+}} \le \left( \begin{array}{c} C\\ C \end{array}\right) \end{aligned}$$

Using lemma 3.14 of [14],we write

$$\begin{aligned} |\varepsilon D^+(\mathbf V -\mathbf v )(d)|&\le \left( \begin{array}{c}CN^{-1}\\ CN^{-1} \end{array}\right) .\\ \therefore |D^+\mathbf V (d)|&\le \left( \begin{array}{c} C\varepsilon ^{-1}N^{-1}\\ C\varepsilon ^{-1}N^{-1} \end{array}\right) +\left( \begin{array}{c} C\\ C \end{array}\right) =\left( \begin{array}{c} C(1+\varepsilon ^{-1}N^{-1})\\ C(1+\varepsilon ^{-1}N^{-1}) \end{array}\right) .\\ \text {On} \; \varOmega ^{-}, \quad |\mathbf W _1(x_i)|&\le \left( \begin{array}{c} CN^{-1}\\ CN^{-1} \end{array}\right) , \\ \text {which gives} \quad |D^-\mathbf W _1(d)|&\le \left( \begin{array}{c} C\\ C \end{array}\right) . \\ \text {On} \; \varOmega ^{+}, \quad D^+W_1(d)&= D^+(\mathbf W _1-\mathbf w _1)(d)+D^+\mathbf w _1(d). \end{aligned}$$

Since \(\parallel \mathbf w _1' \parallel \le \left( \begin{array}{c} C\\ C \end{array}\right) ,\) we have

$$\begin{aligned} |D^+\mathbf W _1(d)| \le |D^+(\mathbf W _1-\mathbf w _1)(d)|+\left( \begin{array}{c} C\\ C \end{array}\right) . \end{aligned}$$

It is easy to show that

$$\begin{aligned} |D^+(\mathbf W _1-\mathbf w _1)(x_i)|&\le \left( \begin{array}{c} C\\ C \end{array}\right) , \\ \text {which implies} \quad |D^+\mathbf W _1(d)|&\le \left( \begin{array}{c} C\\ C \end{array}\right) . \\ \therefore |[D\mathbf W _2(d)]|&\le \left( \begin{array}{c} C(1+\varepsilon ^{-1}N^{-1})\\ C(1+\varepsilon ^{-1}N^{-1}) \end{array}\right) . \end{aligned}$$

\(\square \)

Lemma 5

The following \(\varepsilon -\) uniform bound \(|\mathbf W _2(x_i)| \le C\varepsilon |[D\mathbf W _2(d)]|\) is valid, where \(\mathbf W _2\) is the solution of (23).

Proof

Define the barrier functions \(\psi _j^{\pm },j=1,2\) as

$$\begin{aligned} \psi _j^{\pm }(x_i)&= \dfrac{C\varepsilon |[DW_{j2}(d)]|}{\alpha } {\left\{ \begin{array}{ll}1,\quad x_i \le d\\ \phi _j(x_i),\quad x_i \ge d \end{array}\right. } \pm W_{2j}, \end{aligned}$$

where \(\varvec{\phi }=(\phi _1,\phi _2)^T\) is the solution of

$$\begin{aligned} -\varepsilon \delta ^2\varvec{\phi }(x_i)-\alpha D^+\ \varvec{\phi }(x_i)&= \mathbf 0 ,\quad x_i \in \varOmega ^N \cap \varOmega ^{+}, \\ B_{jd} \ \varvec{\phi }(d)&= \mathbf 1 ,\quad B_{j1} \ \varvec{\phi }(1)=\mathbf 0 , \\ D^+\ \varvec{\phi }(x_i)&< \mathbf 0 ,\quad x_i \ge d. \end{aligned}$$

The remaining proof follows from the procedure given in [13]. \(\square \)

Lemma 6

At each mesh point \(x_i \in \overline{\varOmega }_\varepsilon ^N,\) the error of the singular component satisfies the estimate

$$\begin{aligned} |(\mathbf W _2-\mathbf w _2)(x_i)| \le \left( \begin{array} {c}CN^{-1}\ln N\\ CN^{-1}\ln N \end{array}\right) . \end{aligned}$$

Proof

Since \([v'(d)]+[w_2'(d)]=0,\)

$$\begin{aligned}{}[D(\mathbf W _2-\mathbf w _2)(d)]&= [D\mathbf W _2(d)]-[D\mathbf w _2(d)]\\&= [\mathbf v '(d)]-[D\mathbf V (d)]+[\mathbf w '_d(d)]-[D\mathbf W _2(d)]-[D\mathbf W _1(d)]. \end{aligned}$$

Note that

$$\begin{aligned}{}[\mathbf v '(d)]-[D\mathbf V (d)]&= \mathbf v '(d+)-D^+\mathbf v (d)+D^-\mathbf v (d)-\mathbf v '(d-)+[D(\mathbf V -\mathbf v )(d)]. \\ \text {But}\quad |[D(\mathbf V -\mathbf v )(d)]|&\le \left( \begin{array}{c} C\varepsilon ^{-1}N^{-1}\\ C\varepsilon ^{-1}N^{-1} \end{array}\right) \\ \text {and}\quad |[\mathbf v '(d)]-[D\mathbf v (d)]|&\le \left( \begin{array}{c} CN^{-1}\\ CN^{-1} \end{array}\right) .\\ \text {Hence}\quad |[\mathbf v '(d)]-[D\mathbf V (d)]|&\le \left( \begin{array}{c} C\varepsilon N^{-1}\\ C\varepsilon N^{-1} \end{array}\right) . \end{aligned}$$

Similarly,

$$\begin{aligned} |[\mathbf w _2'(d)]-[D\mathbf w _2(d)]|&\le |D^+\mathbf W _2(d)-\mathbf w _2'(d+)|+|D^-\mathbf W _2(d)-\mathbf w _2'(d-)|\\&\le \left( \begin{array}{c}Ch_3|w_2^{(2)}(d)|+Ch_2|w_2^{(2)}(d-)|\\ Ch_3|w_2^{(2)}(d)|+Ch_2|w_2^{(2)}(d-)| \end{array}\right) \\&\le \left( \begin{array}{c}CN^{-1}\ln N\\ CN^{-1}\ln N \end{array}\right) ,\text {since} \\ e^{-\alpha (d-h_2)/\varepsilon }&= e^{-\alpha \left( d-\dfrac{4d}{N}\right) \Big /\varepsilon }\le e^{-\alpha d/2\varepsilon }. \\ \text {Also}\quad |[D\mathbf w _1(d)]|&\le \left( \begin{array}{c} C(h_3+h_2)|w_1^{(2)}(d-h_2)|\\ C(h_3+h_2)|w_1^{(2)}(d-h_2)| \end{array}\right) \\&\le \left( \begin{array}{c}C(h_3+h_2)\varepsilon ^{-2}e^{-\alpha (d-h_2)/\varepsilon }\\ C(h_3+h_2)\varepsilon ^{-2}e^{-\alpha (d-h_2)/\varepsilon } \end{array}\right) \\&\le \left( \begin{array}{c}CN^{-1}\ln N\\ CN^{-1}\ln N \end{array}\right) . \end{aligned}$$

By the analysis given in [14], we have

$$\begin{aligned}&|[D(\mathbf W _1-\mathbf w _1)(d)]| \le \left( \begin{array}{c}C\varepsilon ^{-1}N^{-1}\ln N\\ C\varepsilon ^{-1}N^{-1}\ln N \end{array}\right) ,\\&\qquad \quad \text {which implies}\\&|[D(\mathbf W _2-\mathbf w _2)(d)]| \le \left( \begin{array}{c}C\varepsilon ^{-1}N^{-1}\ln N\\ C\varepsilon ^{-1}N^{-1}\ln N \end{array}\right) . \end{aligned}$$

Using standard truncation error bounds and the bounds on the derivatives of \(\mathbf w _2\), we consider the truncation error at each of the interval mesh points as follows:

$$\begin{aligned} \text {For}\quad x_i \in (0,\tau _1),\quad |\mathbf P ^N(\mathbf W _2-\mathbf w _2)(x_i)|&\le \left( \begin{array}{c} Ch_1\varepsilon ^{-1}\tau _1\\ Ch_1\varepsilon ^{-1}\tau _1 \end{array}\right) \\&\le \left( \begin{array}{c} CN^{-1}\ln N\\ CN^{-1}\ln N \end{array}\right) .\\ \text {For}\quad x_i \in [\tau _1,d),\quad |\mathbf P ^N(\mathbf W _2-\mathbf w _2)(x_i)|&\le \left( \begin{array}{c}C\parallel \varepsilon \mathbf w _2''\parallel _{(x_{i-1},x_{i+1})}+C\parallel \mathbf w _2'\parallel _{[x_i,x_{i+1}]}\\ C\parallel \varepsilon \mathbf w _2''\parallel _{(x_{i-1},x_{i+1})}+C\parallel \mathbf w _2'\parallel _{[x_i,x_{i+1}]} \end{array}\right) \\&\le \left( \begin{array}{c} Ce^{-\alpha \tau _1/\varepsilon }\\ Ce^{-\alpha \tau _1/\varepsilon } \end{array}\right) \\&\le \left( \begin{array}{c} CN^{-1}\\ CN^{-1} \end{array}\right) .\\ \text {For}\quad x_i \in (d,d+\tau _2),\quad |\mathbf P ^N(\mathbf W _2-\mathbf w _2)(x_i)|&\le \left( \begin{array}{c} Ch_3\varepsilon ^{-1}\\ Ch_3\varepsilon ^{-1} \end{array}\right) \\&\le \left( \begin{array}{c} CN^{-1}\\ CN^{-1} \end{array}\right) .\\ \text {For}\quad x_i \in [d+\tau _2,1),\quad |\mathbf P ^N(\mathbf W _2-\mathbf w _2)(x_i)|&\le \left( \begin{array}{c} C\parallel \varepsilon \mathbf w _2''\parallel _{(x_{i-1},x_{i+1})}+C\parallel \mathbf w _2'\parallel _{[x_i,x_{i+1}]}\\ C\parallel \varepsilon \mathbf w _2''\parallel _{(x_{i-1},x_{i+1})}+C\parallel \mathbf w _2'\parallel _{[x_i,x_{i+1}]} \end{array}\right) \\&\le \left( \begin{array}{c} Ce^{-\alpha (\tau _1-h_3)/\varepsilon }\\ Ce^{-\alpha (\tau _1-h_3)/\varepsilon } \end{array}\right) \\&\le \left( \begin{array}{c} CN^{-1}\\ CN^{-1} \end{array}\right) . \end{aligned}$$

Combining all these results, we get

$$\begin{aligned} |\mathbf P ^N(\mathbf W _2-\mathbf w _2)(x_i)|&\le \left( \begin{array}{c} CN^{-1}\ln N\\ CN^{-1}\ln N \end{array}\right) \\ \text {and}\quad |[D(\mathbf W _2-\mathbf w _2)(d)]|&\le \left( \begin{array}{c} C\varepsilon ^{-1}N^{-1}\ln N\\ C\varepsilon ^{-1}N^{-1}\ln N \end{array}\right) . \end{aligned}$$

Choose the barrier function

$$\begin{aligned} \psi _j(x_i)=CN^{-1}\ln N {\left\{ \begin{array}{ll} 1,\quad x_i \le d\\ \phi _j,\quad x_i \ge d \end{array}\right. } +CN^{-1} \ln N(1-x_i),\quad j=1,2, \end{aligned}$$

where \(\phi _j\) is the solution of the problem

$$\begin{aligned} -\varepsilon \delta ^2\phi _j-\alpha D^+\phi _j=0,\quad B_{jd}\phi _j(d)=1, B_{j1}\phi _j(1)=0,\quad j=1,2. \end{aligned}$$

Applying discrete maximum principle, we get the required result. \(\square \)

Theorem 5

Let \(\mathbf y (x)=(y_1(x),y_2(x))^T,\;x \in \overline{\varOmega }\) be the solution of (2.1)-(2.4) and also let \(\mathbf Y (x_i)=(Y_1(x_i),Y_2(x_i))^T,\; x_i \in \overline{\varOmega }_{\varepsilon }^N\) be the numerical solution of the problem (3.1)-(3.5). Then we have

$$\begin{aligned}&\sup \limits _{0<\varepsilon \le 1} \parallel Y_1-y_1 \parallel _{\varOmega _{\varepsilon }}^N \le CN^{-1}\ln N, \\&\text {and}\\&\sup \limits _{0<\varepsilon \le 1} \parallel Y_2-y_2 \parallel _{\varOmega _{\varepsilon }}^N \le CN^{-1}\ln N. \end{aligned}$$

Proof

Using the Lemmas 2, 3 and 6 in \(\mathbf Y -\mathbf y =\mathbf V -\mathbf v +\mathbf W -\mathbf w \), this theorem can be proved. \(\square \)

Numerical Results

In this section, two examples are given to illustrate the computational methods discussed in this paper.

Consider the singularly perturbed convection–diffusion Robin type BVP with discontinuous source term:

Example 1

$$\begin{aligned} -\varepsilon y_1''(x)-2y_1'(x)+3y_1(x)-y_2(x)&= f_1(x),\quad x\in \varOmega ^-\cup \varOmega ^{+}, \\ -\varepsilon y_2''(x)-y_2'(x)-y_1(x)+3y_2(x)&= f_2(x),\quad x\in \varOmega ^-\cup \varOmega ^{+}, \\ 3y_1(0) - \varepsilon y_1'(0)&= 0, \,\, 2y_1(1) + y_1'(1)=1, \\ 3y_2(0) - \varepsilon y_2'(0)&= 2, \,\, 2y_2(1) + y_2'(1)=2, \end{aligned}$$

where

$$\begin{aligned} f_1(x) = \left\{ \begin{array}{ll} 4, &{} \quad \hbox {for} \quad 0 \le x < \dfrac{1}{3}, \\ 2, &{} \quad \hbox {for} \quad \dfrac{1}{3} \le x \le 1. \end{array}\right. \end{aligned}$$

and

$$\begin{aligned} f_2(x) = \left\{ \begin{array}{ll} 3, &{}\quad \hbox {for} \quad 0 \le x < \dfrac{1}{3}, \\ 1, &{}\quad \hbox {for} \quad \dfrac{1}{3} \le x \le 1. \end{array}\right. \end{aligned}$$

Example 2

$$\begin{aligned} -\varepsilon y_1''(x)-\dfrac{1}{3+x}y_1'(x)+2y_1(x)-y_2(x)&= f_1(x),\quad x\in \varOmega ^-\cup \varOmega ^+, \\ -\varepsilon y_2''(x)-\dfrac{1}{3+x}y_2'(x)-4y_1(x)+5y_2(x)&= f_2(x),\quad x\in \varOmega ^-\cup \varOmega ^+, \\ y_1(0) - \varepsilon y_1'(0)&= 2, \,\, y_1(1) + y_1'(1)=2, \\ y_2(0) - \varepsilon y_2'(0)&= 2, \,\, y_2(1) + y_2'(1)=2, \end{aligned}$$

where

$$\begin{aligned} f_1(x) = \left\{ \begin{array}{ll} \dfrac{3+x}{3}, &{}\quad \hbox {for} \quad 0 \le x < 0.5, \\ 2+x, &{}\quad \hbox {for} \quad 0.5 \le x \le 1. \end{array}\right. \end{aligned}$$

and

$$\begin{aligned} f_2(x) = \left\{ \begin{array}{ll} \dfrac{3+x}{2}, &{}\quad \hbox {for} \quad 0 \le x < 0.5, \\ 1+x, &{}\quad \hbox {for} \quad 0.5 \le x \le 1. \end{array}\right. \end{aligned}$$

The maximum errors and the orders of convergence for the solution of the above Example-1 and Example-2 are presented for various values of \(\varepsilon \) and \(N\) in the Tables 1, 2, 3 and 4 and Figs. 1 and 2 respectively. For a finite set of values \(\varepsilon =\{2^{-1},2^{-2},...,2^{-25}\}\), maximum point-wise errors \(E_{\varepsilon }^N\) are computed as \(E_{\varepsilon }^N=\max \limits _{x_j\in \overline{\varOmega }_{\varepsilon }^N}\left| Y_j^N-\tilde{Y}_j^{8192}\right| \) for j=1,2, where \(\tilde{Y}_j^{8192}\) is the piecewise linear interpolant of the mesh function \(Y_j^{8192}\) onto [0,1]. From these values, the \(\varepsilon \)-uniform maximum point-wise difference is calculated by \(E_j^N=\max \limits _{\varepsilon } E_{\varepsilon ,j}^N,j=1,2\). Further, the order of convergence is computed by \(p_j^N=\log _2\left( \dfrac{E_j^N}{E_j^{2N}}\right) ,j=1,2\).

Fig. 1
figure 1

Numerical solutions of Example 1 for \(\varepsilon =2^{-5}\) and \(N=256\)

Fig. 2
figure 2

Numerical solutions of Example 2 for \(\varepsilon =2^{-6}\) and \(N=512\)

Table 1 Maximum point-wise errors \(E_{1,\varepsilon }^N\), \(\varepsilon \)-uniform error \(E_1^N\) and \(\varepsilon \)-uniform order of convergence \(p_1^N\) for different values of mesh points N for the solution \(y_1\) of Example 1
Table 2 Maximum point-wise errors \(E_{2,\varepsilon }^N\), \(\varepsilon \)-uniform error \(E_2^N\) and \(\varepsilon \)-uniform order of convergence \(p_2^N\) for different values of mesh points N for the solution \(y_2\) of Example 1
Table 3 Maximum point-wise errors \(E_{1,\varepsilon }^N\), \(\varepsilon \)-uniform error \(E_1^N\) and \(\varepsilon \)-uniform order of convergence \(p_1^N\) for different values of mesh points N for the solution \(y_1\) of Example 2
Table 4 Maximum point-wise errors \(E_{2,\varepsilon }^N\), \(\varepsilon \)-uniform error \(E_2^N\) and \(\varepsilon \)-uniform order of convergence \(p_2^N\) for different values of mesh points N for the solution \(y_2\) of Example 2

Conclusions

A system of two coupled singularly perturbed convection–diffusion Robin type boundary value problems with discontinuous source term was examined. A difference scheme using fitted mesh method on the Shishkin mesh was constructed for solving the problem which gives \(\varepsilon \)-uniform convergence. The obtained numerical results are of first order convergence which support the theoretical results.