1 Introduction

Many problems in science and technology can be modeled by boundary value problems for singularly perturbed differential equations. Singularly perturbed problems arise for example in the modeling of fluid flow at high Reynolds numbers, water quality problems in river networks, convective heat transport problems with large Peclet numbers, drift diffusion equations of semiconductor device modeling, simulation of oil extraction from under-ground reservoirs, theory of plates and shells, atmospheric pollution, groundwater transport, and chemical reactor theory. For a detailed survey of different applications, we refer to [1]. Recently also singularly perturbed semilinear boundary value problems with discontinuous coefficients and nonlinear reaction-diffusion equations attracted some attention; see [2, 3] and the references therein. A vast majority of these problems cannot be solved analytically and therefore it is necessary to solve them approximately. In the modeling of the above processes, one can observe boundary and interior layers whose width can be arbitrarily small.

We consider here the following singularly perturbed two-point boundary value problem:

$$\begin{aligned}& - \epsilon u''(x) + p(x) u'(x) + q(x) u(x) = f(x)\quad \forall x \in(0,1) \end{aligned}$$
(1)
$$\begin{aligned}& \quad \mbox{with } u(0)=0, u(1)=0, \end{aligned}$$
(2)

where \(0 < \epsilon\ll1\) is a parameter, \(p \in C^{2}[0,1]\), \(q \in C^{1}[0,1]\), \(f \in C^{1}[0,1]\), and \(p(x)>\alpha>0\). Then the above problem has a unique solution \(u(x)\) [4]. This equation represents a simple mathematical model of a convection-diffusion problem and it can be used to model many practical problems. For example the linearized Navier-Stokes equations at high Reynolds number provide an accurate model of the transition dynamics in the problem of turbulence suppression in channel flow. Problems of these types have solutions which are discontinuous as ϵ is approaching zero and typically possess boundary or interior layers, i.e. regions of rapid change in the solution near the endpoints or some interior points. Therefore, it is usually more difficult to solve them for very small parameter ϵ. Many numerical methods have been suggested to solve such types of problems and a lot of them require information as regards locations and widths of different layers. One of the possibilities to solve them without this information is an application of adaptive methods.

In recent years, there have appeared some promising results in using wavelets to solve singularly perturbed problems. In [5], a non-adaptive numerical method based on wavelets of Hermite cubic splines was presented and improved results were obtained in comparison with other techniques. In [6], the authors constructed wavelets of order 5 with five vanishing wavelet moments with respect to which stiffness matrices for ordinary differential equations with constant coefficients are very sparse (in comparison with other kinds of wavelets) and their condition numbers are similarly small as in [7] for lower order wavelets. Then they applied tensor product wavelets to the adaptive solution of a reaction-diffusion equation in two space dimensions.

In this contribution, we focus on methods based on wavelets. Using wavelet discretization with a standard wavelet diagonal preconditioning for singularly perturbed two-point boundary value problems, one can observe that the condition numbers of arising stiffness matrices are growing with decreasing parameter ϵ when a nonsymmetric part starts to dominate. In the wavelet methods, the continuous problem is transformed into a well-conditioned discrete problem. And once a well-conditioned nonsymmetric problem is given, squaring will yield a symmetric positive definite formulation [8]. Therefore an efficient preconditioning is very important since the rate of convergence for most iterative linear solvers depends on the condition number of a preconditioned matrix. We propose here a simple diagonal preconditioning which significantly improves the condition numbers of the stiffness matrices with a dominating nonsymmetric part. A diagonal preconditioning is optimal for adaptive wavelet methods in which often stiffness matrices are not explicitly assembled and not stored in a computer memory. This paper is organized as follows: First, we briefly introduce wavelet bases and their properties. Then we propose a new diagonal preconditioning and we prove that the condition numbers of the infinite diagonally preconditioned stiffness matrices are finite. At the end, we provide some numerical examples.

2 Wavelet bases

