Keywords

1 Introduction

When discretizing the diffusion-convection equations by the finite element method, the standard Galerkin variational formulation very often produces oscillatory approximations in the convection-dominated case (cf. [3, 14]). As is well-known, this is due to the fact that there lacks controlling the dominating convection in the stability of the method. For obtaining some stability in the direction of the convection, over more than thirty years, numerous stabilized methods have been available. Basically, all the stabilization methods share the common feature: from some residuals relating to the original problem to get the stability in the streamline direction. The stabilization method is highly relevant to the variational multiscale approach [6]: solving the original problem locally (e.g., on element level) to find the unresolved component of the exact solution in the standard Galerkin method. Some extensively used stabilization methods are: SUPG (Streamline Upwind/Petrov-Galerkin) method or SD (Streamline Diffusion) method (cf. [7, 12]), residual-free bubble method (cf. [15]), GaLS method (cf. [4, 9,10,11, 16, 22]), local projection method (cf. [2, 3]), edge stabilization method (cf. [17, 20]), least-squares method (cf. [5, 8, 23]), etc. All these stabilization methods can generally perform well for the convection-dominated problem, i.e., the finite element solution is far more stable and accurate than that of the standard method. The edge stabilization method is such method, which uses the jump residual of the normal derivatives of the exact solution, \( [\![\nabla u\cdot \mathbf{n}]\!]=0 \) across any inter-element-face F. This method is also known as CIP (continuous interior penalty) method [1] for second-order elliptic and parabolic problems. In [17], the edge stabilization method is studied, suitable for the convection-dominated problem. It has been as well proven to be very useful elsewhere (e.g., cf. [18,19,20,21], etc.).

In this paper, we study a new edge stabilization method, motivated by the one in [17]. Precisely, letting \(\mathcal{F}_h^{int}\) be the set of the interior element faces, and \(h_F\) the diameter of element face F, and \(\mathcal{F}_h^\partial \) the set of the element faces on \(\partial \varOmega \), we define the new edge stabilization as follows:

$$\begin{aligned} \begin{array}{ll} \mathscr {J}_h(u,v)&=\displaystyle \sum \limits _{F\in \mathcal {F}_h^{int}}\beta \tau _{int,F}\int _F[\nabla u\cdot \mathbf{n}][\nabla v\cdot \mathbf{n}] +\displaystyle \sum \limits _{F\in \mathcal {F}_h^{\partial }}\alpha \tau _{\partial ,F}\int _F(-\varepsilon \varDelta u+\mathbf{b}\cdot \nabla u)(\mathbf{b}\cdot \nabla v). \end{array}\nonumber \\ \end{aligned}$$
(1.1)

Here \(\alpha ,\beta \) are positive constants, and \(\tau _{int,F},\tau _{\partial ,F}\) are mesh-dependent parameters, which will be defined later. The role of \(\tau _{int,F},\tau _{\partial ,F}\) is approximately the same as \(h_F^2\). The new method is consistent in the usual sense (cf. [13, 14]), and it allows higher-order elements to give higher-order convergent approximations, whenever the exact solution is smooth enough. The first stabilization term on the right of (1.1) is essentially the same as [17]. However, the additional second term on the right of (1.1) is crucial. It ensures that the new method can wholly control the term \(\mathbf{b}\cdot \nabla u\) on every element and can give the same stability as the SUPG method. Differently, the stabilization in [17] cannot have the same stability. See further explanations later. We analyze the new method, and give the stability and error estimates. Numerical experiments are provided to illustrate the new method, also to compare it with the method in [17] and the SUPG method. As will be seen from the numerical results, in the presence of boundary and interior layers, the new edge stabilization method is much better than the method in [17] and is comparable to the SUPG method. In general, the new edge stabilization is more stable than the SUPG method.

2 Diffusion-Convection Equations

We study the following diffusion-convection problem: Find u such that

$$\begin{aligned} -\varepsilon \varDelta u+\mathbf{b}\cdot \nabla u=f\quad \text{ in } \varOmega ,\quad u=0\quad \text{ on } \partial \varOmega . \end{aligned}$$
(2.1)

Here \(\varepsilon >0\) denotes the diffusive constant, \(\mathbf{b}\) the convection/velocity field, and f the source function. The convection-dominated case means that \( \varepsilon \ll ||\mathbf{b}||_{L^\infty (\varOmega )}; \) or, the dimensionless quantity Peclet number: \( Pe=V L/\varepsilon \) is very large. Here V and L are the characteristic velocity and the length scales of the problem. In this paper, we shall use the standard Sobolev spaces [13]. The standard Galerkin variational problem is to find \(u\in H_0^1(\varOmega )\) such that

$$\begin{aligned} A(u,v):=\varepsilon (\nabla u,\nabla v)_{L^2(\varOmega )}+(\mathbf{b}\cdot \nabla u,v)_{L^2(\varOmega )}=(f,v)_{L^2(\varOmega )}\quad \forall v\in H_0^1(\varOmega ).\qquad \end{aligned}$$
(2.2)

From (2.2), the finite element method reads as follows: find \(u_h\in U_h\subset H_0^1(\varOmega )\) such that

$$\begin{aligned} A(u_h,v_h)=(f,v_h)\quad \forall v_h\in U_h. \end{aligned}$$
(2.3)

It has been widely recognized whether (2.3) performs well or not depends on whether the following discrete Peclet number is large or not:

$$\begin{aligned} Pe_h=||\mathbf{b}||_{L^\infty (\varOmega )} h/\varepsilon \quad \text{ discrete } \text{ Peclet } \text{ number }, \end{aligned}$$
(2.4)

where h is the mesh size of the triangulation \(\mathcal{T}_h\) of \(\varOmega \). We assume that \(\varOmega \) is partitioned into a family of triangles, denoted by \(\mathcal{T}_h\) for \(h>0\) and \(h\rightarrow 0\), such that \(\bar{\varOmega }=\cup _{T\in \mathcal{T}_h} \bar{T}\). The mesh size \(h:=\max _{T\in \mathcal{T}_h} h_T\), where \(h_T\) denotes the diameter of the triangle element \(T\in \mathcal{T}_h\). Concretely, letting \(P_\ell \) denote the space of polynomials of degree not greater than the integer \(\ell \ge 1\).

$$\begin{aligned} U_h=\{v_h\in H_0^1(\varOmega ): v_h|_T\in P_\ell (T),\forall T\in \mathcal{T}_h,v_h|_{\partial \varOmega }=0\}. \end{aligned}$$
(2.5)

3 Edge Stabilization

In this paper, we shall consider a stabilized \(A_h(\cdot ,\cdot )\) by the residual of the normal derivatives of the exact solution, i.e.,

$$\begin{aligned}{}[\![\nabla u\cdot \mathbf{n}]\!]=0\quad \forall F\in \mathcal{F}_h^{int}, \end{aligned}$$
(3.1)

and the residual of the partial differential equation (2.1), i.e.,

$$\begin{aligned} -\varepsilon \varDelta u+\mathbf{b}\cdot \nabla u-f=0\quad \forall T\in \mathcal{T}_h. \end{aligned}$$
(3.2)

Corresponding to the new edge stabilization (1.1), we define the right-hand side as follows:

$$\begin{aligned} \mathscr {L}_h(v)=\sum _{F\in \mathcal {F}_h^{\partial }}\alpha \tau _{\partial ,F}\int _F f(\mathbf{b}\cdot \nabla v), \end{aligned}$$
(3.3)

where, denoting by \(h_F\) the diameter of F,

$$\begin{aligned} \tau _{int,F}:=\frac{h^3_F\Vert \mathbf{b}\Vert ^2_{L^\infty (F)}}{\Vert \mathbf{b}\Vert _{L^\infty (F)}h_F+\varepsilon }, \quad \tau _{\partial ,F}:=\frac{h^3_F}{\Vert \mathbf{b}\Vert _{L^\infty (F)}h_F+\varepsilon }. \end{aligned}$$
(3.4)

The stabilizing parameters \(\tau _{\partial ,F}\) and \(\tau _{int,F}\) are motivated by [9, 10, 16].

Now, the new edge stabilized finite element method is to find \(u_h\in U_h\) such that

$$\begin{aligned} \begin{array}{l} A_h(u_h,v_h):=A(u_h,v_h)+\mathscr {J}_h(u_h,v_h) =R_h(v_h):=(f,v_h)_{L^2(\varOmega )}+\mathscr {L}_h(v_h)\quad \forall v_h\in U_h. \end{array} \nonumber \\ \end{aligned}$$
(3.5)

This method is consistent, i.e., letting u be the exact solution of (2.1), we have

$$\begin{aligned} A_h(u,v_h)=R_h(v_h)\quad \forall v_h\in U_h. \end{aligned}$$
(3.6)

4 Stability and Error Estimates

Without loss of generality, we assume that \(\mathrm{div\,}\mathbf{b}=0\).

Define

$$ \begin{array}{l} \displaystyle |||u_h|||_h^2:=\varepsilon ||\nabla u_h||_{L^2(\varOmega )}^2+\sum \limits _{T\in \mathcal{T}_h}\tau _T ||\mathbf{b}\cdot \nabla u_h||_{L^2(T)}^2 \\ \displaystyle +\sum \limits _{F\in \mathcal{F}_h^{int}} \beta \tau _{int,F} \int _F |[\![\nabla u_h\cdot \mathbf{n}]\!]|^2 +\sum \limits _{F\in \mathcal{F}_h^\partial } \alpha \tau _{\partial ,F} \int _F |\mathbf{b}\cdot \nabla u_h|^2, \end{array} $$