We consider here families \(\Psi= \{ \psi_{\lambda}, \lambda \in\mathcal{J} \} \subset L_{2}(0,1)\) of functions (wavelets) that are normalized in \(L_{2}(0,1)\) such that \(\Vert \psi_{\lambda }\Vert _{L _{2}(0,1)}=1\). Let \(\mathcal{J}\) be an infinite index set and \(\mathcal{J}=\mathcal{J}_{\Phi} \cup\mathcal{J}_{\Psi}\), where \(\mathcal{J}_{\Phi}\) is a finite set representing scaling functions living on the coarsest scale. Any index \(\lambda\in\mathcal{J}\) is of the form \(\lambda= ( j,k) \), where \(\vert \lambda \vert =j\) denotes a scale and k denotes spatial location. Further, we will denote \(\mathbf{D}^{s}\) a diagonal matrix, whose diagonal entries are \(2^{s\vert \lambda \vert }\). Then \(\mathbf{D}^{-s}\Psi=\{ 2^{-s\vert \lambda \vert } \psi_{\lambda}\}\) will denote a scaled wavelet basis. The above notation enables us to write wavelet expansions as

$$\mathbf{d}^{T}\Psi:= \sum_{\lambda\in\mathcal{J}} d_{\lambda} \psi_{\lambda}. $$