where

$$ \tau _T=\dfrac{h_T^2}{||\mathbf{b}||_{L^\infty (\varOmega )} h_T+\varepsilon }. $$

Now we can prove the following Inf-Sup condition.

Theorem 1

([27])   The Inf-Sup condition

$$ \sup \limits _{v_h\in U_h} \dfrac{A_h(u_h,v_h)}{|||v_h|||_h}\ge C |||u_h|||_h\quad \forall u_h\in U_h $$

holds, where the constant C is independent of \(h,\varepsilon , \mathbf{b}, u_h\), only depending on \(\varOmega \) and \(\ell \).

The above result crucially relies on the following Lemma 1.

Denote by \( W_h=\{w_h\in L^2(\varOmega ): w_h|_T\in P_{\ell -1}(T),\forall T\in \mathcal{T}_h\}, \) and let \( W_h^c=W_h\cap H_0^1(\varOmega )\subset U_h. \) Introduce the jump of v across \(F\in \mathcal{F}_h\). If \(F\in \mathcal{F}_h^{int}\), which is the common side of two elements \(T^+\) and \(T^-\), denoting the both sides of F by \(F^+\) and \(F^-\), we define the jump \( [\![v]\!]=(v|_{T^+})|_{F^+}-(v|_{T^-})|_{F^-}. \) If \(F\in \mathcal{F}_h^\partial \), letting T be such that \(F\subset \partial T\), we define the jump \( [\![v]\!]=(v|_T)|_F. \)

Lemma 1

For any \(w_h\in W_h\), there exists a \(w_h^c\in W_h^c\), which can be constructed by the averaging approach from \(w_h\), such that, for all \(T\in \mathcal{T}_h\),

$$ ||w_h-w_h^c||_{L^2(T)}\le C h_T^{1/2} \sum \limits _{F\subset \partial T} ||[\![w_h]\!]||_{L^2(F)}. $$

For a linear element, the argument for constructing the finite element function \(w_h^c\in W_h^c\) from the discontinuous \(w_h\in W_h\) through a nodal averaging approach can be found in [25]. For higher-order elements, we refer to [24] (see Theorem 2.2 on page 2378) for a general nodal averaging approach. An earlier reference is [26], where a similar nodal averaging operator can be found. In [17], a proof is also given to prove a similar result for any \(w_h|_T:=h_T \mathbf{b}\cdot \nabla u_h\) for all \(T\in \mathcal{T}_h\), but there is a fault. In fact, the authors therein made the mistake in those elements whose sides locate on \(\partial \varOmega \), e.g., for \(T\in \mathcal{T}_h\) with three sides \(F_1,F_2,F_3\), letting \(F_1\in \mathcal{F}_h^\partial \) and \(F_2, F_3\in \mathcal{F}_h^{int}\),

$$ ||w_h^c-w_h||_{L^2(T)}\le C h_T^{1/2} \sum \limits _{F\subset \partial T\atop F\in \mathcal{F}_h^{int}} ||[\![w_h]\!]||_{L^2(F)}=C h_T^{1/2} \sum \limits _{F_2,F_3} ||[\![w_h]\!]||_{L^2(F)}. $$

This result can hold only for \(w_h|_{\partial \varOmega }=0\). In general, it is not necessarily true that \(w_h=0\) on \(\partial \varOmega \). Of course, for some problems, say, nonlinear Navier-Stokes equations of the no-slip Dirichlet velocity boundary condition, the convection field \(\mathbf{b}\) is the velocity itself of the flow, trivially \(\mathbf{b}|_{\partial \varOmega }=\mathbf{0}\), and consequently, the result of [17] will be correct. Now, it is clear the reason why we introduce the second stabilization on \(\partial \varOmega \) on the right of (1.1). With this stabilization, we can obtain the result in Lemma 1 to correct the one of [17] and ensure that the new method is still consistent as usual. If the method is consistent, for a higher-order element (applicable when the exact solution is smooth enough), a higher-order convergence can be obtained.

Theorem 2

([27]) Let u and \(u_h\) be the exact solution and finite element solution of (2.1) and (3.6), respectively. Then,

$$ \begin{array}{ll} |||u-u_h|||_h\le &{} C \left( \Big (\varepsilon ^{1/2} h^\ell +(||\mathbf{b}||_{L^\infty (\varOmega )} h+\varepsilon )^{1/2} h^\ell \Big ) |u|_{H^{\ell +1}(\varOmega )}\right. \\ &{}\left. +\,(||\mathbf{b}||_{L^\infty (\varOmega )} h+\varepsilon )^{-1/2} ||\mathbf{b}||_{L^\infty (\varOmega )} h^{\ell +1}|u|_{H^{\ell +1}(\varOmega )}+\varepsilon ^{1/2} h^{\ell +1} |\varDelta u|_{H^\ell (\varOmega )}\right) . \end{array} $$

In the case of convection-dominated case, i.e., \(Pe_h\gg 1\), or \(\varepsilon \ll ||\mathbf{b}||_{L^\infty (\varOmega )} h\), we find that

$$ |||u-u_h|||_h\le C (\varepsilon ^{1/2} h^\ell +||\mathbf{b}||_{L^\infty (\varOmega )}^{1/2} h^{\ell +1/2})|u|_{H^{\ell +1}(\varOmega )}+C \varepsilon ^{1/2} h^{\ell +1} |\varDelta u|_{H^\ell (\varOmega )}. $$

Denote by

$$ ||v||_\mathrm{SUPG}^2:=\varepsilon ||\nabla v||_{L^2(\varOmega )}^2+\sum \limits _{T\in \mathcal{T}_h} \tau _T ||\mathbf{b}\cdot \nabla v||_{L^2(T)}^2 $$

the norm which is often used in the SUPG method or other methods such as the residual-free bubble method (or which is equivalent to the norms used in the literature for the SUPG method and other methods, at least, in the convection-dominated case of \(Pe_h\gg 1\)). Using this norm, we restate the above error bounds as follows:

$$ ||u-u_h||_\mathrm{SUPG}\le (\varepsilon ^{1/2} h^\ell +||\mathbf{b}||_{L^\infty (\varOmega )}^{1/2} h^{\ell +1/2})|u|_{H^{\ell +1}(\varOmega )}+C \varepsilon ^{1/2} h^{\ell +1} |\varDelta u|_{H^\ell (\varOmega )}. $$

In comparison with the SUPG method, here the error bounds are essentially the same [15], only up to a higher-order error bound \(C \varepsilon ^{1/2} h^{\ell +1} |\varDelta u|_{H^\ell (\varOmega )}\). Therefore, the new edge stabilization method in this paper is theoretically comparable to the SUPG method. The numerical results will further show that the new edge stabilization method is comparable to the SUPG method. Moreover, in the new edge stabilization method, we have more stability than the SUPG method, i.e., the stability is measured in the norm \(|||\cdot |||_h\), where the jump of the normal derivatives of the solution (including the normal derivatives of the solution on \(\partial \varOmega \)) are controlled. Numerically, for some meshes, the new edge stabilization method is indeed more stable than the SUPG method.

In comparison with the edge stabilization method [17], we have already observed the advantages of the new method in this paper. Theoretical results have confirmed the observations. Numerical results will further give the supports.

5 Numerical Experiments

In this section, we give some numerical results for illustrating the performance of the new edge stabilization method, the SUPG method and the edge stabilization method [17] for solving the convection-dominated diffusion-convection equations with boundary and inner layers.

We study two types of meshes as shown in Fig. 1. In the first case (denoted mesh-1) the square elements are cut into two triangles approximately along the direction of the convection; in the second case (mesh-2) they are cut almost perpendicular to the direction of the convection. We choose domain \(\varOmega : =(0, 1)^2\), the convection field \(|\mathbf{b}|=1\) which is constant, \(f=0\), and nonhomogeneous boundary condition \(u|_{\partial \varOmega }=U\). The geometry, the boundary conditions and the orientation of \(\mathbf{b}\) are shown in Fig. 2. At \(h=1/64\) and \(\varepsilon =10^{-5}\) and \(\varepsilon =10^{-8}\), using the linear element, we have computed the finite element solutions using three methods: SUPG method, BH method [17], New method in this paper. For mesh-1, the elevations and contours are given by Figs. 3 and 4. For mesh-2, the elevations and contours are given by Figs. 5 and 6. For mesh-1, from Figs. 3 and 4, we clearly see that the New method is comparable to the SUPG method and is much better than the BH method. For mesh-2, from Figs. 5 and 6, we clearly see that the New method is better than the SUPG method and is still much better than the BH method.

Fig. 1.
figure 1

Meshes

Fig. 2.
figure 2

Boundary conditions and flow orientation: \(U=1\) thick edge and \(U=0\) thin edge.

Fig. 3.
figure 3

The elevation and contour of the finite element solution, mesh-1, \(\varepsilon =10^{-5}\), \(h=1/64\).

Fig. 4.
figure 4

The elevation and contour of the finite element solution, mesh-1, \(\varepsilon =10^{-8}, h=1/64\).

Fig. 5.
figure 5

The elevation and contour of the finite element solution, mesh-2, \(\varepsilon =10^{-5}\), \(h=1/64\).

Fig. 6.
figure 6

The elevation and contour of the finite element solution, mesh-2, \(\varepsilon =10^{-8}, h=1/64\).