At last, for \(s \geq0\) the space \(H^{s}\) will denote a closed subspace of the Sobolev space \(H^{s} ( 0,1) \), defined e.g. by imposing homogeneous boundary conditions at one or both endpoints, and for \(s < 0\) the space \(H^{s}\) will denote the dual space \(H^{s} := (H ^{-s})'\). \(\Vert \cdot \Vert _{H^{s}}\) will denote the corresponding norm. Further \(l_{2}(\mathcal{J})\) will denote the space consisting of the power summable sequences and \(\Vert \cdot \Vert _{l_{2}( \mathcal{J})}\) will denote the corresponding norm.

A family \(\Psi= \{ \psi_{\lambda}, \lambda\in\mathcal{J} \} \subset L_{2}(0,1)\) is called a wavelet basis of \(H^{s}\) for some \(\gamma,\widetilde{\gamma}>0\) and \(s \in(- \widetilde{\gamma},\gamma)\), if:

  • Ψ is a Riesz basis of \(H^{s}\), which means Ψ forms a basis of \(H^{s}\) and there exist constants \(c_{s},C_{s} > 0\) such that for all \(\mathbf{b}= \{ b_{\lambda} \} _{\lambda\in\mathcal{J}} \in l_{2} ( \mathcal{J} ) \) we have

    $$ c_{s} \Vert \mathbf{b} \Vert _{l_{2} ( \mathcal{J} ) } \leq \bigl\Vert \mathbf{b}^{T} \mathbf{D}^{-s} \Psi\bigr\Vert _{H^{s}} \leq C_{s} \Vert \mathbf{b} \Vert _{l_{2} ( \mathcal{J} ) }, $$
    (3)

    where \(\sup c_{s}\), \(\inf C_{s}\) are called Riesz bounds and \(\operatorname{cond}\Psi:= \frac{\inf C_{s}}{\sup c_{s}}\) is called the condition number of Ψ.

  • Functions are local in the sense that \(\operatorname{diam}( \operatorname{supp}\psi_{\lambda} ) \leq C 2^{-\vert \lambda \vert }\) for all \(\lambda\in\mathcal{J}\), where C is a constant independent of λ.

  • Functions \(\psi_{\lambda}, \lambda\in\mathcal{J}_{\Psi}\), have cancellation properties of order m, i.e.

    $$\biggl\vert \int_{0}^{1} v(x) \psi_{\lambda}(x)\,dx \biggr\vert \leq2^{-m \vert \lambda \vert } \vert v \vert _{H^{m} ( 0,1) },\quad \forall v \in H^{m} ( 0,1). $$

    It means that integration against wavelets eliminates smooth parts of functions and it is equivalent with vanishing wavelet moments of order m.

Norm equivalences (3) have the following important consequence which will be used later.

Theorem 1

Let H be a Hilbert space, \(\langle \cdot,\cdot \rangle : H \times H' \mapsto\mathbb{R}\), and suppose that there exist constants \(c, C > 0\) such that

$$ c \Vert \mathbf{b} \Vert _{{l_{2}(\mathcal{J})}} \leq\bigl\Vert \mathbf{b}^{T} \Psi\bigr\Vert _{H} \leq C \Vert \mathbf{b} \Vert _{{l_{2}(\mathcal{J})}} \quad \forall\mathbf{b} \in l_{2}( \mathcal{J}) $$
(4)

i.e., Ψ is a Riesz basis of H. Then

$$ C^{-1} \bigl\Vert \langle \Psi,b \rangle \bigr\Vert _{{l_{2}(\mathcal{J})}} \leq \Vert b \Vert _{H'} \leq c^{-1} \bigl\Vert \langle \Psi,b \rangle \bigr\Vert _{{l_{2}(\mathcal{J})}}\quad \forall b \in H'. $$
(5)

For the proof, we refer to [8].

The application of wavelets for the numerical solution of differential equations has several advantages, namely:

  • Vanishing wavelet moments (the cancellation property) lead to sparse representations of functions and operators.

  • In the case that an original continuous problem is well conditioned, the Riesz property (3) leads also to well-conditioned stiffness matrices [9]. Moreover, it implies that every function in \(H^{s}\) has a unique expansion in the scaled wavelet basis and that there is a tight relation between the function norms and wavelet coefficients. It means that small changes in wavelet coefficients can cause only small changes in the function and the other way around. Wavelet bases with small Riesz bounds were constructed for example in [1014].

  • There are wavelet-based asymptotically optimal algorithms for solving elliptic PDEs. See for example [1517]. It means that the number of floating point operations depends linearly on the number of nonzero wavelet coefficients.

3 Wavelet discretization

We restrict ourselves to the equation \(- \epsilon u'' + b u' + c u=f \) with the Dirichlet boundary conditions \(u(0) = u(1) = 0\), with small positive parameter ϵ and with constants \(b,c>0\). Now, this continuous problem can for suitable wavelet bases be transformed into an equivalent well-conditioned problem in \(l_{2}\). We start with the standard variational formulation: Find \(u \in H^{1} _{0} ( 0,1) \) such that

$$ a ( u,v) =f ( v),\quad \forall v \in H^{1}_{0} ( 0,1), $$
(6)

where a bilinear form \(a: H^{1}_{0} ( 0,1) \times H^{1} _{0} ( 0,1) \rightarrow\mathbb{R}\) and \(f \in H^{-1} ( 0,1) \) are given by

$$ a ( u,v):= \int_{0}^{1} \epsilon u' v'\,dx + \int _{0}^{1} b u' v \,dx + \int_{0}^{1} c u v \,dx,\qquad f ( v):= \int_{0}^{1} f v \,dx. $$
(7)

Now, we define an operator \(A: H^{1}_{0} ( 0,1) \mapsto H ^{-1} ( 0,1) \) by

$$ \langle u,Av \rangle = a ( u,v), \quad u \in H^{1}_{0} ( 0,1), $$
(8)

and then (6) is equivalent with the task: for given \(f \in H^{-1} ( 0,1) \) find \(u \in H^{1}_{0} ( 0,1) \) such that

$$ Au=f. $$
(9)

The scaled representation of (8) and the scaled wavelet representation of the right-hand side are then given by

$$\mathbf{A} := \mathbf{D}^{-1}_{A} \langle \Psi,A \Psi \rangle \mathbf{D}^{-1}_{A}, \qquad \mathbf{F} := \mathbf{D}^{-1}_{A} f( \Psi), $$

where \(\mathbf{D}_{A}\) is an appropriate diagonal matrix which will be specified later. Suppose that \(u = \mathbf{u}^{T} \mathbf{D}^{-1} \Psi\) is the scaled wavelet representation of the solution, then

$$ Au=f\quad \Longleftrightarrow\quad \mathbf{A} \mathbf{u} = \mathbf{F}. $$
(10)

For more details, we refer to [8].

First, we prove that the problem (6) is well posed in energy norm. The space \(H^{-1} ( 0,1) \) is endowed with the norm

$$|\!|\!|Av|\!|\!|' = \sup_{u \in H^{1}_{0}} \frac{\langle u,Av \rangle }{|\!|\!|u|\!|\!|} . $$

To shorten our notation the norm \(\Vert \cdot \Vert \) will denote \(\Vert \cdot \Vert _{L_{2}(0,1)}\).

Theorem 2

The variational problem (6) is well posed on \(H^{1}_{0} ( 0,1) \) equipped with energy norm \(|\!|\!|v|\!|\!|^{2} := \int_{0}^{1} \epsilon (v')^{2}\,dx + \int_{0} ^{1} c v^{2}\,dx\) in the sense that

$$|\!|\!|v|\!|\!|\leq |\!|\!|Av|\!|\!|' \leq \biggl( 2+ \frac{b}{\sqrt {\epsilon c}} \biggr) |\!|\!|v|\!|\!|\quad \forall v \in H^{1}_{0} ( 0,1). $$

Proof

For \(u,v \in H^{1}_{0} ( 0,1) \), we have

$$\begin{aligned} \langle u,Av \rangle =& a(u,v) \\ =& \int_{0}^{1} \epsilon u' v'\,dx + \int_{0}^{1} b u' v \,dx + \int_{0}^{1} c u v \,dx \\ \leq& \epsilon\bigl\Vert u'\bigr\Vert \bigl\Vert v'\bigr\Vert + b \bigl\Vert u'\bigr\Vert \Vert v\Vert + c \Vert u\Vert \Vert v\Vert \\ \leq& \sqrt{\epsilon} \bigl\Vert u'\bigr\Vert \sqrt{\epsilon} \bigl\Vert v'\bigr\Vert + \sqrt{ \epsilon} \bigl\Vert u'\bigr\Vert \sqrt{c} \Vert v\Vert \frac{b}{\sqrt {\epsilon c}} + \sqrt{c} \Vert u\Vert \sqrt{c} \Vert v\Vert \\ \leq& \biggl( 1 + \frac{b}{\sqrt{\epsilon c}} + 1 \biggr) |\!|\!|v|\!|\!||\!|\!|u|\!|\!| \end{aligned}$$

and

$$\begin{aligned} |\!|\!|v |\!|\!|^{2} =& \int_{0}^{1} \epsilon \bigl(v' \bigr)^{2}\,dx + \int _{0}^{1} \frac{b}{2} \bigl( v^{2} \bigr) '\,dx + \int_{0}^{1} c v^{2}\,dx \\ =& \int_{0}^{1} \epsilon \bigl(v' \bigr)^{2}\,dx + \int_{0}^{1} b v' v \,dx + \int_{0}^{1} c v^{2}\,dx \\ =& \langle v,Av \rangle \\ = &|\!|\!|v|\!|\!|\frac{\langle v,Av \rangle }{|\!|\!|v|\!|\!|} \\ \leq&|\!|\!|v|\!|\!|\sup_{u \in H^{1}_{0}} \frac{\langle u,Av \rangle }{|\!|\!|u|\!|\!|} = |\!|\!|v|\!|\!||\!|\!|Av |\!|\!|'. \end{aligned}$$

Then

$$|\!|\!|v|\!|\!|\leq |\!|\!|Av|\!|\!|' = \sup_{u \in H^{1}_{0}} \frac{\langle u,Av \rangle }{|\!|\!|u|\!|\!|} \leq\frac{ ( 2+\frac {b}{\sqrt{ \epsilon c}} ) |\!|\!|v|\!|\!||\!|\!|u|\!|\!|}{|\!|\!|u|\!|\!|} = \biggl( 2+\frac{b}{\sqrt{ \epsilon c}} \biggr) |\!|\!|v|\!|\!|. $$

 □

Then the operator A is bounded and coercive and an application of the Lax-Milgram lemma implies the existence of the unique solution for any \(f \in H^{-1} ( 0,1) \). Further, we prove that a diagonally scaled wavelet basis is a Riesz basis when it is scaled with the proposed diagonal scaling.

Theorem 3

Let \(\mathbf{D}_{A}:= ( \sqrt{ ( \epsilon2^{2\vert \lambda \vert }+b2^{\vert \lambda \vert }+c) }\delta_{\lambda,\mu} ) \) be the diagonal matrix, ϵ, b, c be positive constants and let the norm equivalences (3) hold for \(\gamma>1\). Then for every \(\mathbf{u} \in l_{2}(\mathcal{J})\) there exist positive constants \(c_{0}\), \(c_{1}\), \(C_{0}\), \(C_{1}\) such that

$$\frac{\min \{ c_{0},c_{1} \} }{\sqrt{\max \{ ( 1 + \frac{b}{2\epsilon} ), ( 1 + \frac{b}{2c} ) \} }} \Vert \mathbf{u}\Vert _{l_{2}(\mathcal{J})} \leq |\!|\!|\mathbf{u}^{T} \mathbf{D}_{A}^{-1} \Psi |\!|\!|\leq \max \{ C_{0},C_{1} \} \Vert \mathbf{u} \Vert _{l_{2}(\mathcal{J})}. $$

Proof

Let us denote \(u=\mathbf{v}^{T} \Psi= ( \mathbf{D}_{A} \mathbf{v} ) ^{T} \mathbf{D}_{A}^{-1} \Psi\), \(\mathbf{u} = \mathbf{D}_{A} \mathbf{v}\), and \(\mathbf{v}=\{v_{\lambda}\}_{l_{2}( \mathcal{J})}\). Then the norm equivalences (3) and Frie drichs’ inequality imply that there exist positive constants \(c_{0}\), \(c_{1}\), \(C_{0}\), \(C_{1}\) such that

$$c_{1} \sum_{\lambda\in\mathcal{J}} 2^{2\vert \lambda \vert } v_{\lambda}^{2} \leq\bigl\Vert u'\bigr\Vert ^{2} \leq C_{1} \sum_{\lambda\in\mathcal{J}} 2^{2 \vert \lambda \vert } v_{\lambda}^{2}\quad \mbox{and}\quad c_{0} \sum _{\lambda\in\mathcal{J}} v_{\lambda}^{2} \leq \Vert u \Vert ^{2} \leq C _{0} \sum_{\lambda\in\mathcal{J}} v_{\lambda}^{2}. $$

Using these inequalities, we obtain

$$\begin{aligned} |\!|\!|u |\!|\!|^{2} \leq& C_{1}^{2} \epsilon\bigl\Vert \mathbf{D}^{1}\mathbf{v}\bigr\Vert _{l_{2} ( \mathcal{J} ) } + C_{0}^{2} c \Vert \mathbf{v}\Vert _{l_{2} ( \mathcal{J} ) } \\ \leq&\max \bigl\{ C_{0} ^{2},C_{1}^{2} \bigr\} \sum_{\lambda\in\mathcal{J}} \bigl( \epsilon 2^{2\vert \lambda \vert }+c \bigr) v^{2}_{\lambda} \\ \leq& \max \bigl\{ C_{0}^{2},C_{1}^{2} \bigr\} \sum_{\lambda\in\mathcal{J}} \bigl( \epsilon2^{2\vert \lambda \vert }+b2^{\vert \lambda \vert }+c \bigr) v^{2}_{\lambda} = \max \bigl\{ C_{0}^{2},C_{1} ^{2} \bigr\} \Vert \mathbf{u}\Vert _{l_{2} ( \mathcal{J} ) } \end{aligned}$$

and

$$\begin{aligned} \Vert \mathbf{u}\Vert _{l_{2} ( \mathcal{J} ) }^{2} =& \Vert \mathbf{D}_{A} \mathbf{v}\Vert _{l_{2} ( \mathcal {J} ) }^{2} \\ =& \biggl\Vert \sum_{\lambda\in\mathcal{J}} \sqrt{ \bigl( \epsilon2^{2\vert \lambda \vert }+b2^{\vert \lambda \vert }+c \bigr) }v_{\lambda} \biggr\Vert _{l_{2} ( \mathcal {J} ) } ^{2} \\ =& \sum_{\lambda\in\mathcal{J}} \bigl( \epsilon2^{2\vert \lambda \vert }+b2^{\vert \lambda \vert }+c \bigr) v^{2}_{\lambda} \\ \leq& \sum_{\lambda\in\mathcal{J}} \biggl( \epsilon2^{2\vert \lambda \vert }+ \frac{b}{2} \bigl( 1 + 2^{2\vert \lambda \vert } \bigr) +c \biggr) v^{2}_{ \lambda} \\ =& \sum_{\lambda\in\mathcal{J}} \biggl( \biggl( \epsilon+ \frac{b}{2} \biggr) 2^{2\vert \lambda \vert } + \biggl( c + \frac {b}{2} \biggr) \biggr) v^{2}_{\lambda} \\ =& \sum_{\lambda\in\mathcal{J}} \biggl( \epsilon \biggl( 1 + \frac{b}{2 \epsilon} \biggr) 2^{2\vert \lambda \vert } + c \biggl( 1 + \frac {b}{2c} \biggr) \biggr) v^{2}_{\lambda} \\ \leq& \max \biggl\{ \biggl( 1 + \frac{b}{2\epsilon} \biggr), \biggl( 1 + \frac{b}{2c} \biggr) \biggr\} \sum_{\lambda\in\mathcal{J}} \bigl( \epsilon2^{2\vert \lambda \vert } + c \bigr) v^{2}_{\lambda} \\ \leq& \max \bigl\{ c_{0}^{-2},c_{1}^{-2} \bigr\} \max \biggl\{ \biggl( 1 + \frac{b}{2\epsilon} \biggr), \biggl( 1 + \frac{b}{2c} \biggr) \biggr\} |\!|\!|u |\!|\!|^{2}. \end{aligned}$$

 □

And finally we prove that the condition numbers of the infinite diagonally preconditioned stiffness matrices are finite.

Theorem 4

Let \(\mathbf{D}_{A}:= ( \sqrt{ ( \epsilon2^{2\vert \lambda \vert }+b2^{\vert \lambda \vert }+c) }\delta_{\lambda,\mu} ) \) be the diagonal matrix, ϵ, b, c be positive constants and let the norm equivalences (3) hold for \(\gamma>1\). Then

$$\begin{aligned} \operatorname{cond}( \mathbf{A} ) :=& \operatorname{cond}\bigl( \mathbf{D}^{-1}_{A} \langle \Psi,A \Psi \rangle \mathbf{D}^{-1}_{A} \bigr) \\ \leq& \frac{\max \{ C_{0}^{2},C_{1}^{2} \} ( 2+\frac {b}{\sqrt{ \epsilon c}} ) }{\min \{ c_{0}^{2},c_{1}^{2} \} ( \max \{ ( 1 + \frac{b}{2\epsilon} ), ( 1 + \frac{b}{2c} ) \} ) ^{-1}}, \end{aligned}$$

where \(c_{0}\), \(c_{1}\), \(C_{0}\), \(C_{1}\) are positive constants from Theorem 3.

Proof

Using Theorems 1, 2, and 3 implies

$$\begin{aligned}& \min \bigl\{ c_{0}^{2},c_{1}^{2} \bigr\} \biggl( \max \biggl\{ \biggl( 1 + \frac{b}{2\epsilon} \biggr), \biggl( 1 + \frac{b}{2c} \biggr) \biggr\} \biggr) ^{-1} \Vert \mathbf{u} \Vert _{l_{2} ( \mathcal{J} ) } \\& \quad \leq \min \{ c_{0},c_{1} \} \biggl( \max \biggl\{ \biggl( 1 + \frac{b}{2\epsilon} \biggr), \biggl( 1 + \frac{b}{2c} \biggr) \biggr\} \biggr) ^{-1/2} |\!|\!|u|\!|\!|\\& \quad \leq \min \{ c_{0},c_{1} \} \biggl( \max \biggl\{ \biggl( 1 + \frac{b}{2\epsilon} \biggr), \biggl( 1 + \frac{b}{2c} \biggr) \biggr\} \biggr) ^{-1/2} |\!|\!|A u|\!|\!|' \\& \quad \leq \bigl\Vert \mathbf{D}^{-1}_{A} \langle \Psi,A u \rangle \bigr\Vert _{l_{2} ( \mathcal{J} ) }\\& \quad = \bigl\Vert \mathbf{D}^{-1}_{A} \langle \Psi,A\Psi \rangle \mathbf {D}^{-1}_{A}\mathbf{u} \bigr\Vert _{l_{2} ( \mathcal{J} ) } \\& \quad = \Vert \mathbf{A}\mathbf{u}\Vert _{l_{2} ( \mathcal{J} ) } \\& \quad \leq \max \{ C_{0},C_{1} \} |\!|\!|A u |\!|\!|' \\& \quad \leq\max \{ C _{0},C_{1} \} \biggl( 2+ \frac{b}{\sqrt{\epsilon c}} \biggr) |\!|\!|u|\!|\!|\\& \quad \leq \max \bigl\{ C_{0}^{2},C_{1}^{2} \bigr\} \biggl( 2+\frac{b}{\sqrt{ \epsilon c}} \biggr) \Vert \mathbf{u} \Vert _{l_{2} ( \mathcal {J} ) }. \end{aligned}$$

 □

Remark 1

From the previous theorem it immediately follows that, for \(b=0\), we obtain symmetric stiffness matrices with small condition numbers which are independent of ϵ and are dependent only on Riesz constants of the used wavelet basis.

4 Numerical tests

In adaptive settings the discrete infinite-dimensional problem (10) is solved approximately up to the given target accuracy. Adaptive wavelet methods are meshless methods. An adaptive algorithm usually starts with the zero function and gradually adds new (biggest) elements to approximate (10) and then only a part of the whole stiffness matrix is used. While in non-adaptive settings, we compute with all wavelets up to the given level. In numerical experiments, we use the second approach because it is more appropriate for comparison of the properties of the wavelet stiffness matrices.

As basis functions, wavelets proposed in [7] are used because they have vanishing moments, short support, are well conditioned, and, finally, for constant coefficient differential equations, the arising stiffness matrices are sparse in wavelet coordinates. In the usual case they are only quasi-sparse. These wavelets are based on Hermite cubic splines. Primal scaling functions are defined by

$$\begin{aligned}& \phi_{1}(x) = \textstyle\begin{cases} (x+1)^{2}(1-2x), & -1 \leq x \leq0, \\ (1-x)^{2}(2x+1), & 0 \leq x \leq1, \\ 0 & \mbox{otherwise}, \end{cases}\displaystyle \\& \phi_{2}(x) = \textstyle\begin{cases} (x+1)^{2}x, & -1 \leq x \leq0, \\ (1-x)^{2}x, & 0 \leq x \leq1, \\ 0 & \mbox{otherwise}. \end{cases}\displaystyle \end{aligned}$$

For \(n \geq1\), let \(V_{n}\) be the space of piecewise cubic splines \(v \in C^{1}(0,1) \cap C[0,1]\) for which \(v(0)=v(1)=0\). The dimension of \(V_{n}\) is \(2^{n+1}\) and the set

$$\Phi_{n}:= \bigl\{ \phi_{1}\bigl(2^{n}x-j\bigr): j=1,\ldots,2^{n}-1 \bigr\} \cup \bigl\{ \phi_{2} \bigl(2^{n}x-j\bigr)\vert_{[0,1]}: j=0,\ldots,2^{n} \bigr\} $$

is the basis for \(V_{n}\). Let \(W_{n}\) be the complement of \(V_{n}\) in \(V_{n+1}\) then we have the following decomposition of space \(H^{1}_{0}(0,1)\):

$$H^{1}_{0}(0,1) = V_{1} \oplus W_{1} \oplus W_{2} \oplus W_{3} \cdots. $$

Four types of wavelets, \(\psi_{1}\), \(\psi_{2}\), \(\psi_{3}\), and \(\psi_{4}\), are constructed and the wavelet basis is then formed by translations and dilations of these four types of wavelets. Wavelets from the space \(W_{n+1}\) are orthogonal to the scaling functions from the space \(V_{n}\) for \(n \geq1\). The first two wavelets have supports in \([-1,1]\) and are uniquely determined by the above orthogonality condition and by imposing that the first one is odd and the second one is even. The second two wavelets have supports in \([-2,2]\). And we impose again the orthogonality condition and one of them should be odd and the second one even. This property ensures that both the mass and the stiffness matrix corresponding to the one-dimensional Laplacian have at most three wavelet blocks of nonzero elements in any column and then the number of nonzero elements in any column is bounded independent of matrix size.

Then a basis of the space \(W_{n}\) is defined as follows:

$$\begin{aligned} \Psi_{n} :=& \bigl\{ \psi_{1}\bigl(2^{n}x-2j-1 \bigr), \psi_{2}\bigl(2^{n}x-2j-1\bigr): j=0,\ldots,2^{n-1}-1 \bigr\} \\ &{} \cup \bigl\{ \psi_{3}\bigl(2^{n}x-2j\bigr): j=1,\ldots,2^{n-1}-1 \bigr\} \\ &{} \cup \bigl\{ \psi_{4}\bigl(2^{n}x-2j\bigr) \vert_{[0,1]}: j=0,\ldots,2^{n-1} \bigr\} . \end{aligned}$$

In the following part, we assume that all basis functions are normalized with respect to the \(L_{2}\) norm, such that their norm is equal to one. Now, we look at the spectral properties of different stiffness matrices \(\mathbf{A}_{n}\). We will use the standard wavelet preconditioning with the diagonal preconditioner \(\mathbf{D}_{n}^{S} = \sqrt{ \operatorname{diag}(\mathbf{A}_{n})}\) [6] and then we will compare it with the proposed diagonal preconditioning \(\mathbf{D}_{n} ^{\mathrm{new}} := ( \sqrt{ ( \epsilon2^{2\vert \lambda \vert }+b2^{\vert \lambda \vert }+c) } \delta_{\lambda,\mu} ) \), where the constants ϵ, b, c are constants from (7).

Example 1

We start with the equation \(- \epsilon u'' + u' + u/16=f \) with the Dirichlet boundary conditions \(u(0) = u(1) = 0\) and with small positive parameter ϵ. The corresponding discrete problem is the following:

Find \(u_{n} = \sum_{i=1}^{2^{n+1}} c_{i} v_{i}\), where \(v_{i} \in\Phi_{1} \cup\bigcup_{j=1}^{n} \Psi_{j}\), such that

$$\int_{0}^{1} \epsilon u_{n}' v' + u_{n}' v + u_{n} v/16 \,dx = \int_{0}^{1} f v \,dx \quad \forall v \in\Phi _{1} \cup\bigcup_{j=1}^{n} \Psi_{j} $$

or in matrix form \(\mathbf{A}_{n} \mathbf{c}_{n} = \mathbf{f}_{n}\), where \(\mathbf{A}_{n}\) is the stiffness matrix corresponding to the above equation and \(\mathbf{f}_{n}\) is the corresponding vector of the right-hand side. The obtained results are summarized in Table 1.

Table 1 The condition numbers of the stiffness matrices for \(\pmb{n=9}\)

Example 2

The second equation will be \(- \epsilon u'' + u'=f \) with the Dirichlet boundary conditions \(u(0) = u(1) = 0\) and with small positive parameter ϵ. The corresponding discrete problem is the following:

Find \(u_{n} = \sum_{i=1}^{2^{n+1}} c_{i} v_{i}\), where \(v_{i} \in\Phi_{1} \cup\bigcup_{j=1}^{n} \Psi_{j}\), such that

$$\int_{0}^{1} \epsilon u_{n}' v' + u_{n}' v \,dx = \int _{0}^{1} f v \,dx \quad \forall v \in\Phi_{1} \cup\bigcup_{j=1} ^{n} \Psi_{j} $$

or in matrix form \(\mathbf{A}_{n} \mathbf{c}_{n} = \mathbf{f}_{n}\), where \(\mathbf{A}_{n}\) is the stiffness matrix corresponding to the above equation and \(\mathbf{f}_{n}\) is the corresponding vector of the right-hand side. The obtained results are summarized in Table 2.

Table 2 The condition numbers of the stiffness matrices for \(\pmb{n=9}\)

Example 3

The third equation will be \(- \epsilon u'' + u' + x^{2} u = f \) with the Dirichlet boundary conditions \(u(0) = u(1) = 0\) and with small positive parameter ϵ. The corresponding discrete problem is the following:

Find \(u_{n} = \sum_{i=1}^{2^{n+1}} c_{i} v_{i}\), where \(v_{i} \in\Phi_{1} \cup\bigcup_{j=1}^{n} \Psi_{j}\), such that

$$\int_{0}^{1} \epsilon u_{n}' v' + u_{n}' v + x^{2} u _{n} v \,dx = \int_{0}^{1} f v \,dx \quad \forall v \in\Phi _{1} \cup\bigcup_{j=1}^{n} \Psi_{j} $$

or in matrix form \(\mathbf{A}_{n} \mathbf{c}_{n} = \mathbf{f}_{n}\), where \(\mathbf{A}_{n}\) is the stiffness matrix corresponding to the above equation and \(\mathbf{f}_{n}\) is the corresponding vector of the right-hand side. In this case of the differential equation with variable coefficients, we take \(c=1\) because \(x^{2} \leq1\ \forall x \in[0,1]\). The obtained results are summarized in Table 3.

Table 3 The condition numbers of the stiffness matrices for \(\pmb{n=9}\)

5 Conclusion

We have proposed a new diagonal preconditioning for singularly perturbed problems discretized by wavelets. Numerical experiments show that the proposed preconditioning leads to significantly smaller condition numbers of stiffness matrices with a dominating nonsymmetric part in comparison with a standard wavelet diagonal preconditioning. Furthermore, we proved that the condition numbers of diagonally preconditioned stiffness matrices are bounded independent of the matrix size.