Skip to main content
Erschienen in: Journal of Scientific Computing 1/2021

Open Access 01.01.2021

Preconditioning Techniques for the Numerical Solution of Flow in Fractured Porous Media

verfasst von: Paola F. Antonietti, Jacopo De Ponti, Luca Formaggia, Anna Scotti

Erschienen in: Journal of Scientific Computing | Ausgabe 1/2021

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

This work deals with the efficient iterative solution of the system of equations stemming from mimetic finite difference discretization of a hybrid-dimensional mixed Darcy problem modeling flow in fractured porous media. We investigate the spectral properties of a mixed discrete formulation based on mimetic finite differences for flow in the bulk matrix and finite volumes for the fractures, and present an approximation of the factors in a set of approximate block factorization preconditioners that accelerates convergence of iterative solvers applied to the resulting discrete system. Numerical tests on significant three-dimensional cases have assessed the properties of the proposed preconditioners.
Hinweise
This work was partially funded by INdAM—GNCS. P.A. also acknowledges the financial support of PRIN research Grant No. 201744KLJL funded by MIUR.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

1 Introduction

The simulation of underground flows in fractured porous media is of great interest for a large number of geophysical applications, such as oil production, CO\(_2\) storage, and groundwater contamination and remediation. It is well-known that the presence of fractures and/or faults strongly influence subsurface flows. The major challenges from the numerical viewpoint are represented by (i) geometric complexity, and (ii) strong heterogeneity of materials at different space scales. While micro-fractures can be accounted for by means of homogenization/upscaling techniques, large fractures and faults play a more complex role, acting as paths or barriers for the flow, and therefore they have to be included in the model explicitly. Fractures are characterized by a small aperture compared to their typical length and the size of the domain, thus a widely employed approach consists in modeling them as \((d-1)\)-dimensional interfaces immersed in a d-dimensional porous medium (indicated in the following as the bulk). A reduced \((d-1)\)-dimensional problem is then solved on the surfaces representing the fractures, with physically-consistent coupling conditions accounting for the exchange of fluid between fractures and porous medium.
From the computational viewpoint, this dimensionally-hybrid setting avoids the need for extremely fine grids to resolve the fracture’s scales. Assuming that the fractures are filled by a porous medium with its own porosity and permeability, Darcy’s law can be used for modeling both d-dimensional bulk and the \((d-1)\)-dimensional fracture flow problems. The first dimensionally-hybrid model for flow in fractured porous media has been proposed in [4] in the case of a very permeable fracture. Later on, in [51] it has been generalized to fractures featuring low permeability. These models were derived based on the assumption that there is one single fracture cutting the bulk domain in exactly two non-overlapping subdomains; the extension to the case of a fully immersed fracture has been analyzed in [6]. This dimensionally-hybrid model has also been extended to the case of a two-phase flow in [43, 47]. One of the main issues concerning discretization of the flow in heterogeneous media is mesh generation. Indeed, the grid has to be conforming with the fractures, but whenever the number of fractures is very large such a constraint can result in a unaffordable computational burden, particularly whenever fractures feature small intersection angles, or they are nearly coincident. Indeed, in such cases, the conformity constraint can lead either to very fine grids, or to low-quality elements (small angles, high aspect ratios). To overcome this difficulty a possible strategy consists in the use of numerical schemes that can support arbitrarily shaped polygonal and polyhedral meshes, and that guarantee good approximation properties also in presence of low-quality mesh elements.
Indeed, in recent years, the exploitation of computational meshes composed of polygonal and polyhedral elements has become very popular in the field of numerical methods for partial differential equations because the flexibility they offer allows for the design of efficient computational grids when the underlying problem is characterized by a strong complexity of the physical domain. Several conforming and non-conforming numerical discretization methods which admit polygonal/polyhedral meshes have been proposed in recent literature; here, we mention, for example, Mimetic Finite Differences (MFD) [12, 18, 28, 30], high-order polyhedral Discontinuous Galerkin (PolyDG) methods, [10, 11, 13, 32], Virtual Element methods (VEM), [15, 16], and the Hybrid High-Order (HHO) method, [33, 36].
In this paper, continuing the work initiated in [12] we focus on Mimetic Finite Differences, which in the last years have been successfully applied to a wide range of problems, as for example diffusion-type problems [7, 17, 28, 29], electromagnetism [27], plate equations [19], non-linear and control problems [8, 9], and to model two-phase flows [48]. We refer to [14, 18] for a comprehensive review on MFD schemes. In the context of numerical modeling of flows in fractured porous media, MFD have been successfully used in [3, 12, 42]. Several other numerical techniques have been proposed in recent years for fractured media flow, reflecting the importance of the subject for various applications. With no claim of completeness, in addition to the already cited literature we mention here some recent works by several research groups [2, 2426, 56].
We will consider the formulation proposed in [12], where a mixed MFD approximation for the coupled Darcy’s model is analyzed for a fully immersed fracture network. The linear system of equations stemming from the discretization has the form of a generalized saddle-point system, sometimes referred to as a double saddle-point problem [5], reading
$$\begin{aligned} \begin{bmatrix} \textsf {M}_c &{} \textsf {B}^T &{} \textsf {C}^{T} \\ \textsf {B}&{} 0 &{} 0 \\ \textsf {C}&{} 0 &{} -\textsf {T}\end{bmatrix} \begin{bmatrix} \varvec{u}\\ \varvec{p}\\ \varvec{p}_\varGamma \end{bmatrix} = \begin{bmatrix} {\mathbf {g}} \\ {\mathbf {h}} \\ {\mathbf {h}}_{\varGamma } \end{bmatrix}, \end{aligned}$$
for suitable matrices that will be defined in Sect. 1, and where \(\varvec{u}\), \(\varvec{p}\) and \(\varvec{p}_\varGamma \) contain the approximate solution for the bulk velocity, bulk pressure, and fracture pressure, respectively, while the vectors \({\mathbf {g}}\), \({\mathbf {h}}\) and \({\mathbf {h}}_\varGamma \) contain the terms arising from the forcing and boundary data.
In this paper we analyze the spectral properties of the system of equations stemming from the considered MFD-FV discretization. More precisely, we prove that, as expected, the condition number of the double saddle-point system depends on the contrast of the permeability in the bulk and in the fractures, and, asymptotically, it grows as \(O(h^{-3})\), h being the characteristic mesh size. To reach this result we extended the work of [50] and we make use of a conjecture, so far verified only numerically.
We then address the problem of efficiently solving the above linear system of equations by devising suitable preconditioning algorithms to accelerate the convergence of iterative schemes. We have chosen classical approximate block factorization (ABF) preconditioners because they can be readily implemented in existing codes since they make use of quantities directly available. We propose a technique to construct the approximation of the factors, which, despite its simplicity, has proved to be rather effective.
In the context of preconditioners for fractured porous media simulations, we mention the recent work [31], where a set of norm-equivalent preconditioners [49] are presented, though for a different approximation scheme than the one adopted in this work, some of which show some analogies to the ones proposed here. In the context of saddle-point problems arising in geomechanics, we mention also block preconditioners based on the use of approximate inverses, like the ones adopted in [22]. However, in this work we decided to focus on simpler factorized block approximations straightforwardly implementable in an existing code for flow in fractured porous media.
The paper is structured as follows. In Sect. 1, we introduce the hybrid-dimensional mathematical model and its numerical approximation based on the approach of [12]. In Sect. 2 we discuss the spectral properties of the resulting system matrix. In Sect. 3, we then present some techniques for preconditioning the linear system of equations. The performance of the proposed preconditioners is then assessed in Sect. 4 on three-dimensional test cases. Finally, in Sect. 5 we draw some conclusions.

2 Mathematical Model and Its Numerical Approximation

The mathematical model we consider in this work follows [42] and [12]. We will recall it briefly, for the sake of completeness. Let \(\varOmega \subset {\mathbb {R}}^3\) be an open, convex polyhedral domain representing a porous medium saturated by a fluid. The medium is fractured, and the fractures are modeled as a collection of planar surfaces. More precisely, with \(\varGamma \) we denote the fracture network given by the union of \(M_\varGamma \) fractures \(\gamma _k\), for \(k=1,\ldots ,M_\varGamma \), where \(\gamma _k\) is a 2-dimensional planar open domain embedded in \({\mathbb {R}}^3\), i.e. \(\varGamma =\bigcup _{k=1}^{M_\varGamma }\gamma _k\).
We indicate with \(i_{ij}=\partial \gamma _i\cap \partial \gamma _j\) the intersection between fracture \(\gamma _i\) and fracture \(\gamma _j\), possibly being the empty set, and with \({\mathcal {I}}\) the set of all intersections \(i_{ij}\) with non-zero 1-measure. Finally, \(\varOmega _\varGamma =\varOmega \setminus {\overline{\varGamma }}\) denotes the part of the domain occupied by the rock matrix, which in the following we will indicate as bulk.
Flow in the bulk and in the fractures is assumed to be governed by Darcy’s law. We are thus assuming that fractures are filled by a porous medium with different porosity and permeability with respect to the surrounding porous matrix. We denote with \(\textsf {K}\) a symmetric positive definite permeability tensor, which we assume to be piecewise constant in \(\varOmega _\varGamma \), and with f a possible source term. We assume also that the fluid and the medium are incompressible and we neglect gravitational effects. Note that, since the fluid viscosity \(\mu \) is considered constant, we have defined \(\textsf {K}=\mu ^{-1} {\mathbb {K}}\), with \({\mathbb {K}}\) being the actual material permeability tensor.
As for the fractures, we use the reduced model originally developed in [51] for a single fracture, extended to fracture networks as explained in [42]. In particular, we assume that on each \(\gamma _k\) we can identify a normal vector \({\mathbf {n}}_k\) and that we can decompose the permeability \({\hat{\textsf {K}}}_k\) of the material in the fracture into a normal component \({\hat{K}}_{n_k}\) and a symmetric semi-definite tensor \({\hat{\textsf {K}}}_{\tau _k}\) so that \({\hat{\textsf {K}}}_k={\hat{K}}_{n_k}{\mathbf {n}}_k\otimes {\mathbf {n}}_k + {\hat{\textsf {K}}}_{\tau _k}\), with \({\hat{K}}_{n_k}>0\) and \({\mathbf {v}}^T{\hat{\textsf {K}}}_{\tau _k}{\mathbf {v}}>0\) if \({\mathbf {v}}\times {\mathbf {n}}_k\ne {\mathbf {0}}\), while \({\hat{\textsf {K}}}_{\tau _k}{\mathbf {n}}_k={\mathbf {0}}\). Following [51], we may define on each fracture the fracture aperture \(l_k>0\) (assumed constant in each \(\gamma _k\)), effective tangential and normal permeability \({\textsf {K}}_{\tau _k}=l_{_k}{\hat{\textsf {K}}}_{\tau _k}\), and \({K}_{n_k}=l^{-1}_{_k}{\hat{K}}_{n_k}\), as well as the normal effective resistivity \(\eta _k={K}_{n_k}^{-1}=l_k {\hat{K}}_{n_k}^{-1}\). For all functions defined on each \(\gamma _k\) we will use normally the subscript \(\varGamma \) to denote their direct product on the whole \(\varGamma \),
$$\begin{aligned} \eta _\varGamma =\bigotimes _{\gamma _k\in \varGamma }\eta _k,\ \textsf {K}_\varGamma =\bigotimes _{\gamma _k\in \varGamma }{\textsf {K}}_{\tau _k},\ \text {and } \textsf {K}_{n,\varGamma }=\bigotimes _{\gamma _k\in \varGamma }{\textsf {K}}_{n_k}. \end{aligned}$$
Following [12], we employ a mixed formulation in the bulk, where the unknowns are the Darcy velocity \({\mathbf {u}}\) and pressure p, while in the fracture network we use a primal formulation where the only unknown is the pressure, indicated by \(p_\varGamma :\varGamma \rightarrow {\mathbb {R}}\).
To describe the equations and the coupling terms we need to define the jump and average operator across the fractures. Let \(v :\varOmega _{\varGamma }\rightarrow {\mathbb {R}}\) be a regular function so that on each \(\gamma _k\in \varGamma \) we can define \(v^{\pm }({\mathbf {x}})=\lim _{h\rightarrow 0^+}v({\mathbf {x}}\pm h{\mathbf {n}}_k)\), for \({\mathbf {x}}\in \gamma _k\). On \(\varGamma \), we set \(\llbracket v\rrbracket = v^+ - v^-\) and \(\{v\}=\dfrac{1}{2}(v^+ + v^-)\). Note that we can identify a positive and negative side, \(\gamma _k^+\) \(\gamma _k^-\), of each \(\gamma _k\), so that \(v^+\) and \(v^-\) are in fact the traces of v on \(\gamma _k^+\) and \(\gamma _k^-\), respectively.
We partition \(\partial \varOmega _\varGamma \) into \(\partial \varOmega _N\) and \(\partial \varOmega _D\), where we impose conditions on the normal fluid velocity and pressure, respectively. We assume that \(\vert \partial \varOmega _D\vert >0\), where \(\vert \partial \varOmega _D\vert \) here indicates the 2-measure of \(\varOmega _D\). As for the fracture network, we can identify three parts of \(\partial {\varGamma }\): \(\partial \varGamma _N\) and \(\partial \varGamma _D\) are the portions of \(\partial \varGamma \cap \partial \varOmega \) where we impose the flux or the pressure, respectively, while \(\partial \varGamma _{0}\) is the part of the boundary of the fracture network fully immersed in the bulk. Here, we follow the usual practice of imposing zero flux.
We can now write the differential problems in the bulk and in the fracture networks, complemented by the coupling conditions which will be detailed later on:
$$\begin{aligned}&\begin{array}{ll} {\left\{ \begin{array}{ll} \nabla p+\textsf {K}^{-1}\mathbf{u } = 0&{} \text { in} \ \varOmega _{\varGamma } \\ \nabla \cdot \mathbf{u } = f&{} \text { in} \ \varOmega _{\varGamma } \\ p = g \qquad &{} \text { on} \ \partial \varOmega _D \\ \mathbf{u }\cdot \mathbf{n } = \phi &{} \text { on} \ \partial \varOmega _N \end{array}\right. } \end{array} \end{aligned}$$
(1a)
$$\begin{aligned}&\begin{array}{ll} {\left\{ \begin{array}{ll} -\nabla _{\varGamma }\cdot (\textsf {K}_{\varGamma }\nabla _{\varGamma }p_{\varGamma })-\llbracket \mathbf{u }\cdot \mathbf{n }_{\varGamma } \rrbracket =l_{\varGamma }f_{\varGamma }&{} \text { in} \ \varGamma \\ p_{\varGamma } = g_{\varGamma }&{} \text { on} \ \partial \varGamma _D \\ -\textsf {K}_{\varGamma } \nabla _{\varGamma } p_{\varGamma }\cdot {\varvec{\tau }}_{\varGamma } = \phi _{\varGamma }&{} \text { on} \ \partial \varGamma _N \\ -\textsf {K}_{\varGamma } \nabla _{\varGamma } p_{\varGamma }\cdot {\varvec{\tau }}_{\varGamma } = 0 &{}\text { on} \ \partial \varGamma _{0}. \end{array}\right. } \end{array} \end{aligned}$$
(1b)
Here, \(\nabla _{\varGamma }\cdot \) and \(\nabla _{\varGamma }\) denote the tangential divergence and gradient operators, while \({\varvec{\tau }}_{\varGamma }\) is the unitary normal to \(\partial \varGamma \) parallel to the fracture tangent plane.
We now provide the interface conditions that couple the model for flow in the bulk, cf. (1a), with that in the fractures, cf. (1b). For a \(\xi _0\in (0,1/4]\), they are given by
$$\begin{aligned} {\left\{ \begin{array}{ll} \xi _0\eta _{\varGamma } \llbracket \mathbf{u }\cdot \mathbf{n }_{\varGamma } \rrbracket =\{ p \}-p_{\varGamma } \qquad &{} \text {on} \ \varGamma \\ \eta _{\varGamma }\{{\mathbf {u}}\cdot \mathbf{n }_{\varGamma }\}=\llbracket p \rrbracket \qquad &{} \text {on} \ \varGamma . \end{array}\right. } \end{aligned}$$
(2)
The derivation can be found in the cited references. The closure parameter \(\xi _0>0\) depends on the assumption made on the variation of pressure across the fracture aperture when deriving the reduced model.1 For what concerns the conditions at the intersection between fractures, several solutions are possible. For instance, in [54] and in [41] special conditions were studied to account for possible strong variations of permeability between fractures (however limited to the two-dimensional case). Here, for the sake of simplicity, we assume continuity of pressure and flux balance at each intersection, a common choice for discrete fracture network simulations.

2.1 Weak Formulation

To define the functional setting of the problem we first note that for all \(p\in [1,\infty ]\), an element of \(L^p(\varOmega _\varGamma )\) may be identified with an element of \(L^p(\varOmega )\), since \(\varGamma \) is of zero measure. Furthermore, we state some regularity assumptions on the data. To this purpose we indicate with \(^*\) and \(_*\) positive upper and lower bounds of the corresponding quantity. We then require \({K}_*\le \varvec{\zeta }^{\textsf {T}}\textsf {K}\varvec{\zeta }\le K^*\) for all \(\varvec{\zeta }\in {\mathbb {R}}^d\setminus \{{\mathbf {0}}\}\) and a.e. in \(\varOmega _\varGamma \), while \(\eta _*\le \eta _\varGamma \le \eta ^*\), \(K_{\varGamma *}\le \varvec{\zeta }^T\textsf {K}_\varGamma \varvec{\zeta }\le K^*_{\varGamma }\), for all \(\varvec{\zeta }\in {\mathbb {R}}^d\) with \(\varvec{\zeta }\cdot {\mathbf {n}}_\varGamma \ne 0\) and a.e. on \(\varGamma \).
We introduce the following functional spaces for pressure and Darcy velocity in the bulk,
$$\begin{aligned} Q&= L^2(\varOmega _{\varGamma }),&W&= \{\mathbf{v }\in H_\mathrm {div}(\varOmega _{\varGamma }): \llbracket \mathbf{v }\cdot \mathbf{n }_{\varGamma }\rrbracket \in L^2(\varGamma ), \ \{\mathbf{v }\cdot \mathbf{n }_{\varGamma }\}\in L^2(\varGamma )\}, \end{aligned}$$
equipped with the norms \(||q||_Q =||q||_{L^2(\varOmega _{\varGamma })}\), and \(||\mathbf{v }||_W^2 =||\mathrm {div}\ \mathbf{v }||_{L^2(\varOmega _{\varGamma })}^2+||\mathbf{v }||^2_{L^2(\varOmega _{\varGamma })}+ ||\{\mathbf{v }\cdot \mathbf{n }_{\varGamma }\}||_{L^2(\varGamma )}^2+||\llbracket \mathbf{v }\cdot \mathbf{n }_{\varGamma }\rrbracket ||_{L^2(\varGamma )}^2\). They are Hilbert spaces with scalar products inducing the stated norms.
To account for boundary conditions, we define \( W_{0,\partial \varOmega _N}=\{{\mathbf {v}}\in W:\ {\mathbf {v}}\cdot {\mathbf {n}}=0 \text { on } \partial \varOmega _N\}, \) where \({\mathbf {n}}\) is the unit outward normal to \(\varOmega \) and \({\mathbf {v}}\cdot {\mathbf {n}}\) is intended in the sense of traces of elements of \(H_{\mathrm {div}}(\varOmega _\varGamma )\). For the forcing term and the boundary data we take \(f\in L^2(\varOmega _{\varGamma })\), \(\phi \in L^2(\partial \varOmega _D)\) and g regular enough such that there exists an element of \(H_1(\varOmega _{\varGamma })\) whose trace on \(\partial \varOmega _N\) coincides with g.
As for the model of the fracture, on each \(\gamma _k\) we define \(Z_k=\{q:\ q\in L^2(\gamma _k),\ \nabla _{\tau }q\in L^2(\gamma _k)\}\), and
$$\begin{aligned} Z_\varGamma =\{q_\varGamma \in \bigotimes _{\gamma _k\in \varGamma } Z_k:\ q_\varGamma \vert _{\gamma _k}=q_\varGamma \vert _{\gamma _j} \text { on } i_{kj},\ \forall i_{kj}\in {\mathcal {I}}\}, \end{aligned}$$
while \( Z_{0,\varGamma _D}=\{q_\varGamma \in Z_\varGamma : \ q_\varGamma =0 \text { on } \varGamma _D\}. \) We take \(\phi _\varGamma \in L^2(\partial \varGamma _N)\) and \(g_\varGamma \) regular enough to be a trace on \(\varGamma _D\) of functions in \(Z_\varGamma \).
We define the following bilinear forms: for \({\mathbf {u}}\), \({\mathbf {v}}\in W\), \(q\in Q\) and \(q_\varGamma , z_\varGamma \in Z_\varGamma \),
$$\begin{aligned} a_{\xi }({\mathbf {u}},{\mathbf {v}})= & {} \int _{\varOmega _{\varGamma }} (\textsf {K}^{-1}{\mathbf {u}})\cdot {\mathbf {v}} + \int _{\varGamma } \eta _{\varGamma }\{{\mathbf {u}}\cdot {\mathbf {n}}_{\varGamma }\}\{{\mathbf {v}}\cdot {\mathbf {n}}_{\varGamma }\} + \xi _0\int _{\varGamma } \eta _{\varGamma }\llbracket {\mathbf {u}}\cdot {\mathbf {n}}_{\varGamma }\rrbracket \llbracket {\mathbf {v}}\cdot {\mathbf {n}}_{\varGamma }\rrbracket , \\ b({\mathbf {v}},q)= & {} -\int _{\varOmega _{\varGamma }} q\, \mathrm {div}{\mathbf {v}},\quad c({\mathbf {v}},q_\varGamma )=\int _\varGamma q_\varGamma \llbracket {\mathbf {v}}\cdot {\mathbf {n}}_\varGamma \rrbracket ,\\ d(q_\varGamma ,z_\varGamma )= & {} \int _{\varGamma }(\textsf {K}_{\varGamma }\nabla q_\varGamma )\cdot \nabla z_\varGamma , \end{aligned}$$
and, to write the weak formulation of the problem in a more compact form, we define \({\mathbf {Q}}=Q\times Z\), \({\mathbf {Q}}_0=Q\times Z_{0,\varGamma _D}\) and the form \(B:W\times {\mathbf {Q}}\rightarrow {\mathbb {R}}:\ B({\mathbf {v}},(q,q_\varGamma ))=b({\mathbf {v}},q)+c({\mathbf {v}},q_\varGamma )\). We introduce also \({\mathbf {r}}_\phi \in W\) and \(r_{\phi _\varGamma }\in Z_\varGamma \) that represent the lifting of the boundary data on \(\partial \varOmega _N\) and \(\partial \varGamma _D\) respectively. Following the steps illustrated in [12, 42], we can write the following weak formulation of our problem
Problem 1
Find \({\mathbf {u}}\in W_{0,\partial \varOmega _N}\), \((p,p_\varGamma )\in {\mathbf {Q}}_0\) such that
$$\begin{aligned} {\left\{ \begin{array}{ll} a_{\xi }({\mathbf {u}},{\mathbf {v}})+B\big ({\mathbf {v}},(p,p_{\varGamma })\big )=F({\mathbf {v}})&{}\ \forall \ {\mathbf {v}}\in W_{0,\partial \varOmega _N}\\ B\big ({\mathbf {u}},(q,q_\varGamma )\big ) {-d(p_\varGamma ,q_\varGamma )}=F_\varGamma \big ( (q,q_\varGamma )\big )&{}\ \forall (q,q_\varGamma )\in {\mathbf {Q}}_0, \end{array}\right. } \end{aligned}$$
(3)
where
$$\begin{aligned} F({\mathbf {v}})= & {} -\displaystyle {\int _{\varGamma _D}} g{\mathbf {v}}\cdot {\mathbf {n}}-a_{\xi }({\mathbf {r}}_\phi ,{\mathbf {v}}),\nonumber \\ F_\varGamma \big ((q,q_{\varGamma })\big )= & {} -\displaystyle \int _\varGamma f_\varGamma q_\varGamma -\displaystyle \int _{\partial \varGamma _N}\phi _{\varGamma }q_\varGamma +d(r_{\phi _\varGamma },q_\varGamma )-\displaystyle \int _{\varOmega _\varGamma } fq. \end{aligned}$$
(4)
Theorem 1
Problem 1 is well posed.
Proof
Well posedness may be proven by exploiting the results in [42]. Since \(|\partial \varOmega _D|>0\), in the cited work it is shown that \(a_{\xi }\) is continuous and coercive in \(W_{0,\partial \varOmega _N}\), and B is continuous and satisfies an inf-sup condition. The continuity of the functionals at the right hand side can be assessed by standard techniques, while d is clearly a semi-positive definite form. Well posedness then follows, see also [23]. \(\square \)

2.2 Numerical Scheme

Let \(\varOmega _h\) be a partition of \(\varOmega _\varGamma \) into non-overlapping polyhedra (bulk cells) \(\textsf {P}\), conforming to the fracture \(\varGamma \). We define the mesh spacing as \(h=\max _{\textsf {P}\in \varOmega _h}h_{\textsf {P}}\), where \(h_{\textsf {P}}\) is the diameter of cell \(\textsf {P}\). Let \(\mathscr {F}_h\) be the set of facets of the cells in \(\varOmega _h\), i.e. any \(\textsf {f}\in \mathscr {F}_h\) is a facet of a \(\textsf {P}\in \varOmega _h\). To be able to represent jumps and average values, the facets laying on \(\varGamma \) will be doubled. More precisely, \({\mathscr {F}}^\varGamma _h=\varGamma \cap \mathscr {F}_h\) is formed by pairs of geometrically identical facets \((\textsf {f}^+,\textsf {f}^-)\) that cover \(\varGamma \). This also implies that \(\varOmega _h\) induces a natural partition of \(\varGamma \), that we indicate by \(\varGamma _h\), into planar facets \({\hat{\textsf {f}}}\), called fracture cells, and for any \({\hat{\textsf {f}}}\in \varGamma _h\) there is a couple of bulk facets \(\textsf {f}^+({\hat{\textsf {f}}}),f^-({\hat{\textsf {f}}})\in \mathscr {F}_h\) that coincide geometrically with \({\hat{\textsf {f}}}\). The set \(\mathscr {F}_h\) may then be partitioned as
$$\begin{aligned} \mathscr {F}_h=\mathscr {F}_h^0\cup {\mathscr {F}}_{h,+}^{\varGamma }\cup {\mathscr {F}}_{h,-}^{\varGamma }\cup \mathscr {F}_h^{\varGamma _D}\cup \mathscr {F}_h^{\varGamma _N}=\mathscr {F}_h^0\cup \mathscr {F}_h^{\varGamma }\cup \mathscr {F}_h^{\partial \varOmega }, \end{aligned}$$
where \(\mathscr {F}_h^{\partial \varOmega }=\mathscr {F}_h^{\partial \varOmega _D}\cup \mathscr {F}_h^{\partial \varOmega _N}\) collects the boundary facets, i.e. Dirichlet and Neumann facets, \(\mathscr {F}_h^0\) collects the internal facets and \(\mathscr {F}_h^{\varGamma }={\mathscr {F}}_{h,+}^{\varGamma }\cup {\mathscr {F}}_{h,-}^{\varGamma }\) is the union of the decoupled fracture facets. We denote by \(\mathscr {F}_h(\textsf {P})\subset \mathscr {F}_h\) the facets of a \(\textsf {P}\in \varOmega _h\) and \(N_{\textsf {P}}^f={\text {card}}(\mathscr {F}_h(\textsf {P}))\). For the cells in \(\varOmega _h\) we make the following assumptions [18].
Assumption 1
There exist two positive real numbers \(N^s\) and \(\rho _s\) independent of h such that \(\varOmega _h\) admits a conforming sub-partition \(\textsf {T}_h\) made of tetrahedra such that:
  • each polyhedron \(\textsf {P}\) is star-shaped with respect to a point \(\overline{{\mathbf {x}}}_{\textsf {P}}\in \textsf {P}\) and each facet \(\textsf {f}\) is star-shaped with respect to a point \(\overline{{\mathbf {x}}}_{\textsf {f}}\in \textsf {f}\).
  • every polyhedron \(\textsf {P}\in \varOmega _h\) admits a decomposition \(\left. \textsf {T}_h \right| _{\textsf {P}}\) of at most \(N^s\) tetrahedra. Moreover, the sub-partition \(\textsf {T}_h\) is simple, i.e., it is built in the following way. Firstly, each facet \(\textsf {f}\) is subdivided into triangles by connecting each vertex of \(\textsf {f}\) with \(\overline{{\mathbf {x}}}_{\textsf {f}}\). Secondly, each element \(\textsf {P}\) is decomposed into tetrahedra by connecting each vertex of \(\textsf {P}\) and each point \(\overline{{\mathbf {x}}}_{\textsf {f}}\), with \(\textsf {f}\in \mathscr {F}_h(\textsf {P})\), to the point \(\overline{{\mathbf {x}}}_{\textsf {P}}\);
  • every tetrahedron \(\textsf {T}\in \textsf {T}_h\) is regular, i.e. the ratio between the radius \(r_{\textsf {T}}\) of the inscribed sphere and the diameter \(h_{\textsf {T}}\) is bounded from below by \(\rho _s\), i.e.
    $$\begin{aligned} \dfrac{r_{\,\textsf {T}}}{h_{\textsf {T}}}\ge \rho _s>0. \end{aligned}$$
These assumptions impose some limitations on the shape of the admissible elements, which however are not too restrictive. Indeed, the grid \(\varOmega _h\) may contain rather generally shaped elements, like non-convex cells. For the forthcoming analysis, we make the following assumption.
Assumption 2
The meshes \(\varOmega _h\) and \(\varGamma _h\) are aligned with the discontinuities of the piecewise constant permeability tensors \(\textsf {K}\) and \(\textsf {K}_{\varGamma }\), respectively. Moreover, \(\varGamma _h\) satisfies a \(\textsf {K}\)-orthogonality property in the sense of [1], i.e. there exists a set of control points \(\left\{ x_\textsf {f}\right\} _{\textsf {f}\in \mathscr {F}_h}\) such that for any \(\textsf {f}\in \mathscr {F}_h\), \(x_\textsf {f}\in \mathring{\textsf {f}}\) and, for any pair of neighboring elements facets \(\textsf {f}, \textsf {f}^{\prime }\in \mathscr {F}_h\) sharing an edge \(\sigma \) of normal \({\mathbf {n}}\), it holds that \(\textsf {K}{\mathbf {n}}\) is parallel to the segment joining the control points \({\mathbf {x}}_\textsf {f}\) and \({\mathbf {x}}_{\textsf {f}^{\prime }}\).2
We refer to the recent paper [20] for details on effective strategies for mesh generation and implementation aspects in the context of Virtual Element approximations of coupled multi-dimensional flow problems.
We denote by \(|\textsf {P}|\) and \(|\textsf {f}|\) the volume of the polyhedron \(\textsf {P}\) and the area of the facet \(\textsf {f}\), respectively. For every facet \(\textsf {f}\in \mathscr {F}_h\) we consider a unit normal vector \({\mathbf {n}}_{\textsf {f}}\), and in particular, for every couple of fracture facets \(\textsf {f}^+,\textsf {f}^-\in \mathscr {F}_h^{\varGamma }\), we set \({\mathbf {n}}_{\textsf {f}^+}={\mathbf {n}}_{\textsf {f}^-}={\mathbf {n}}_{\varGamma }\), while we denote by \({\mathbf {n}}_{\textsf {P},\textsf {f}}\) the unit normal vector on a facet \(\textsf {f}\in \mathscr {F}_h(\textsf {P})\) of cell \(\textsf {P}\), and we set \(\alpha _{\textsf {P},\textsf {f}}={\mathbf {n}}_{\textsf {f}}\cdot {\mathbf {n}}_{\textsf {P},\textsf {f}}\), while we indicate with \({\mathbf {x}}_{\textsf {P}}\) and \({\mathbf {x}}_{\textsf {f}}\) the barycentres of \(\textsf {P}\) and \(\textsf {f}\), respectively.
To simplify the set-up of the algebraic system stemming from the discretization of (1), we restrict ourselves to the case \(\partial \varOmega _N=\emptyset \). The more general case may be treated by standard techniques that do not alter the properties of the numerical scheme (as long as \(\vert \partial \varOmega _D\vert >0\)).
We approximate the discrete pressure fields with piecewise constant values on each cell, and the bulk velocity with constant normal values on each facet. Let \(N_\textsf {P}={\text {card}}(\varOmega _h)\), \(N_\varGamma ={\text {card}}(\varGamma _h)\), and \(N_\textsf {f}={\text {card}}(\mathscr {F}_h)\). We set \(Q^\varOmega _h={\mathbb {R}}^{N_\textsf {P}}\), \(Q^\varGamma _h={\mathbb {R}}^{N_\varGamma }\) and \(W_h={\mathbb {R}}^{N_\textsf {f}}\) and we denote with \({\mathbf {p}}_h\in Q^\varOmega _h\), and \({\mathbf {p}}_{\varGamma ,h}\in Q^\varGamma _h\) the vectors of discrete pressure in the bulk and in the fracture network, respectively. We will indicate the global space of discrete pressures as \(Q_h=Q^\varOmega _h\times Q^\varGamma _h\). With \(p_{\textsf {P}}\), respectively \(p_{{\,\hat{\!\textsf {f}}}}\), we indicate the approximation of the pressure on bulk cell \(\textsf {P}\) and on the fracture network facet \({\hat{\textsf {f}}}\), that is
$$\begin{aligned} p_{\textsf {P}}\simeq \frac{1}{\vert \textsf {P}\vert }\int _{\textsf {P}}p,\quad \text {and }\quad p_{\,{\hat{\textsf {f}}}}\simeq \frac{1}{\vert {\hat{\textsf {f}}}\vert }\int _{{\hat{\textsf {f}}}}p_\varGamma . \end{aligned}$$
(5)
As standard in MFD methods the degrees of freedom for velocity in the bulk approximate with a constant value the normal velocity across each cell facet. Therefore, if \({\mathbf {u}}_h\in W_h\) is the vector of velocity degrees of freedom, we indicate with
$$\begin{aligned} u_{\textsf {f}}\simeq \frac{1}{\vert \textsf {f}\vert }\int _{\textsf {f}}{\mathbf {u}}\cdot {\mathbf {n}}_{\textsf {f}} \end{aligned}$$
(6)
its component of \({\mathbf {u}}_{h}\) associated to facet \(\textsf {f}\).
In the following, whenever convenient, we will use the notation \(\textsf {P}_i\), \({\hat{f}}_i\) and \(\textsf {f}_i\) to indicate the ith bulk cell, fracture cell and bulk facet in \(Q_h^\varOmega \), \(Q^\varGamma _h\) and \(W_h\), respectively.
The derivation of the mimetic discretization is based on the definition of inner products on \(Q^\varOmega _h\) and \(W_h\). More precisely, we have
$$\begin{aligned}{}[{\mathbf {q}}_h,{\mathbf {r}}_h]_{Q^\varOmega _h}=\sum _{\textsf {P}\in \varOmega _h}\vert \textsf {P}\vert q_{\textsf {P}}r_{\textsf {P}}, \quad \forall {\mathbf {q}}_h,{\mathbf {r}}_h\in Q^\varOmega _h, \end{aligned}$$
(7)
and, for \({\mathbf {v}}_h\) and \({\mathbf {w}}_h\) in \(W_h\),
$$\begin{aligned}{}[{\mathbf {v}}_h,{\mathbf {w}}_h]_{W_h}= & {} {\mathbf {w}}_h^T \textsf {M}_c {\mathbf {v}}_h={\mathbf {w}}_h^T \textsf {M}{\mathbf {v}}_h+{\mathbf {w}}_h^T \textsf {E}{\mathbf {v}}_h \nonumber \\= & {} \sum _{\textsf {P}\in \varOmega _h}{\mathbf {w}}_{\textsf {P}}\textsf {M}_{\textsf {P}}{\mathbf {v}}_{\textsf {P}}\nonumber \\&+ \sum _{{\hat{f}}\in \varGamma _h}\eta _{{\hat{\textsf {f}}}}\vert {\hat{\textsf {f}}}\vert \left( \{{\mathbf {w}}_{h}\cdot {\mathbf {n}}_\varGamma \}_{{\hat{\textsf {f}}}}\{{\mathbf {v}}_h\cdot {\mathbf {n}}_\varGamma \}_{{\hat{\textsf {f}}}}+ \xi _0\llbracket {\mathbf {w}}_{h}\cdot {\mathbf {n}}_\varGamma \rrbracket _{{\hat{\textsf {f}}}}\llbracket {\mathbf {v}}_h \cdot {\mathbf {n}}_\varGamma \rrbracket _{{\hat{\textsf {f}}}} \right) . \end{aligned}$$
(8)
Here,
$$\begin{aligned} \llbracket {\mathbf {v}}_h \cdot {\mathbf {n}}_\varGamma \rrbracket _{{\hat{\textsf {f}}}}=v_{\textsf {f}^+({\hat{\textsf {f}}})}-v_{\textsf {f}^-({\hat{\textsf {f}}})}, \qquad \{{\mathbf {v}}_h\cdot {\mathbf {n}}_\varGamma \}_{{\hat{\textsf {f}}}}=\dfrac{v_{\textsf {f}^+({\hat{\textsf {f}}})}+v_{\textsf {f}^-({\hat{\textsf {f}}})}}{2}, \end{aligned}$$
(9)
are the jumps and averages of \({\mathbf {v}}_h\) across the facet \({\hat{\textsf {f}}}\), \(\eta _{{\hat{\textsf {f}}}}\) is the value of \(\eta _\varGamma \) on facet \({\hat{\textsf {f}}}\), while \(\textsf {M}\) and \(\textsf {E}\) are the matrices that contribute to the mimetic inner product matrix \(\textsf {M}_c=\textsf {M}+\textsf {E}\).
Matrix \(\textsf {M}\) is the classical MFD inner product matrix, which is built by assembling the cell-wise contributions \(\textsf {M}_{\textsf {P}}\), while \(\textsf {E}\) accounts for the contribution due to the coupling conditions (2), and is defined implicitly by
$$\begin{aligned} {\mathbf {w}}_h^T \textsf {E}{\mathbf {v}}_h= \sum _{{\hat{f}}\in \varGamma _h}\eta _{{\hat{\textsf {f}}}}\vert {\hat{\textsf {f}}}\vert \left( \{{\mathbf {w}}_{h}\cdot {\mathbf {n}}_\varGamma \}_{{\hat{\textsf {f}}}}\{{\mathbf {v}}_h\cdot {\mathbf {n}}_\varGamma \}_{{\hat{\textsf {f}}}}+ \xi _0\llbracket {\mathbf {w}}_{h}\cdot {\mathbf {n}}_\varGamma \rrbracket _{{\hat{\textsf {f}}}}\llbracket {\mathbf {v}}_h \cdot {\mathbf {n}}_\varGamma \rrbracket _{{\hat{\textsf {f}}}} \right) . \end{aligned}$$
(10)
As for \(\textsf {M}_{\textsf {P}}\) its construction follows [18], and is briefly described. Let \(\textsf {P}\in \varOmega _h\) and \(\textsf {f}_1,\ldots ,\textsf {f}_{N_{\textsf {P}}^{\textsf {f}}}\) be the facets in \(\mathscr {F}_h(\textsf {P})\). We define the matrices \(\textsf {Z}_\textsf {P}\in {\mathbb {R}}^{N_{\textsf {P}}^{\textsf {f}}\times d}\) and \(\textsf {R}_{\textsf {P}}\in {\mathbb {R}}^{N_{\textsf {P}}^{\textsf {f}}\times d}\) as
$$\begin{aligned} \textsf {Z}_{\textsf {P}}=\begin{bmatrix} {\mathbf {n}}_{\textsf {f}_1}^{\textsf {T}} \\ \vdots \\ {\mathbf {n}}_{\textsf {f}_i}^{\textsf {T}} \\ \vdots \\ {\mathbf {n}}_{\textsf {f}_{N_{\textsf {P}}^{\textsf {f}}}}^{\textsf {T}} \end{bmatrix} \textsf {K}_{\textsf {P}},\quad \textsf {R}_{\textsf {P}}=\begin{bmatrix} \alpha _{\textsf {P},\textsf {f}_1}|\textsf {f}_1|({\mathbf {c}}_{\textsf {f}_1}-{\mathbf {c}}_{\textsf {P}}) \\ \vdots \\ \alpha _{\textsf {P},\textsf {f}_i}|\textsf {f}_i|({\mathbf {c}}_{\textsf {f}_i}-{\mathbf {c}}_{\textsf {P}}) \\ \vdots \\ \alpha _{\textsf {P},\textsf {f}_{N_{\textsf {P}}^{\textsf {f}}}}|\textsf {f}_{N_{\textsf {P}}^{\textsf {f}}}|({\mathbf {c}}_{\textsf {f}_{N_{\textsf {P}}^{\textsf {f}}}}-{\mathbf {c}}_{\textsf {P}}) \end{bmatrix}. \end{aligned}$$
(11)
Here, \(\textsf {K}_{\textsf {P}}\) is the value of the permeability \(\textsf {K}\) on cell \(\textsf {P}\), \({\mathbf {c}}_{\textsf {f}_i}\), and \({\mathbf {c}}_{\textsf {P}}\) are the barycenters of \(\textsf {f}_i\) and \(\textsf {P}\), respectively.
The elemental mimetic inner product matrix is then given by
$$\begin{aligned} \textsf {M}_{\textsf {P}}=\textsf {R}_{\textsf {P}}\Bigl (\dfrac{1}{|\textsf {P}|}\textsf {K}_{\textsf {P}}^{-1}\Bigl )\textsf {R}_{\textsf {P}}^{\textsf {T}} + \gamma _{\textsf {P}}\left( \textsf {I}-\textsf {Z}_{\textsf {P}}(\textsf {Z}_{\textsf {P}}^{\textsf {T}}\textsf {Z}_{\textsf {P}})^{-1}\textsf {Z}_{\textsf {P}}^{\textsf {T}}\right) , \end{aligned}$$
(12)
with
$$\begin{aligned} \gamma _{\textsf {P}}=\dfrac{2}{N_{\textsf {P}}^{\textsf {f}}|\textsf {P}|} {\text {tr}}(\textsf {R}_{\textsf {P}}\textsf {K}_{\textsf {P}}^{-1}\textsf {R}_{\textsf {P}}^{\textsf {T}}). \end{aligned}$$
It can be proven, see [42], that \(\textsf {M}_c\) is symmetric positive definite and that the inner product in (8) satisfies the requirements of consistency and stability necessary for a proper MFD discretization. Another step in a MFD discretization is the definition of the discrete divergence operator. For the case of fractured media, it has to represent the discretization of both the divergence operator and the flux exchange term appearing in the equation governing flow in the fractures. We thus define \(DIV_h:W_h\rightarrow Q_h\) and an inner product on \(Q_h\) so that, for any \({\mathbf {v}}_h\in W_h\) and \(({\mathbf {q}}_h,\hat{{\mathbf {q}}}_h)\in Q_h\),
$$\begin{aligned}{}[DIV_h {\mathbf {v}}_h,({\mathbf {q}}_h,\hat{{\mathbf {q}}}_h)]_{Q_h}=[\mathrm {div}_h {\mathbf {v}}_h,{\mathbf {q}}_h]_{Q^\varOmega _h}+ \sum _{{\hat{\textsf {f}}}\in \varGamma ^h}\vert {\hat{\textsf {f}}}\vert {\hat{q}}_{{\hat{\textsf {f}}}}\llbracket {\mathbf {v}}_h \cdot {\mathbf {n}}_\varGamma \rrbracket _{{\hat{\textsf {f}}}}, \end{aligned}$$
(13)
where the ith component of \(\mathrm {div}_h {\mathbf {v}}_h\in Q_h^\varOmega \) is given by
$$\begin{aligned}{}[\mathrm {div}_h {\mathbf {v}}_h]_{i}=\dfrac{1}{\vert \textsf {P}_i\vert }\sum _{\textsf {f}\in \mathscr {F}_h(\textsf {P}_i)}\alpha _{\textsf {P}_i,\textsf {f}}\vert \textsf {f}\vert v_{\textsf {f}}. \end{aligned}$$
The latter relation, together with (13) and (7), allows us to construct the matrices \(\textsf {B}\in {\mathbb {R}}^{N_\textsf {f}\times N_\textsf {P}}\) and \(\textsf {C}\in {\mathbb {R}}^{N_\textsf {f}\times N_\varGamma }\) such that
$$\begin{aligned} -[DIV_h {\mathbf {v}}_h,({\mathbf {q}}_h,\hat{{\mathbf {q}}}_h)]_{Q_h}={\mathbf {q}}^T_h\textsf {B}{\mathbf {v}}_h+\hat{{\mathbf {q}}}^T_h\textsf {C}{\mathbf {v}}_h. \end{aligned}$$
(14)
Details may be found in [12, 42].
As for the equations in the fracture network, we have employed the finite volume scheme with the two point flux approximation described in [45]. For each fracture cell \({\hat{\textsf {f}}}_i\in \varGamma _h\), we identify the set of edges of \({\hat{\textsf {f}}}_i\) as \(J(i)=\{{\textsf {e}}_i:\ {\textsf {e}}_i \text { edge of } {\hat{\textsf {f}}}_i,\ {\textsf {e}}_i\not \subset \partial \varGamma _N\}\), and \({\textsf {e}}_{ij}\) will indicate the jth element of J(i). Clearly, j ranges from 1 to a maximum of 3 if the facet has no edges on the Neumann boundary. For each \(e_{ij}\not \subset \partial \varGamma _D\) we indicate with \({\hat{p}}_{{\hat{\textsf {f}}}({\textsf {e}}_{ij})}\) the approximated fracture pressure in the only cell \({\hat{\textsf {f}}}({\textsf {e}}_{ij})\) such that \({\hat{\textsf {f}}}_i\cap {\hat{\textsf {f}}}({\textsf {e}}_{ij})={\textsf {e}}_{ij}\). While, if \({\textsf {e}}_{ij}\subset \partial \varGamma _D\), \({\hat{p}}_{{\hat{\textsf {f}}}({\textsf {e}}_{ij})}\) indicates the average value of the Dirichlet datum on \({\textsf {e}}_i\), and eventually it contributes to the right hand side.
The approximation of \(-\nabla _{\varGamma }\cdot (\textsf {K}_{\varGamma }\nabla _{\varGamma }p_{\varGamma })\) by the finite volume scheme may then be written as
$$\begin{aligned} -\sum _{{\textsf {e}}_{ij}\in J(i)} \textsf {T}_{ij}({\hat{p}}_{{\hat{\textsf {f}}}({\textsf {e}}_{ij})}-{\hat{p}}_{{\hat{\textsf {f}}}_i}), \quad i=1,\ldots N_\varGamma . \end{aligned}$$
(15)
Matrix \(\textsf {T}\), of components \(\textsf {T}_{ij}\), is the so called transmissibility matrix, whose computation is explained in details in the given references. It is symmetric and positive semi-definite (positive definite if \(\partial \varGamma _D\ne \emptyset \)).

2.3 The Algebraic System

From now on, to simplify the notation, we omit the subscript h to indicate the vectors of degrees of freedom. Thanks to the definitions in (8), (14) and (15), we may write the linear system governing the discrete problem as
$$\begin{aligned} {\left\{ \begin{array}{ll} \textsf {M}_c \varvec{u}+\textsf {B}^{T}\varvec{p}+\textsf {C}^{T}\varvec{p}_\varGamma ={\mathbf {g}} \\ \textsf {B}\varvec{u}= {\mathbf {h}},\\ \textsf {C}\varvec{u}- \textsf {T}\varvec{p}_\varGamma = {\mathbf {h}}_{\varGamma }, \end{array}\right. } \end{aligned}$$
(16)
or, equivalently,
$$\begin{aligned} \begin{bmatrix} \textsf {M}_c &{} \textsf {B}^T &{} \textsf {C}^{T} \\ \textsf {B}&{} 0 &{} 0 \\ \textsf {C}&{} 0 &{} -\textsf {T}\end{bmatrix} \begin{bmatrix} \varvec{u}\\ \varvec{p}\\ \varvec{p}_\varGamma \end{bmatrix} = \begin{bmatrix} {\mathbf {g}} \\ {\mathbf {h}} \\ {\mathbf {h}}_{\varGamma } \end{bmatrix}, \end{aligned}$$
where we recall that the vectors \(\varvec{u}\), \(\varvec{p}\) and \(\varvec{p}_\varGamma \) contain the approximate solution for the bulk velocity, bulk pressure, and fracture pressure, respectively, while the vectors \({\mathbf {g}}\), \({\mathbf {h}}\) and \({\mathbf {h}}_\varGamma \) contain the terms arising from the forcing and boundary data.
Theorem 2
System (16) is well posed.
Proof
Let us first note that we can reduce the linear system to a classic saddle-point algebraic problem. We define the following block matrices \(\widetilde{\textsf {B}}\in {\mathbb {R}}^{(N_{\textsf {P}}+N_{\varGamma })\times N_{\textsf {f}}}\) and \(\widetilde{\textsf {T}}\in {\mathbb {R}}^{(N_{\textsf {P}}+N_{\varGamma })\times (N_{\textsf {P}}+N_{\varGamma })}\) as
$$\begin{aligned} \widetilde{\textsf {B}}=\begin{bmatrix} \textsf {B}\\ \textsf {C}\end{bmatrix}, \quad \widetilde{\textsf {T}}=\begin{bmatrix} 0 &{} 0 \\ 0 &{} \textsf {T}\end{bmatrix}, \end{aligned}$$
(17)
and the vectors \(\varvec{\pi }=[\varvec{p},\varvec{p}_\varGamma ]^{\textsf {T}}\) and \(\widetilde{{\mathbf {h}}}=[{\mathbf {h}},{\mathbf {h}}_{\varGamma }]^{\textsf {T}}\). The system can be rewritten as
$$\begin{aligned} \begin{bmatrix} \textsf {M}_c &{} \widetilde{\textsf {B}}^{T} \\ \widetilde{\textsf {B}}&{} -\widetilde{\textsf {T}}\end{bmatrix} \begin{bmatrix} \varvec{u}\\ \varvec{\pi } \end{bmatrix} = \begin{bmatrix} {\mathbf {g}} \\ \widetilde{{\mathbf {h}}} \end{bmatrix}. \end{aligned}$$
(18)
Following the steps illustrated in [42], we may prove that \(\textsf {M}_c\) is symmetric positive definite and \({\text {ker}}(\widetilde{\textsf {B}}^{T})=\emptyset \). Since \(\widetilde{\textsf {T}}\) is positive semi-definite, well posedness follows from standard results on saddle-point systems, see for instance [21, 23]. A similar result may be found also in [12].3\(\square \)

3 Spectral Properties of the Governing System of Equations

In this work we will mainly focus on three-dimensional test cases, since their solution is more challenging. That is why the numerical scheme has been introduced for that setting. However in this section, for the sake of generality, we report the results for a generic space dimension d, with \(d=2\) or \(d=3\). It is understood that for the two-dimensional case the assumptions made on the mesh have to be reinterpreted appropriately. Moreover, we will keep the notation used for the three-dimensional setting. In the following, with \(a\lesssim b\) (respectively, \(a\gtrsim b\)) we indicate the existence of a positive constant C, independent of h, such that \(a\le Cb\) (\(a\ge Cb\)), while \(a\simeq b\) means \(b\lesssim a\lesssim b\). We also recall that for any family of meshes \(\{\varOmega _h,\ h>0\}\) that satisfy Assumption 1 we have
$$\begin{aligned} \vert \textsf {P}\vert \simeq h^d,\quad \vert \textsf {f}\vert \simeq h^{d-1}\quad \text {and }{\text {card}}(\mathscr {F}_h(\textsf {P}))\le N^*, \end{aligned}$$
(19)
for all \(\textsf {P}\in \varOmega _h\) and \(\textsf {f}\in \varGamma _h\), and where \(N^*\) is a positive integer independent of h. In all the following derivations, we assume that the mesh satisfies Assumption 1, and consequently the inequalities in (19).
We first introduce some norms and norm equivalence results. For all \({\mathbf {v}}_h\in W_h\) we define
$$\begin{aligned} |||{\mathbf {v}}_h|||_{W_h}^2&=\sum _{\textsf {P}\in \varOmega _h}|\textsf {P}|\sum _{\textsf {f}\in \mathscr {F}_h(\textsf {P})}v_{\textsf {f}}^2, \end{aligned}$$
(20)
$$\begin{aligned} \Vert {\mathbf {v}}_h\Vert ^2_{W_h}&=|||{\mathbf {v}}_h|||_{W_h}^2+\sum _{\hat{\textsf {f}}\in \varGamma _h}|\hat{\textsf {f}}|(\llbracket {\mathbf {v}}_h\rrbracket _{\hat{\textsf {f}}}^2+\{{\mathbf {v}}_h\}_{\hat{\textsf {f}}}^2), \end{aligned}$$
(21)
$$\begin{aligned} \Vert {\mathbf {v}}_h\Vert ^2_{\textsf {M}_c}&=[{\mathbf {v}}_h,{\mathbf {v}}_h]_{W_h}={\mathbf {v}}_h^T\textsf {M}_c{\mathbf {v}}_h,\end{aligned}$$
(22)
$$\begin{aligned} \Vert {\mathbf {q}}\Vert ^2_{Q_h^\varOmega }&=[{\mathbf {q}}_h,{\mathbf {r}}_h]_{Q^\varOmega _h}=\sum _{\textsf {P}\in \varOmega _h}\vert \textsf {P}\vert q_{\textsf {P}}^2, \end{aligned}$$
(23)
and
$$\begin{aligned} \Vert {\mathbf {q}}\Vert ^2_{Q_h^\varGamma }=\sum _{\hat{\textsf {f}}\in \varGamma _h}\vert \hat{\textsf {f}}\vert q_{\hat{\textsf {f}}}^2, \end{aligned}$$
(24)
while with \(\Vert \cdot \Vert \) we indicate the standard Euclidean norm.
Lemma 1
We have the following inequalities:
$$\begin{aligned}&\Vert {\mathbf {p}}\Vert ^2_{Q^\varOmega _h} \simeq h^{d} \Vert {\mathbf {p}}\Vert ^2, \qquad \Vert {\mathbf {p}}_\varGamma \Vert ^2_{Q^\varGamma _h} \simeq h^{d-1} \Vert {\mathbf {p}}_\varGamma \Vert ^2, \end{aligned}$$
(25)
$$\begin{aligned}&C_*||{\mathbf {v}}_h||_{W_h}^2\lesssim ||{\mathbf {v}}_h||^2_{\textsf {M}_c}\lesssim C^*||{\mathbf {v}}_h||^2_{W_h} \qquad \forall \ {\mathbf {v}}_h\in W_h, \end{aligned}$$
(26)
where \(C_*=\min (\frac{1}{K^*},\xi _0\eta _*)\) and \(C^*=\max (\frac{1}{K_*},\eta ^*)\). Moreover, it holds that
$$\begin{aligned} |||{\mathbf {v}}_h|||_{W_h}\le \Vert {\mathbf {v}}_h\Vert _{W_h}\le \sqrt{1+\dfrac{C}{h}}|||{\mathbf {v}}_h|||_{W_h} \qquad \forall \ {\mathbf {v}}_h\in W_h, \end{aligned}$$
(27)
for a \(C>0\), and, for h sufficiently small,
$$\begin{aligned} h^d||{\mathbf {v}}_h||^2\lesssim \Vert {\mathbf {v}}_h\Vert _{W_h}^2\lesssim h^{d-1}\Vert {\mathbf {v}}_h\Vert ^2\qquad \forall \ {\mathbf {v}}_h\in W_h. \end{aligned}$$
(28)
Proof
The equivalence relations in (25) is an immediate application of the definition (23) and (24), and of the inequalities in (19).
The proof of (26) and (27) may be found in [42, Lemma 3.4] and [42, Lemma 3.1]. As for (28), we clearly have
$$\begin{aligned} \Vert {\mathbf {v}}_h\Vert _{W_h}^2\ge \min _{\textsf {P}\in \varOmega _h}\sum _{\textsf {P}\in \varOmega _h}\sum _{\textsf {f}\in \mathscr {F}_h(\textsf {P})} \vert \textsf {f}\vert v_f^2{\gtrsim } h^{d}\Vert {\mathbf {v}}_h\Vert ^2, \end{aligned}$$
while,
$$\begin{aligned} \sum _{\hat{\textsf {f}}\in \varGamma _h}\llbracket {\mathbf {v}}_h\rrbracket _{\hat{\textsf {f}}}^2+\{{\mathbf {v}}_h\}_{\hat{\textsf {f}}}^2 \le 2\sum _{\hat{\textsf {f}}\in \varGamma _h} (v_{\textsf {f}^+({\hat{\textsf {f}}})}^2+v_{\textsf {f}^-({\hat{\textsf {f}}})}^2)\le 2 \Vert {\mathbf {v}}_h\Vert ^2 \end{aligned}$$
and
$$\begin{aligned} \sum _{\textsf {P}\in \varOmega _h}\sum _{\textsf {f}\in \mathscr {F}_h(\textsf {P})} v_f^2\le 2\sum _{\textsf {f}\in \mathscr {F}_h}v_f^2-\sum _{\textsf {f}\in \mathscr {F}_h^{\partial \varOmega }}v_f^2\le 2\Vert {\mathbf {v}}_h\Vert ^2. \end{aligned}$$
Thus,
$$\begin{aligned} \Vert {\mathbf {v}}_h\Vert _{W_h}^2\le 2\max (\max _{\textsf {P}\in \varOmega _h}\vert {\textsf {P}}\vert ,\max _{\hat{\textsf {f}}\in \varGamma _h}\vert \hat{\textsf {f}}\vert ))\Vert {\mathbf {v}}_h\Vert ^2\lesssim h^{d-1}\Vert {\mathbf {v}}_h\Vert ^2, \end{aligned}$$
for a sufficiently small h. \(\square \)
In the following we will indicate by \({\mathcal {A}}\) the global matrix,
$$\begin{aligned} {\mathcal {A}}= \begin{bmatrix} \textsf {M}_c &{} \textsf {B}^{\textsf {T}} &{} \textsf {C}^{\textsf {T}} \\ \textsf {B}&{} 0 &{} 0 \\ \textsf {C}&{} 0 &{} -\textsf {T}\end{bmatrix} = \begin{bmatrix} \textsf {M}_c &{} \widetilde{\textsf {B}}^{T} \\ \widetilde{\textsf {B}}&{} -\widetilde{\textsf {T}}\end{bmatrix} . \end{aligned}$$
(29)
It is well known, see for instance [38, 57], that \({\mathcal {A}}\) has \(N_\textsf {f}\) positive and \(N_\textsf {B}=N_\varGamma +N_{\textsf {P}}\) negative eigenvalues. We will indicate by \(0<\lambda _{min}^{\textsf {M}_c}\le \lambda ^{\textsf {M}_c}_{max}\) the minimum and maximum eigenvalue of \(\textsf {M}_c\), by \(0<\mu ^{\widetilde{\textsf {B}}}_{min}\le \mu ^{\widetilde{\textsf {B}}}_{max}\) the minimum and maximum singular value of \(\widetilde{\textsf {B}}^T\), and by \(\lambda _{max}^{\widetilde{\textsf {T}}}>0\) the maximum eigenvalue of \(\widetilde{\textsf {T}}\), which clearly corresponds also to the maximum eigenvalue of \(\textsf {T}\). Finally, we define
$$\begin{aligned} \zeta = \max _{k=1}^{N_B}\dfrac{\Vert {\mathbf {p}}_{\varGamma ,k}\Vert ^2}{\Vert \varvec{\pi }_{k}\Vert ^2}, \end{aligned}$$
(30)
where \(\varvec{\pi }_{k}=[{\mathbf {p}}_{k},{\mathbf {p}}_{\varGamma ,k}]^T\in Q_h\) is the pressure component of the eigenvector corresponding to the kth negative eigenvalue of \({\mathcal {A}}\). Clearly \(\zeta \le 1\).
We have the following
Lemma 2
The spectrum of \({\mathcal {A}}\) satisfies
$$\begin{aligned} \sigma ({\mathcal {A}})\subseteq I^-\cup I^+, \end{aligned}$$
where
$$\begin{aligned} I^-= & {} \biggl [\dfrac{1}{2}\biggl (\lambda _{min}^{\textsf {M}_c}-\zeta \lambda _{max}^{\widetilde{\textsf {T}}}-\sqrt{(\lambda _{min}^{\textsf {M}_c}+\zeta \lambda _{max}^{\widetilde{\textsf {T}}})^2+4(\mu _{max}^{\widetilde{\textsf {B}}})^2}\biggl ), \\&\quad \dfrac{1}{2}\biggl (\lambda _{max}^{\textsf {M}_c}-\sqrt{(\lambda _{max}^{\textsf {M}_c})^2+4(\mu _{min}^{\widetilde{\textsf {B}}})^2}\biggl )\biggl ]\subset {\mathbb {R}}^-, \\ I^+= & {} \biggl [\lambda _{min}^{\textsf {M}_c}, \ \ \dfrac{1}{2}\biggl (\lambda _{max}^{\textsf {M}_c}+\sqrt{(\lambda _{max}^{\textsf {M}_c})^2+4(\mu _{max}^{\widetilde{\textsf {B}}})^2}\biggl )\biggl ]\subset {\mathbb {R}}^+. \end{aligned}$$
Proof
The result is an extension of the one given in [55]. For the sake of brevity, we report only the part that differs from the cited reference. We indicate with
$$\begin{aligned} \lambda ^{-,{\mathcal {A}}}_{min}=\lambda ^{{\mathcal {A}}}_{-N_B}\le \cdots \le \lambda ^{{\mathcal {A}}}_{-1}=\lambda ^{-,{\mathcal {A}}}_{max}<0<\lambda _{min}^{+,{\mathcal {A}}}=\lambda ^{{\mathcal {A}}}_{1}\le \cdots \lambda ^{{\mathcal {A}}}_{N_\textsf {f}}=\lambda ^{+,{\mathcal {A}}}_{max} \end{aligned}$$
the eigenvalues of \({\mathcal {A}}\) and with \((\lambda ,[{\mathbf {u}},\varvec{\pi }]^T)=(\lambda ,[{\mathbf {u}},{\mathbf {p}},{\mathbf {p}}_\varGamma ]^T)\) a generic eigenpair of \({\mathcal {A}}\). It means that
$$\begin{aligned} \textsf {M}_c{\mathbf {u}}+\widetilde{\textsf {B}}^\textsf {T}\varvec{\pi }&=\lambda {\mathbf {u}}, \end{aligned}$$
(31)
$$\begin{aligned} \widetilde{\textsf {B}}{\mathbf {u}} - \widetilde{\textsf {T}}\varvec{\pi }&=\lambda \varvec{\pi }. \end{aligned}$$
(32)
In particular, we consider here a \(\lambda <0\). In this case, \(\textsf {M}_c-\lambda {\mathbf {I}}\) is non-singular and we may build the Schur complement of block \(\textsf {M}_c\), by which we can write
$$\begin{aligned} \varvec{\pi }^T\left[ \widetilde{\textsf {B}}\left( \textsf {M}_c-\lambda {\mathbf {I}}\right) ^{-1}\widetilde{\textsf {B}}^\textsf {T}+\widetilde{\textsf {T}}\right] \varvec{\pi }= -\lambda \Vert \varvec{\pi }\Vert ^2\ge 0, \end{aligned}$$
(33)
The part of the proof that differs from that in [55] concerns the estimate of \(\lambda ^{-,{\mathcal {A}}}_{min}\), where we exploit the special structure of \(\widetilde{\textsf {T}}\). More precisely, from (33) we may derive that
$$\begin{aligned}&\dfrac{\varvec{\pi }^T\left[ \widetilde{\textsf {B}}\left( \textsf {M}_c- \lambda {\mathbf {I}}\right) ^{-1}\widetilde{\textsf {B}}^\textsf {T}+\widetilde{\textsf {T}}\right] \varvec{\pi }}{\Vert \varvec{\pi }\Vert ^2}= -\lambda =\\&\quad \dfrac{\varvec{\pi }^T\left[ \widetilde{\textsf {B}}\left( \textsf {M}_c-\lambda {\mathbf {I}}\right) ^{-1} \widetilde{\textsf {B}}^\textsf {T}\right] \varvec{\pi }}{\Vert \varvec{\pi }\Vert ^2}+ \dfrac{\Vert {\mathbf {p}}_\varGamma \Vert ^2}{\Vert \varvec{\pi }\Vert ^2} \dfrac{{\mathbf {p}}_\varGamma ^T\textsf {T}{\mathbf {p}}_\varGamma }{\Vert {\mathbf {p}}_\varGamma \Vert ^2}{{\ge 0}}, \end{aligned}$$
by which we deduce that
$$\begin{aligned} (\lambda ^{\textsf {M}_c}_{min}-\lambda )^{-1}(\mu _{max}^{\widetilde{\textsf {B}}})^2+\zeta \lambda ^{\widetilde{\textsf {T}}}_{max}+\lambda \ge 0, \end{aligned}$$
i.e.
$$\begin{aligned} \lambda ^2+(\zeta \lambda ^{\widetilde{\textsf {T}}}_{max}-\lambda ^{\textsf {M}_c}_{min})\lambda -(\mu _{max}^{\widetilde{\textsf {B}}})^2-\zeta \lambda ^{\widetilde{\textsf {T}}}_{max}{\lambda ^{\textsf {M}_c}_{min}}\le 0, \end{aligned}$$
and thus,
$$\begin{aligned} \lambda ^{-,{\mathcal {A}}}_{min}\ge \frac{1}{2}\left( \lambda ^{\textsf {M}_c}_{min}-\zeta \lambda ^{\widetilde{\textsf {T}}}_{max}-\sqrt{(\lambda ^{\textsf {M}_c}_{min}+\zeta \lambda ^{\widetilde{\textsf {T}}}_{max})^2+4(\mu _{max}^{\widetilde{\textsf {B}}})^2} \right) . \end{aligned}$$
(34)
The proof is concluded by integrating this result with the other bounds provided in the cited reference. \(\square \)
We can now proceed to specialize to our problem the various terms in Lemma 2.
Lemma 3
The eigenvalues of \(\textsf {M}_c\) satisfy asymptotically, i.e for h sufficiently small, the following bounds
$$\begin{aligned} K_*^{-1}h^{d}\gtrsim \lambda _{min}^{\textsf {M}_c}\gtrsim C_* h^d,\quad \text {and }\quad \xi _0\eta _* h^{d-1}\lesssim \lambda _{max}^{\textsf {M}_c}\lesssim C^*h^{d-1}. \end{aligned}$$
(35)
Proof
To obtain \(\lambda _{min}^{\textsf {M}_c}\gtrsim C_* h^d\) and \(\lambda _{max}^{\textsf {M}_c}\lesssim C^*h^{d-1}\) it is sufficient to bound the Rayleigh quotient
$$\begin{aligned} \dfrac{{\mathbf {v}}^T\textsf {M}_c{\mathbf {v}}}{\Vert {\mathbf {v}}\Vert ^2} =\dfrac{\Vert {\mathbf {v}}\Vert _{\textsf {M}_c}^2}{\Vert {\mathbf {v}}\Vert ^2} \end{aligned}$$
by exploiting inequalities (26)–(28) of Lemma 1. The other inequalities are again obtained by considering the same Rayleigh quotient and using the definition of \(\textsf {M}_c\) in (8). If we choose \({\mathbf {v}}\in W_h\) such that \({\mathbf {v}}\ne {\mathbf {0}}\) and \(v_\textsf {f}=0\) if \(\textsf {f}\in \mathscr {F}_h\setminus \mathscr {F}_h^{\varGamma }\) we have \({\mathbf {v}}^T\textsf {M}_c{\mathbf {v}}\gtrsim \max _{\textsf {f}\in \mathscr {F}_h^{\varGamma }}(\vert \textsf {f}\vert )\xi _0\eta _*\Vert {\mathbf {v}}\Vert ^2\), by which we obtain \(\xi _0\eta _* h^{d-1}\lesssim \lambda _{max}^{\textsf {M}_c}\). If instead \({\mathbf {v}}\) is such that \(v_\textsf {f}=0\) if \(\textsf {f}\in \mathscr {F}_h^{\varGamma }\), we can obtain \({\mathbf {v}}^T\textsf {M}_c{\mathbf {v}}\lesssim K_*^{-1}\min _{\textsf {P}\in \varOmega _h}(\vert \textsf {P}\vert )\Vert {\mathbf {v}}\Vert ^2\), by which \(\lambda ^{\textsf {M}_c}_{min}\lesssim K_*^{-1}h^{d}\). \(\square \)
Lemma 4
If \(\varGamma _h\) is K-orthogonal on each fracture, then
$$\begin{aligned} \lambda _{max}^{\widetilde{\textsf {T}}}=\lambda _{max}^{\textsf {T}}\lesssim K_{\varGamma }^*h^{d-3}. \end{aligned}$$
(36)
Proof
If the grid is K-orthogonal \(\widetilde{\textsf {T}}\) is symmetric positive semidefinite and diagonally dominant, and the estimate is then easily obtained by bounding the Rayleigh quotient and by the fact that the fracture equations are posed on \(d-1\) dimensional surfaces embedded in \({\mathbb {R}}^d\). \(\square \)
Numerical experiments in Sect. 4.3 have verified the validity of this estimate, also in cases where the grid is not strictly K-orthogonal.
We state now the following conjecture.
Conjecture 1
The coefficient \(\zeta \) defined in (30) satisfies
$$\begin{aligned} \zeta \lesssim h. \end{aligned}$$
(37)
This conjecture has been verified indirectly by examining the behavior of the spectrum of \({\mathcal {A}}\) experimentally. It can be justified by the fact the pressure component \(\varvec{\pi }=({\mathbf {p}},{\mathbf {p}}_\varGamma )\) of an eigenvector of \({\mathcal {A}}\) is an approximation of the pressure component of an eigenfunction \((p,p_\varGamma )\in Q\times Z_\varGamma \) of our differential problem, thus, \(\Vert {\mathbf {p}}\Vert _{Q^\varOmega _h} \simeq \Vert p\Vert _{L^2(\varOmega )}\), while \(\Vert {\mathbf {p}}_\varGamma \Vert _{Q^\varGamma _h} \simeq \Vert p_\varGamma \Vert _{L^2(\varGamma )}\). We can now consider \(\varvec{\pi }\) as the pressure eigenvector for which the ratio in (30) reaches its maximal value. Thanks to (25), \(\Vert {\mathbf {p}}\Vert ^2\gtrsim h^{-d}\Vert {\mathbf {p}}\Vert ^2_{Q^\varOmega _h}\) and \(\Vert {\mathbf {p}}_\varGamma \Vert ^2\lesssim h^{1-d}\Vert {\mathbf {p}}_\varGamma \Vert ^2_{Q^\varGamma _h} \), we can then infer that \(\zeta = \frac{\Vert {\mathbf {p}}_{\varGamma }\Vert ^2}{\Vert {\mathbf {p}}_{\varGamma }\Vert ^2+\Vert {\mathbf {p}}\Vert ^2} \lesssim h\). However, no rigorous proof is currently available.
To estimate the singular values of \(\widetilde{\textsf {B}}^\textsf {T}\) we extend the work in [50] to the case of fractured domains. To this aim, we have to make an additional assumption on the mesh. It is a technical assumption which is satisfied if the mesh does not exhibit “pathological situations”. We define the total grid \(\varLambda _h=\varOmega _h\cup \varGamma _h\), which contains both bulk and fracture polygonal cells. So a generic cell \(c\in \varLambda _h\) may be a bulk cell or a fracture cell. Let us consider the undirected graph \({\mathcal {G}}\) where the elements of \(\varLambda _h\) are the graph nodes and the set of graph edges \({\mathcal {L}}_h\subseteq \varLambda _h\times \varLambda _h\) are defined by:
  • For any \(\textsf {P}_1,\textsf {P}_2\in \varOmega _h\), \((\textsf {P}_1,\textsf {P}_2)\in {\mathcal {L}}_h\) if and only if \(\exists \textsf {f}\in \mathscr {F}_h^0\) such that \(\textsf {f}=\textsf {P}_1\cap \textsf {P}_2\),
  • For any \(\textsf {P}\in \varOmega _h\) and \(\hat{\textsf {f}}\in \varGamma _h\), \((\textsf {P},\hat{\textsf {f}})\in {\mathcal {L}}_h\) if and only if \(\hat{\textsf {f}}\cap \partial \textsf {P}=\hat{\textsf {f}}\).
Assumption 3
The global mesh \(\varLambda _h\) satisfies the following assumption: there exists a family of elementary paths \(\varPsi =\{\zeta _i\}_{i=1,\ldots ,N_{\gamma }}\) which are connected subgraphs of \({\mathcal {G}}\) with nodes of maximal degree 2, such that
  • for every cell \(c\in \varLambda _h\) there exists one and only one path \(\zeta _i\in \varPsi \) with \(c\in \zeta _i\), i.e. the family of paths \(\varPsi \) defines a partition of \(\varLambda _h\);
  • the first and last node, \(c_{s,i}\) and \(c_{e,i}\), of any \(\zeta _i\in \varPsi \) have a facet in \(\mathscr {F}_h^{\partial \varOmega }\);
  • there exists a constant \(L^*\) independent from h such that
    $$\begin{aligned} L_i\le L^*h^{-1}, \qquad i=1,\ldots ,N_{\gamma }, \end{aligned}$$
    where \(L_i\) is the number of cells in \(\zeta _i\).
We can now state the following.
Lemma 5
For h sufficiently small, the singular values of \(\widetilde{\textsf {B}}^\textsf {T}\) satisfy the following bounds
$$\begin{aligned} \mu _{min}^{\widetilde{\textsf {B}}}\gtrsim h^{d},\quad \mu _{max}^{\widetilde{\textsf {B}}}\lesssim h^{d-1}. \end{aligned}$$
(38)
Since the proof is rather technical and lengthy, we have postponed it to the Appendix.
Theorem 3
Let h be sufficiently small, and assume that Assumptions 13 and Conjecture 1 hold. Then, the spectrum of \({\mathcal {A}}\) satisfies
$$\begin{aligned} I^-\cup I^+= [\lambda _{min}^{-,{\mathcal {A}}}, \lambda _{max}^{-,{\mathcal {A}}}]\cup [\lambda _{min}^{+,{\mathcal {A}}}, \lambda _{max}^{+,{\mathcal {A}}}]\subseteq [-k_1h^{d-2}, \ -k_2h^{d+1}]\cup [k_3h^d, \ k_4h^{d-1}], \end{aligned}$$
(39)
where \(k_i\) are positive constants independent from h but depending on the bounds on the permeability in the bulk and in the fractures. Consequently, the condition number is characterized by the following bound,4
$$\begin{aligned} K_2({\mathcal {A}}) \le \dfrac{k_1}{k_2}h^{-3}. \end{aligned}$$
(40)
Proof
The bounds to characterize the intervals \(I^-\) and \(I^+\) are obtained by applying estimates (36), (35), (38) and (37) to Lemma 2. Indeed, by considering only the leading terms for h sufficiently small we have
$$\begin{aligned} \lambda ^{-,{\mathcal {A}}}_{min}\gtrsim -\textsf {K}_{\varGamma }^*h^{d-2}, \end{aligned}$$
(41)
and
$$\begin{aligned} \begin{aligned} \lambda ^{-,{\mathcal {A}}}_{max}{=}\dfrac{1}{2}\biggl (\lambda _{max}^{\textsf {M}_c}-\sqrt{(\lambda _{max}^{\textsf {M}_c})^2+4(\mu _{min}^{\textsf {B}})^2}\biggl )\le \dfrac{1}{2}\lambda _{max}^{\textsf {M}_c}\biggl (1-\sqrt{1+4\dfrac{(\mu _{min}^{\textsf {B}})^2}{(\lambda _{max}^{\textsf {M}_c})^2}}\biggl ). \end{aligned} \end{aligned}$$
(42)
Since \(\dfrac{(\mu _{min}^{\textsf {B}})^2}{(\lambda _{max}^{\textsf {M}_c})^2}\gtrsim h^2\) and \(1-\sqrt{1+kh^2}\simeq -kh^2\), we deduce
$$\begin{aligned} \lambda ^{-,{\mathcal {A}}}_{max}\lesssim -\dfrac{(\mu _{min}^{\textsf {B}})^2}{\lambda _{max}^{\textsf {M}_c}}\lesssim -\dfrac{1}{C^*} h^{d+1}. \end{aligned}$$
(43)
Concerning the interval of positive eigenvalues we immediately have
$$\begin{aligned} \lambda ^{+,{\mathcal {A}}}_{min}\gtrsim \lambda _{min}^{\textsf {M}_c}\gtrsim C_*h^d \end{aligned}$$
(44)
and, finally
$$\begin{aligned} \lambda ^{+,{\mathcal {A}}}_{max}\lesssim \dfrac{\lambda _{max}^{\textsf {M}_c}}{2}\biggl (1+\sqrt{1+4\frac{(\mu _{max}^{\textsf {B}})^2}{(\lambda _{max}^{\textsf {M}_c})^2}}\biggl ) \lesssim C^*h^{d-1}. \end{aligned}$$
(45)
Defining the following constants,
$$\begin{aligned} k_1=K_{\varGamma }^*, \quad k_2=\dfrac{1}{C^*},\quad k_3=C_*\quad \text {and}\quad k_4=C^*, \end{aligned}$$
we recover the asymptotic spectrum estimate (39) and we can conclude that
$$\begin{aligned} ||{\mathcal {A}}||_2\le k_1 h^{d-2}, \qquad ||{\mathcal {A}}^{-1}||_2\le \dfrac{1}{k_2} h^{-d-1}, \end{aligned}$$
by which we obtain the estimate of the condition number (40). \(\square \)
Concerning the asymptotic behavior of the condition number in function of the problem parameters, we may note that the most relevant term is proportional to
$$\begin{aligned} k_1/k_2=K_{\varGamma }^*C^*=\max (K_{\varGamma }^*/K_*, K^*_{\varGamma }\eta ^*). \end{aligned}$$
(46)
Therefore, as expected, an important role is played by the permeability contrast between bulk and fractures.
We remark that the results here presented are asymptotic, i.e. they hold for an h sufficiently small. The dependence on the problem parameters shows that the leading term of \(O(h^{-3})\) in the condition number is more relevant when fractures are much more permeable than the bulk. This has been confirmed in the numerical experiments.
The next result is important for the derivation of suitable preconditioners for the system. We define \(\textsf {M}^c_D={\text {diag}}(\textsf {M}_c)\), the diagonal part of the mimetic inner product matrix. We have the following
Theorem 4
Matrix \(\textsf {M}^c_D\) is asymptotically spectrally equivalent to \(\textsf {M}_c\). That is, if \(h\le h_0\), then
$$\begin{aligned} \lambda ^{\textsf {M}_D^c}_{max}\simeq \lambda ^{\textsf {M}_c}_{max}\quad \text {and }\lambda ^{\textsf {M}_D^c}_{min}\simeq \lambda ^{\textsf {M}_c}_{min}, \end{aligned}$$
(47)
where \(\lambda ^{\textsf {M}_D^c}_{max}\) and \(\lambda ^{\textsf {M}_D^c}_{min}\) are the maximum and minimum eigenvalue of \(\textsf {M}_D^c\), respectively, and the hidden constants depend on the problem parameters but not on h.
Proof
We first note that both \(\textsf {M}_c\) and \(\textsf {M}_D^c\) can be built cell-wise,
$$\begin{aligned} \textsf {M}_c=\sum _{\textsf {P}\in \varOmega _h}\textsf {M}_P^c\quad \textsf {M}_c=\sum _{\textsf {P}\in \varOmega _h}\textsf {M}_{D,\textsf {P}}. \end{aligned}$$
Consequently, see [58], the Rayleigh quotient satisfies
$$\begin{aligned} \min _{\textsf {P}\in \varOmega _h}\dfrac{{\mathbf {v}}_{\textsf {P}}^T\textsf {M}^c_{\textsf {P}}{\mathbf {v}}_{\textsf {P}}}{{\mathbf {v}}_{\textsf {P}}^T\textsf {M}^c_{D,\textsf {P}}{\mathbf {v}}_{\textsf {P}}}\le \dfrac{{\mathbf {v}}^T\textsf {M}_c{\mathbf {v}}}{{\mathbf {v}}^T\textsf {M}_D^c{\mathbf {v}}}\le \max _{\textsf {P}\in \varOmega _h}\dfrac{{\mathbf {v}}_{\textsf {P}}^T\textsf {M}^c_{\textsf {P}}{\mathbf {v}}_{\textsf {P}}}{{\mathbf {v}}_{\textsf {P}}^T\textsf {M}^c_{D,\textsf {P}}{\mathbf {v}}_{\textsf {P}}}, \end{aligned}$$
(48)
where \({\mathbf {v}}^T_{\textsf {P}}\) and \({\mathbf {v}}_{\textsf {P}_\varGamma }\) are the restriction of the vector of velocity degrees of freedom \({\mathbf {v}}\in W_h\) on the velocity degrees of freedom of \(\textsf {P}\) and to the velocity degrees of freedom of \(\textsf {P}\) that lies on \(\varGamma \), respectively. We have that \({\mathbf {v}}^T_{\textsf {P}}\textsf {M}_{\textsf {P}}^c{\mathbf {v}}_{\textsf {P}}={\mathbf {v}}^T_{\textsf {P}}\textsf {M}_{\textsf {P}}{\mathbf {v}}_{\textsf {P}}+{\mathbf {v}}^T_{\textsf {P}_\varGamma }\textsf {E}_{\textsf {P}}{\mathbf {v}}_{\textsf {P}_\varGamma }\), where \(\textsf {M}_{P}\) and \(\textsf {E}_{P}\) are the elemental contributions to the matrices \(\textsf {M}\) and \(\textsf {E}\), respectively. Coercivity and stability results for \(\textsf {M}_{\textsf {P}}^c\), reported in [42], together with the quasi-uniformity assumption (19) and the definition of \(\textsf {E}\), lead to
$$\begin{aligned} {\mathbf {v}}^T_{\textsf {P}}\textsf {M}_{\textsf {P}}{\mathbf {v}}_{\textsf {P}}\simeq h^{d}\Vert {\mathbf {v}}_{\textsf {P}}\Vert ^2,\ \text {and } {\mathbf {v}}^T_{\textsf {P}_\varGamma }\textsf {E}_{\textsf {P}}{\mathbf {v}}_{\textsf {P}_\varGamma }\simeq h^{d-1}\Vert {\mathbf {v}}_{\textsf {P}_\varGamma }\Vert ^2. \end{aligned}$$
(49)
Let us now indicate with \(m_{jj}^c\) the jth diagonal element of \(\textsf {M}_{\textsf {P}}^c\) and we set \(m_{jj}^c=m_{jj}+e_{jj}\), where \(m_{jj}\) and \(e_{jj}\) are the elements of \(\textsf {M}_{D,\textsf {P}}\) and \(\textsf {E}_{D,\textsf {P}}\), the diagonal part of \(\textsf {M}_{\textsf {P}}\) and \(\textsf {E}_{\textsf {P}}\) respectively, and we indicate with \({\mathbf {e}}_j\) the jth canonical vector with all components zero apart from \([{\mathbf {e}}_j]_j=1\). With simple algebraic manipulations, from (11) and (12) we find that
$$\begin{aligned} m_{jj}={\mathbf {e}}_j^T\textsf {M}_{\textsf {P}}{\mathbf {e}}_j=\dfrac{\vert \textsf {f}_j\vert ^2}{\vert \textsf {P}\vert }({\mathbf {c}}_{f_j}-{\mathbf {c}}_{\textsf {P}})\textsf {K}_{\textsf {P}}^{-1}({\mathbf {c}}_{f_j}-{\mathbf {c}}_{\textsf {P}})+\gamma _{\textsf {P}}{\mathbf {e}}_j^T\left( \textsf {I}-\textsf {Z}_{\textsf {P}}(\textsf {Z}_{\textsf {P}}^{\textsf {T}}\textsf {Z}_{\textsf {P}})^{-1}\textsf {Z}_{\textsf {P}}^{\textsf {T}}\right) {\mathbf {e}}_j. \end{aligned}$$
Since \(\gamma _{\textsf {P}}\simeq h^{d}\), \(\dfrac{\vert \textsf {f}_j\vert ^2}{\vert \textsf {P}\vert }\simeq h^{d-2}\), \(({\mathbf {c}}_{f_j}-{\mathbf {c}}_{\textsf {P}})\textsf {K}_{\textsf {P}}^{-1}({\mathbf {c}}_{f_j}-{\mathbf {c}}_{\textsf {P}})\simeq h^2\), and noting that \(\textsf {I}-\textsf {Z}_{\textsf {P}}(\textsf {Z}_{\textsf {P}}^{\textsf {T}}\textsf {Z}_{\textsf {P}})^{-1}\textsf {Z}_{\textsf {P}}^{\textsf {T}}\) is a projection matrix, we can claim that
$$\begin{aligned} m_{jj}\simeq h^d,\quad \forall j. \end{aligned}$$
(50)
While, considering the definition of \(\textsf {E}\) given in (10), and indicating with \(\mathscr {F}_h^\varGamma (\textsf {P})\subset \mathscr {F}_h^\varGamma \) the set of facets of \(\textsf {P}\) that lay on \(\varGamma _h\) and \({\hat{\textsf {f}}}\) the fracture cell corresponding to a \(\textsf {f}\in \mathscr {F}_h^\varGamma (\textsf {P})\), we may infer
$$\begin{aligned} {\mathbf {v}}_{\textsf {P}}^T\textsf {E}_{D,\textsf {P}}{\mathbf {v}}_{\textsf {P}}\simeq \Vert {\mathbf {v}}_{\textsf {P}_\varGamma }\Vert ^2 \sum _{\textsf {f}\in \mathscr {F}_h^\varGamma (\textsf {P})}\eta _{{\hat{\textsf {f}}}} \vert \textsf {f}\vert \simeq h^{d-1}\Vert {\mathbf {v}}_{\textsf {P}_\varGamma }\Vert ^2, \end{aligned}$$
(51)
since \(\xi _0>0\).
In conclusion, by exploiting (49), (50) and (51) we have
$$\begin{aligned} \dfrac{{\mathbf {v}}_{\textsf {P}}^T\textsf {M}^c_{\textsf {P}}{\mathbf {v}}_{\textsf {P}}}{{\mathbf {v}}_{\textsf {P}}^T\textsf {M}_{D,\textsf {P}}{\mathbf {v}}_{\textsf {P}}}\simeq \dfrac{h^d\Vert {\mathbf {v}}_{\textsf {P}}\Vert ^2 + h^{d-1}\Vert {\mathbf {v}}_{\textsf {P}_\varGamma }\Vert ^2}{h^d\Vert {\mathbf {v}}_{\textsf {P}}\Vert ^2 + h^{d-1}\Vert {\mathbf {v}}_{\textsf {P}_\varGamma }\Vert ^2}, \end{aligned}$$
by which the quotient is asymptotically a constant. \(\square \)

4 Preconditioning Techniques for the Discrete Generalized Saddle-Point System

In this section we present several ABF preconditioners applied to the problem at hand. For an overview of preconditioning techniques the reader may refer to [59], and [21] for the particular case of saddle-point problems. For an illustration of iterative methods for problems arising from the discretization of partial differential equations the reader may refer to [38].
The objective is to verify the effectiveness of a diagonal approximation of the matrix \(\textsf {M}_c\). Indeed, the result of Theorem 4 suggests that approximating \(\textsf {M}_c\) with its diagonal,
$$\begin{aligned} \begin{aligned}&{\widehat{\textsf {M}}}_c = \texttt {diag}([m_c]_{ii}).&i=1,2,\ldots , \end{aligned} \end{aligned}$$
(52)
could be an interesting and simple choice.
To be computationally effective, the block preconditioners we are going to consider require also an approximation for the Schur complement \(\textsf {S}=-\widetilde{\textsf {T}}-\widetilde{\textsf {B}}\textsf {M}_c^{-1}\widetilde{\textsf {B}}^{\textsf {T}}\). For Mixed Finite Elements for the Stokes problem there is a wide strand of literature on the topic of finding good approximations of \(\textsf {S}\), see for instance [21]. On the other hand, in the context of MFD discretizations we are not aware of any effective strategy. We propose here the approximation simply given by
$$\begin{aligned} {\widehat{\textsf {S}}}=-\widetilde{\textsf {T}}-\widetilde{\textsf {B}}{\widehat{\textsf {M}}}_c\widetilde{\textsf {B}}^{\textsf {T}}. \end{aligned}$$
(53)
Matrix \(-{\widehat{\textsf {S}}}\) is s.p.d. and rather sparse, so it is easily factored with a sparse Cholesky factorization [34].
In a first set of test cases we will consider also the approximation of \(\textsf {M}_c\) with its lumped form
$$\begin{aligned} \begin{aligned}&{\widetilde{\textsf {M}}}_c = \texttt {diag}\left( \sum _{j} [m_c]_{ij} \right) ,&i=1,2,\ldots , \end{aligned} \end{aligned}$$
(54)
a technique widely used in low-order finite elements. We will show that this choice is completely inadequate for our class of problems.
We have chosen two iterative schemes, MINRES [52] and GMRES [53]. The former is in principle the method of choice for indefinite symmetric systems. However it restricts the choice of preconditioners to symmetric positive definite ones. Therefore, the reduced constraints on the possible preconditioners of GMRES makes it particularly interesting, despite its larger memory requirement. For GMRES we have chosen the left-preconditioned formulation.

4.1 Block Diagonal Preconditioner

The first ABF preconditioner we have considered is given by
$$\begin{aligned} {\mathcal {P}}=\begin{bmatrix} {\widehat{\textsf {M}}}_c &{} \\ 0 &{} -{\widehat{\textsf {S}}} \end{bmatrix}, \end{aligned}$$
(55)
where \({\widehat{\textsf {S}}}\) if computed according to (53) and \({\widehat{\textsf {M}}}_c\) using (52) or, alternatively, (54). The application of the preconditioner is straightforward, and recalled in Algorithm 1. At each iteration, we compute the preconditioned residual \(\mathbf{z }=[\mathbf{z }_1,\mathbf{z }_2]^{\textsf {T}}\) given by \({\mathcal {P}}\mathbf{z }=\mathbf{r }\), where \(\mathbf{r }=[\mathbf{r }_1,\mathbf{r }_2]^{\textsf {T}}\) is the current residual. This preconditioner is symmetric positive definite, therefore it may be used for both GMRES and MINRES. The most demanding part of Algorithm 1 is solving the linear system \(-{\widehat{\textsf {S}}}\mathbf{z }_2=\mathbf{r }_2\), which is however made effective by the Cholesky factorization (a possible alternative, not considered in this work, is to use multigrid techniques).

4.2 Block Triangular Preconditioner

In this case, we set
$$\begin{aligned} {\mathcal {P}}=\begin{bmatrix} {\widehat{\textsf {M}}}_c &{} {\widetilde{\textsf {B}}}^{\textsf {T}} \\ 0 &{} {\widehat{\textsf {S}}} \end{bmatrix}. \end{aligned}$$
(56)
Given the above definitions, the solution of \({\mathcal {P}}\mathbf{z }=\mathbf{r }\) can be obtained by employing the following factorization of its inverse
$$\begin{aligned} {\mathcal {P}}^{-1}=\begin{bmatrix} {\widehat{\textsf {M}}}^{-1}_c &{} 0 \\ 0 &{} \textsf {I}\end{bmatrix}\begin{bmatrix} \textsf {I}&{} \widetilde{\textsf {B}}^{\textsf {T}} \\ 0 &{} -\textsf {I}\end{bmatrix} \begin{bmatrix} \textsf {I}&{} 0 \\ 0 &{} -{\widehat{\textsf {S}}}^{-1} \end{bmatrix}. \end{aligned}$$
More precisely, at each iteration, computing the preconditioned residual is attained by Algorithm 2. Again, the most demanding part of Algorithm 2 is solving the linear system \(-{\widehat{\textsf {S}}}\mathbf{z }_2=\mathbf{r }_2\). The additional computational effort compared with the diagonal block preconditioner is minimal. However, this preconditioner is not s.p.d. and therefore it has been tested only with GMRES.

4.3 Block LU Preconditioner

Now we introduce a preconditioner based on an approximate block LU factorization. For the matrix \({\mathcal {A}}\) the following block LU factorization holds:
$$\begin{aligned} {\mathcal {A}}=\begin{bmatrix} \textsf {M}_c &{} \widetilde{\textsf {B}}^{\textsf {T}} \\ \widetilde{\textsf {B}}&{} -\widetilde{\textsf {T}}\end{bmatrix}=\begin{bmatrix} \textsf {M}_c &{} 0 \\ \widetilde{\textsf {B}}&{} \textsf {S}\end{bmatrix}\begin{bmatrix} \textsf {I}&{} \textsf {M}_c^{-1}\widetilde{\textsf {B}}^{\textsf {T}} \\ 0 &{} \textsf {I}\end{bmatrix}. \end{aligned}$$
(57)
The idea is again to replace \(\textsf {M}_c\) and \(\textsf {S}\) with the proposed approximations \({\widehat{\textsf {M}}}_c\) and \({\widehat{\textsf {S}}}\), so that the preconditioner is now
$$\begin{aligned} {\mathcal {P}}=\begin{bmatrix} {\widehat{\textsf {M}}}_c &{} 0 \\ \widetilde{\textsf {B}}&{} {\widehat{\textsf {S}}} \end{bmatrix}\begin{bmatrix} \textsf {I}&{} {\widehat{\textsf {M}}}_c^{-1}\widetilde{\textsf {B}}^{\textsf {T}} \\ 0 &{} \textsf {I}\end{bmatrix}. \end{aligned}$$
(58)
Multiplying the factors we get
$$\begin{aligned} {\mathcal {P}}=\begin{bmatrix} {\widehat{\textsf {M}}}_c &{} \widetilde{\textsf {B}}^{\textsf {T}} \\ \widetilde{\textsf {B}}&{} -\widetilde{\textsf {T}}\end{bmatrix}, \end{aligned}$$
(59)
which shows that \({\mathcal {P}}\) has the classical form of an indefinite preconditioner.5 Computing the preconditioned residual \(\mathbf{z }=[\mathbf{z }_1,\mathbf{z }_2]^{\textsf {T}}={\mathcal {P}}^{-1}\mathbf{r }\) requires the steps illustrated in Algorithm 3.
The computational costs are slightly higher than the ones of Algorithm 2, with an additional multiplication by \({\widehat{\textsf {M}}}_c^{-1}\) and \(\widetilde{\textsf {B}}\).6

5 Numerical Tests

In this section we present some numerical experiments. The first illustrates some solutions obtained with the proposed model on two test cases, one with a single fracture cutting the domain and the second one with a more complex network. We then use the set-up of the first test case to verify the spectral properties of the matrices with respect to the theoretical estimates. Finally, we test the performance of the proposed preconditioners using the matrices stemming from the discretization of the two test cases.

5.1 Setup A: Single Fracture Case

In the first test we have considered a domain \(\varOmega =(-1,1)\times (-1,1)\times (0,1)\) and a fracture \(\varGamma = (-1,1)\times \{0\}\times (0,1)\). On the left and right boundary sides we consider Dirichlet conditions, in particular we fix \(p=1\) on \(\{y=-1\}\) and \(p=0\) on \(\{y=1\}\), while on the top, bottom, front and back sides we impose homogeneous Neumann boundary conditions, whereas for the fracture we consider full Dirichlet boundary conditions setting \(p=1\) on the top and \(p=0\) on the bottom side: in this way we are simulating two orthogonal flows, one in the bulk and one in the fracture, and, by varying the fracture parameters, see Fig. 2, we vary their interaction. We have considered 3 cases: a “sealed” fracture \(K_\tau =10^{-2}\), \(K_n=1\), where the low normal permeability hinders the flow across the fracture; a “neutral case” with \(K_\tau =10^{-2}\), \(K_n=10^{2}\), where the material filling the fracture has the same permeability as the bulk and we expect negligible pressure and velocity jumps; and a highly conductive fracture, \(K_\tau =1\), \(K_n=10^{2}\).
Note the jump of pressure across the fracture obtained in the case of the “sealed” fracture, Fig. 2-left, and the linear pressure profile in Fig. 2-center, where the fracture has a negligible effect on the bulk flow. More interesting is the case of the conductive fracture in Fig. 2-right, where we have a strong interaction between the fracture and bulk flow, and the fracture becomes a preferential path for the fluid.

5.2 Setup B: Fracture Network

We here consider a more realistic case, i.e. a network of fractures. The bulk domain is now \(\varOmega =(0,2)\times (0,1)\times (0,1)\) and the network \(\varGamma \) consists of seven fractures with several intersections shown in Fig. 3. On the left and right boundary sides of the domain we consider Dirichlet conditions, in particular we fix \(p=1\) on \(\{x=0\}\) and \(p=0\) on \(\{x=2\}\), while on the top, bottom, front and back boundary sides of the domain we impose homogeneous Neumann boundary conditions. A polyhedral mesh of diameter \(h=0.193\) is employed and the resulting dimension of the system is 43,834.
In this test we consider larger contrasts between the equivalent permeability \(K_\tau \) and \(K_n\) and the bulk permeability with respect to the previous test. In the case of sealed fractures we set \(K_\tau =10^{-3}\), \(K_n=10^{-1}\). As shown in Fig. 4 the action of the fractures as barriers implies a strong discontinuity of the pressure across the fractures. The case of conductive fractures, with \(K_\tau =10\), \(K_n=10^3\) is shown in Fig. 5: note that in this case the distribution of pressure in the bulk follows the main network direction, since the fractures attract the bulk flow.

5.3 Spectral Properties of the Matrix

We consider the geometrical configuration of Setup A, illustrated in Sect. 4.1. First, we study experimentally the maximum eigenvalue of the transmissibility matrix \(\textsf {T}\) to verify (36). Then, we estimate the condition number of the global matrix of the problem \({\mathcal {A}}\) to verify the theoretical estimate of Theorem 3. The maximum and minimum eigenvalues have been estimated with the eigs function of MATLAB®.
We wanted to assess that the theoretical bound (36) on the maximal eigenvalue of \(\textsf {T}\) holds (at least approximately) also for more general grids. Since \(d=3\) the bound states that \(\lambda _{\max }^{\textsf {T}}\) should be bounded by a quantity invariant with h.
Table 1
Maximum eigenvalue of matrix \(\textsf {T}\) for different types of grids
h
0.25
0.125
0.0625
0.0313
Hexahedral grid
   \(\lambda _{max}^{\textsf {T}}\)
8.00e−05
8.00e−05
8.00e−05
8.00e−05
h
1.118
0.563
0.314
0.144
Tetrahedral grid
   \(\lambda _{max}^{\textsf {T}}\)
9.74e−05
1.02e−04
1.02e−04
1.02e−04
h
0.559
0.265
0.137
0.067
Polyhedral grid
   \(\lambda _{max}^{\textsf {T}}\)
9.10e−05
9.75e−05
1.00e−04
1.03e−04
In Table 1 we have reported the estimated values for different grids and \({\hat{\textsf {K}}}_\varGamma =k_f\textsf {I}\), with \(k_f=10^{-3}\). We may note that for regular hexahedral grids, which induce a rather regular mesh on \(\varGamma \), the eigenvalue is in fact constant with a value that respects the bound very closely. However, even for more general meshes, the value of \(\lambda _{max}^{\textsf {T}}\) is scarcely affected by h, with higher values that probably reflects the lower mesh regularity.
We focus now on the numerical validation of the estimate of the condition number of the system matrix \({\mathcal {A}}\) stated in Theorem 3.
Table 2
Condition number of \({\mathcal {A}}\) by varying the mesh size and the fracture permeability for different types of grids
h
0.25
0.125
0.0625
0.0313
Hexahedral grid
   \(k_f=\) 1e−3
4.31e\(+\)01
8.54e\(+\)01
1.69e\(+\)02
3.41e\(+\)02
   \(k_f=\) 1
2.77e\(+\)01
8.79e\(+\)01
6.58e\(+\)02
2.64e\(+\)03
   \(k_f=\) 1e3
1.02e\(+\)04
8.20e\(+\)04
6.55e\(+\)05
5.32e\(+\)06
h
1.118
0.563
0.314
0.144
Tetrahedral grid
   \(k_f=\) 1e−3
3.38e\(+\)02
7.04e\(+\)02
1.35e\(+\)03
2.76e\(+\)03
   \(k_f=\) 1
3.38e\(+\)02
6.91e\(+\)02
2.54e\(+\)03
1.01e\(+\)04
   \(k_f=\) 1e3
3.74e\(+\)04
3.14e\(+\)05
2.51e\(+\)06
2.21e\(+\)07
h
0.559
0.265
0.137
0.067
Polyhedral grid
   \(k_f=\) 1e−3
1.12e\(+\)03
4.17e\(+\)03
8.69e\(+\)03
2.52e\(+\)04
   \(k_f=\) 1
1.11e\(+\)03
4.18e\(+\)03
1.47e\(+\)04
5.85e\(+\)04
   \(k_f=\) 1e3
2.09e\(+\)05
1.78e\(+\)06
1.47e\(+\)07
1.15e\(+\)08
We can observe in Table 2 that the h-dependence of the condition number changes with the fracture permeability and with h, as expected. Yet, the theoretical bound in (40), with \(K_2({\mathcal {A}})=O(h^{-3})\) is reached only for the highest value of \(k_f\), when the coefficient in (46) has the highest value of 10. In the other cases, for the values of h here considered, a less restrictive variation with h has been found. This is probably due to the fact that the meshes are not refined enough. Indeed, the theoretical estimate is asymptotic, and with a mesh size not sufficiently small the other terms defining the intervals \(I^-\) and \(I^+\) in (39) may have a greater impact on the condition number. The case of high fracture permeability is indeed the most challenging because of the strong effect of the coupling terms. These results also confirm Conjecture 1, without which the condition number would be \(O(h^{-4})\).

5.4 Testing the Preconditioners

We now present tests to assess the performance of the preconditioners illustrated in Sect. 3. To make a fair comparison all tests have been made by constructing the matrices, building a random vector \({\mathbf {w}}\), constructing the left hand side as \({\mathbf {b}}={\mathcal {A}}{\mathbf {w}}\) and solving \({\mathcal {A}}{\mathbf {x}}={\mathbf {b}}\). The stopping tolerance has been set so that on each test the final relative error in the 2-norm, i.e \(\Vert \hat{{\mathbf {x}}}-{\mathbf {w}}\Vert _2/\Vert {\mathbf {w}}\Vert _2\) with \(\hat{{\mathbf {x}}}\) being the approximated solution, is of the order of \(10^{-6}\). To assess the performance in terms of CPU times, whenever possible we compare with the time needed for the solution with the multifrontal direct solver UMFPACK [35]. UMFPACK is a very efficient tool for solving sparse linear systems, so it provides a valuable reference. It is memory demanding though, so we could not use it for the largest examples. The tests were performed on an 2.7 Ghz i7 Intel processor with 16 GBytes RAM.
For the initial tests we also considered a simple diagonal preconditioner, which corresponds to a rescaling of the equations. Since our matrix \({\mathcal {A}}\) has a diagonal block of zeroes, for the corresponding rows no scaling has been performed, i.e. the block has been replaced with the identity. This comparison has been set up only to show the performance gained by the ABF preconditioners versus a trivial preconditioner.
In the following we will denote with Diag the simple diagonal preconditioner, with ABFD_D, ABFTr_D and ABFLU_D the approximate block factorization preconditioners based on block diagonal, block triangular and the block LU factorization with \(\textsf {M}_c\) approximated by its diagonal part, respectively. When we use the lumped inner-product matrix to approximate \(\textsf {M}_c\), we use the subscript L: ABFD_L, ABFTr_L and ABFLU_L.
The first set of tests still considers a single fracture that cuts the whole domain as described in Sect. 4.1, whereas the second deals with the network of fractures presented in Sect. 4.2, and is more realistic and challenging. For GMRES the restart level is set to 100 in all simulations (a value that is never reached if we choose an effective preconditioner).
The fundamental goal of the analyses is the study of the effectiveness of the preconditioners for different parameter values and mesh sizes. In all tests, the bulk permeability is assumed to be \(\textsf {K}= \textsf {I}\), the fracture aperture \(l_\varGamma =10^{-2}\).

5.4.1 Setup A: Single Fracture Case

Here we present the case with a single fracture that cuts the whole domain with the geometric configuration shown in Fig. 2.
We consider first how the different preconditioners behave with respect to the mesh size h in the case of neutral fracture, i.e. \(K_\tau =10^{-2}\) and \(K_n=10^2\). The number of iterations to reach convergence, along with the corresponding computing time, are shown in Table 3. Note that solving the system with a trivial diagonal preconditioner is extremely inefficient, as expected, and will not be considered in the next tests. We have contemplated it here only to show that the linear system stemming from our problem cannot be solved in practice by an iterative method without resorting to a good preconditioner. Indeed, ABFD_D, ABFTr_D, ABFLU_D provide a significant improvement in performance with timings comparable to the direct solver, particularly in the most refined cases.
Table 3
Setup A: number of iterations to reach convergence with different preconditioners, and computing times by varying the mesh size
 
h = 0.559 (4100 dof)
h = 0.282 (17,220 dof)
h = 0.157 (87,500 dof)
 
It
RelTime
It
RelTime
It
RelTime
GMRES
Diag
471
68.5
2158
147
3460
193.0
ABFD_D
42
3.0
114
2.9
118
2.6
ABFTr_D
23
2.3
56
1.5
54
1.2
ABFLU_D
15
2.0
31
1.0
30
0.8
ABFD_L
1240
211.0
X
X
X
X
ABFTr_L
790
140.0
X
X
X
X
ABFLU_L
87
6.9
619
30.9
1910
113.0
MINRES
Diag
520
19.0
1614
36.7
2915
54.0
ABFD_D
42
2.0
101
2.7
112
2.4
RelTime is the ratio between the actual computing time and the one required for a global solve with the direct method implemented in UMFPACK: note that a small RelTime indicates a good performance of the iterative solver. X means that the iterative solver has not reached convergence in the prescribed number of iterations (20000). We have used polyhedral meshes
The first thing we can note is that the approximation with inner-product lumping is highly ineffective. Therefore, it will not be considered in the next tests. The good results obtained with the diagonal approximation are in line with the finding of Theorem 4. Indeed, it is well known that approximate block triangular and approximate LU preconditioners perform well if the (1, 1)-block matrix and the Schur complement are replaced by spectrally equivalent matrices [38, 55].
GMRES with ABFLU_D outperforms all the other techniques, with a number of iteration rather low and computational time that outperforms UMFPACK for the larger matrix. With the ABFD_D we obtain a slightly better performance with MINRES than with GMRES, as expected. Since memory is also a possible bottleneck we report in Table 4 the memory requirement of UMFPACK, MINRES and GMRES for the cases of Table 3, limited to the block diagonal preconditioner (memory requirement of GMRES with block triangular or LU preconditioners is of the same order). We may note that GMRES is more demanding in terms of memory (as expected) and the memory requested by the direct solver is much higher and grows approximately quadratically with the number of degrees of freedom.
Table 4
Memory requirement for the different method. For the iterative solvers we have considered the block diagonal preconditioner
Memory (in Mbytes)
Dof
MINRES
GMRES
UMFPACK
4100
1.1
2.3
5.8
17,220
6.5
15.6
114
87,500
41.6
63.3
1800
We now examine the robustness of the preconditioner with respect to the parameters of the fracture model \(K_\tau \) and \(K_n\). We consider the permeability values corresponding to the three cases of Fig. 2: \(K_\tau =10^{-2}\), \(K_n=1\) (sealing fracture); \(K_\tau =10^{-2}\), \(K_n=10^2\) (”neutral” fracture); \(K_\tau =1\), \(K_n=10^2\) (conductive fracture). Hereafter, we do not consider the two preconditioners based on the lumping of \(\textsf {M}_c\), nor the Diag preconditioner, which have shown a poor performance. For this test a polyhedral mesh of size \(h=0.208\) has been employed and the corresponding dimension of the linear system is of size 43031. The results, presented in Table 5, show a substantial invariance with respect to parameter changes.
Table 5
Setup A: number of iterations to reach convergence with different preconditioners and computing times obtained by varying the model parameters
 
\(K_\tau =10^{-2}\), \(K_n=1\)
\(K_\tau =10^{-2}\), \(K_n=10^2\)
\(K_\tau =1\), \(K_n=10^2\)
 
It
RelTime
It
RelTime
It
RelTime
GMRES
ABFD_D
119
2.6
112
2.4
121
2.7
ABFTr_D
51
1.2
50
1.2
50
1.2
ABFLU_D
31
0.7
31
0.8
31
0.7
MINRES
ABFDiag_D
116
1.9
112
1.9
119
2.1
RelTime is the ratio of the actual computing time to the one of a global solve with UMFPACK
To complete this first analysis we considered also more demanding problems in terms of number of degrees of freedom, namely 318, 209, 615, 793 and 1, 216, 061, denoted in the following as 300K, 600K and 1.2M respectively. The value of the permeability in the rock matrix is unitary and in the fracture the effective permeabilities are \(K_\tau =10^{-2}\) and \(K_n=10^2\). For practical reasons, we are using here grids made of tetrahedra. In this case UMFPACK is not able to solve the problem because of memory constraints. Therefore, we report two different relative times. The first (indicated by R1) is the ratio between the time taken on a given grid and the time taken by GMRES+ABFLU_D on the same grid. The second (indicated by R2) is the ratio between the time taken on a given grid and the one for the same method on grid 300K.
Table 6
Setup A: number of iterations to reach convergence with different preconditioners and computing times on three different grids of relatively large size
 
300K
600K
1.2M
 
It
R1
R2
It
R1
R2
It
R1
R2
GMRES
ABFD_D
70
3.0
1.0
73
3.1
2.7
74
3.3
8.6
ABFTr_D
39
1.7
1.0
41
1.9
2.83
41
1.8
8.2
ABFLU_D
22
1.0
1.0
22
1.0
2.66
22
1.0
8.0
MINRES
ABFD_D
71
2.7
1.0
73
2.8
2.8
75
3.0
8.7
R1 is the ratio between the time taken for the solution on a given grid and GMRES with ABFLU_D on the same grid. R2 indicates the ratio of the time taken on a given grid and that for the same method on the 300K grid
The results are reported in Table 6. We may note that the results in terms of number of iterations are rather invariant with respect to the mesh size, showing the good scalability of all preconditioners. Moreover, the numbers of iterations are smaller than the ones reported in Table 5. This is explained by the fact that with tetrahedral grids the \(\textsf {M}_c\) matrix is much sparser. Indeed, while the number of elements per row is of the order of 26 for the polyhedral grids we have considered, it drops to 7 for the tetrahedral grids. We have not investigated this behavior further, but it is consistent with similar findings for the 2D case reported in [44], even if for a different discretization scheme. The choice GMRES with ABFLU_D is also in this case the one performing best in terms of both number of iterations and computing time. We can also observe for all preconditioners a power dependence of the computing time on the total number of degrees of freedom with an exponent of about 1.6.

5.4.2 Setup B: Fracture Network Case

We consider now the configuration illustrated in Sect. 4.2. The larger contrasts between the equivalent fracture permeabilities \(K_\tau \) and \(K_n\) and the bulk permeability with respect to the previous set-up and the presence of a full network makes the effect of fractures more important.
Table 7
Setup B: number of iterations and computing time for the different preconditioners and by varying the model parameters
 
\(K_\tau =10^{-3}\), \(K_n=10^{-1}\)
\(K_\tau =10^{-3}\), \(K_n=10^3\)
\(K_\tau =10\), \(K_n=10^3\)
 
It
RelTime
It
RelTime
It
RelTime
GMRES
ABFD_D
136
4.8
159
4.5
170
4.7
ABFTr_D
63
1.8
70
2.0
70
2.0
ABFLU_D
31
1.0
32
1.0
32
1.0
MINRES
ABFD_D
136
3.1
127
2.9
145
3.2
RelTime is the ratio of the actual computing time with the one of a global solve with UMFPACK. We have used polyhedral meshes
Also in this case, illustrated in Table 7, we can confirm the good performance of GMRES with ABFLU_D which has proved to be robust also with respect to variations of the model parameter. The other techniques show a slight degradation of performance compared with the results of the previous, simpler, setup.
Finally, to verify the robustness with respect to parameter contrast, we performed two further tests with high contrast. In particular, we have set a unitary permeability in the bulk, whereas in the fractures permeability is 8 orders of magnitude smaller or larger, leading to effective permeabilities of \(K_\tau =10^{-11}\), \(K_n=10^{-5}\) for the impermeable case, \(K_\tau =10^{5}\), \(K_n=10^{11}\) for the permeable case. We note that for these values, the estimated condition number of the full matrix is approximately \(2\times 10^9\) and \(3\times 10^{11}\), respectively. We are then dealing with rather ill-conditioned problems. The results, shown in Table 8, show that all the proposed ABF preconditioners behaves reasonably well even for large contrast problems, in particular GMRES with ABFLU_D is particularly robust and consistently better performing than the direct solver. We point out that in the test cases of this section, GMRES with ABFD_D has restarted, and this explains the higher number of iterations compared to MINRES (which does not apply restart).
Table 8
Setup B: number of iterations and computing time for the different preconditioners and by varying the model parameters
 
\(K_\tau =10^{-11}\), \(K_n=10^{-5}\)
\(K_\tau =10^{5}\), \(K_n=10^{11}\)
 
It
RelTime
It
RelTime
GMRES
ABFD_D
176
3.9
167
3.7
ABFTr_D
62
1.4
59
1.4
ABFLU_D
34
0.8
32
0.8
MINRES
ABFD_D
138
3.4
137
3.3
RelTime is the ratio of the actual computing time with the one of a global solve with UMFPACK. We have used polyhedral meshes

6 Conclusions

In this work we have assessed the spectral properties of the linear system arising from the mimetic finite differences discretization of a hybrid-dimensional Darcy problem in a fractured porous media. We have then implemented and tested a set of ABF preconditioning techniques for the iterative solution of the discrete problem, proposing a strategy to build the approximation of the factors.
For what concerns the spectral analysis the technique adopted is an extension of that proposed in [50] to take into account the hybrid dimensional nature of the problem. The main finding is that the condition number scales asymptotically as \(O(h^{-3})\), a more restrictive result with respect to mimetic finite differences applied to the standard Darcy equation. The reason lays in the hybrid-dimensional nature of the problem, in particular the presence of the coupling term in the mimetic inner product matrix \(\textsf {M}_c\). To reach this result we had to make an assumption to control the contribution to the spectral estimate coming from the term deriving from the discretization of the problem in the fractures. The conjecture is based on the fact that this term operates only on the 1-codimensional manifold representing the fracture network. We note that this situation is different from that of the standard stabilised Stokes problem, where the (2, 2) block in the Stokes matrix is the discretization of an operator acting on the whole domain. Further work will be needed to prove the conjecture, but numerical experiments seem to confirm it.
We have investigated numerically the effect of different grid size and type, and different values of contrast between bulk and fracture permeability. We have found that rather classic block-diagonal and block-triangular and LU ABF preconditioners, where the mimetic inner product matrix \(\textsf {M}_c\) is replaced by its diagonal and the same technique is adopted to construct the approximation of the Schur complement, work extremely well, showing
  • a good scalability with respect to the mesh size h, despite the non-favorable scaling of the condition number,
  • and robustness also with respect to variations of the problem parameters, in particular GMRES with ABFLU_D.
Further analysis may study the effect of heterogeneity and anisotropy in the permeability tensor. Another line of research would be to test our approximation strategy with the preconditioners for double saddle-point problems recently proposed in [5].

Acknowledgements

The author wish to thank the anonymous reviewers whose comments have helped to improve this paper greatly.

Compliance with ethical standards

Conflicts of interest

The matrices used for the tests are available upon request. The Authors declare that there is no conflict of interest.
Open AccessThis 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/​.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Anhänge

Proof of Lemma 5

Proof
Any singular values \(\widetilde{\textsf {B}}^\textsf {T}\) is the square root of an eigenvalue of
$$\begin{aligned} \widetilde{\textsf {B}}\widetilde{\textsf {B}}^{T}=\begin{bmatrix} \textsf {B}\\ \textsf {C}\end{bmatrix} \begin{bmatrix} \textsf {B}^{T}&\textsf {C}^{T} \end{bmatrix}= \begin{bmatrix} \textsf {B}\textsf {B}^{\textsf {T}} &{} \textsf {B}\textsf {C}^{\textsf {T}} \\ \textsf {C}\textsf {B}^{\textsf {T}} &{} \textsf {C}\textsf {C}^{\textsf {T}} \end{bmatrix}, \end{aligned}$$
which is a full rank matrix, thanks to the discrete inf-sup condition, as proven in [42]. Let us consider each block more closely in order to characterize the elements of the matrix in detail. The block (1, 1) is \(\textsf {B}\textsf {B}^{\textsf {T}}\in {\mathbb {R}}^{N_{\textsf {P}}\times N_{\textsf {P}}}\) and we have
$$\begin{aligned}{}[\textsf {B}\textsf {B}^{\textsf {T}}]_{ij}= {\left\{ \begin{array}{ll} \sum \limits _{\textsf {f}\in \mathscr {F}_h(\textsf {P}_i)}|\textsf {f}|^2 \qquad &{} \text {if} \ i=j \\ -\sum \limits _{\textsf {f}_i\in \mathscr {F}_h(\textsf {P}_i)\cap \mathscr {F}_h(\textsf {P}_j)}|\textsf {f}_i|^2 \qquad &{} \text {if} \ i\ne j. \end{array}\right. } \end{aligned}$$
(60)
Now we focus on block (1, 2), i.e. \(\textsf {B}\textsf {C}^{\textsf {T}}\in {\mathbb {R}}^{N_{\textsf {P}}\times N_{\varGamma }}\). We have
$$\begin{aligned}{}[\textsf {B}\textsf {C}^{\textsf {T}}]_{ij}= {\left\{ \begin{array}{ll} -|\hat{\textsf {f}}_j|^2 \qquad &{} \text {if} \ \mathscr {F}_h(\textsf {P}_i)\cap (\textsf {f}^+(\hat{\textsf {f}}_j)\cup \textsf {f}^-(\hat{\textsf {f}}_j))\ne \emptyset \\ 0 &{} \text {otherwise}. \end{array}\right. } \end{aligned}$$
(61)
Block (2, 1) is just the transpose of the block (1, 2), while block (2, 2), given by \(\textsf {C}\textsf {C}^{\textsf {T}}\in {\mathbb {R}}^{N_{\varGamma }\times N_{\varGamma }}\), is diagonal, with elements
$$\begin{aligned}{}[\textsf {C}\textsf {C}^{\textsf {T}}]_{ij}= {\left\{ \begin{array}{ll} 2|\hat{\textsf {f}}_i|^2 \qquad &{} \text {if} \ i=j \\ 0 \qquad &{} \text {if} \ i\ne j. \end{array}\right. } \end{aligned}$$
(62)
We start by seeking an upper bound for the eigenvalues \(\lambda (\widetilde{\textsf {B}}\widetilde{\textsf {B}}^{\textsf {T}})\) of \(\widetilde{\textsf {B}}\widetilde{\textsf {B}}^{\textsf {T}}\). Thanks to Gershgorin’s Theorem, we have
$$\begin{aligned} \sigma (\widetilde{\textsf {B}}\widetilde{\textsf {B}}^{\textsf {T}})\subseteq {\mathop \bigcup \limits _{i=1}^{N_{\textsf {P}}+N_{\varGamma }}}R_i, \end{aligned}$$
where \(R_i\) are the row circles. From (60)–(62), we note that we have two types of row circles. Indicating by \(x_c^i\) and \(r^i\) the center and the radius of circle \(R_i\), respectively, we have
$$\begin{aligned} x_c^i =&\sum _{\textsf {f}\in \mathscr {F}_h(\textsf {P}_i)}|\textsf {f}|^2, \quad&r^i = \sum _{\textsf {f}\in \mathscr {F}_h(\textsf {P}_i)\setminus \mathscr {F}_h^{\partial \varOmega }}|\textsf {f}|^2,&\text { for } i= 1,\dots ,N_{\textsf {P}},\\ x_c^{i} =&2|\hat{\textsf {f}}_{i-N_{\textsf {P}}}|^2, \quad&r^i = 2|\hat{\textsf {f}}_{i-N_{\textsf {P}}}|^2,&\text { for }i = N_{\textsf {P}},\dots ,N_{\textsf {P}}+N_{\varGamma }. \end{aligned}$$
We can then derive that
$$\begin{aligned} \begin{aligned} \lambda _{max}(\widetilde{\textsf {B}}\widetilde{\textsf {B}}^{\textsf {T}})&\le \max \Biggl \{\max _{\textsf {P}\in \varOmega _h}\biggl (\sum _{\textsf {f}\in \mathscr {F}_h(\textsf {P})}|\textsf {f}|^2+\sum _{\textsf {f}\in \mathscr {F}_h(\textsf {P})\setminus \mathscr {F}_h^{\partial \varOmega }}|\textsf {f}|^2\biggl ),\ 4\max _{\hat{\textsf {f}}\in \varGamma _h}|\hat{\textsf {f}}|^2\Biggl \} \\&\le \max \biggl \{2N^*\max _{\textsf {f}\in \mathscr {F}_h}|\textsf {f}|^2, \ 4\max _{\hat{\textsf {f}}\in \varGamma _h}|\hat{\textsf {f}}|^2\biggl \}=2N^*\max _{\textsf {f}\in \mathscr {F}_h}|\textsf {f}|^2\lesssim h^{2(d-1)}, \end{aligned} \end{aligned}$$
(63)
since \(N^*\ge 2\). The estimate of the smallest eigenvalue requires the additional mesh Assumption 3. To do so we first consider the elements of the vector \(\widetilde{\textsf {B}}^{\textsf {T}}\varvec{\pi }\in {\mathbb {R}}^{N_\textsf {f}}\). For each \(\textsf {f}\in \mathscr {F}_h^0\) we can identify the two adjacent cells \(\textsf {P}_1^\textsf {f}\) and \(\textsf {P}_2^\textsf {f}\) so that \(\alpha _{\textsf {P}_1^\textsf {f},\textsf {f}}=1\) and \(\alpha _{\textsf {P}_2^\textsf {f},\textsf {f}}=-1\). For \(\textsf {f}\in \mathscr {F}_h^{\partial \varOmega }\) we can identify the cell \(\textsf {P}^\textsf {f}\) of which \(\textsf {f}\) is a boundary facet and for \(\textsf {f}\in \mathscr {F}_h^{\varGamma }\) also the corresponding \(\hat{\textsf {f}}\in \varGamma _h\), i.e the fracture cell that coincides geometrically with \(\textsf {f}\). So, for \(1\le i\le N^\textsf {f}\) and indicating with \(\textsf {f}_i\) the ith bulk facet, we have
$$\begin{aligned}{}[\widetilde{\textsf {B}}^{\textsf {T}}\widetilde{{\mathbf {p}}}]_{i}= {\left\{ \begin{array}{ll} -\alpha _{\textsf {P}^{\textsf {f}_i},\textsf {f}_i}|\textsf {f}_i|p_{\textsf {P}^{\textsf {f}_i}}, \qquad &{} \text {if} \ \textsf {f}_i\in \mathscr {F}_h^{\partial \varOmega }, \\ |\textsf {f}_i|(p_{\textsf {P}^{\textsf {f}_i}_2}-p_{\textsf {P}^{\textsf {f}_i}_1}), \qquad &{} \text {if} \ \textsf {f}_i\in \mathscr {F}_h^0, \\ \alpha _{\textsf {P}^{\textsf {f}_i},\textsf {f}_i}|\textsf {f}_i|(p_{\hat{\textsf {f}}}-p_{\textsf {P}^{\textsf {f}_i}}), \qquad &{} \text {if} \ \textsf {f}_i\in \mathscr {F}_h^{\varGamma }. \end{array}\right. } \end{aligned}$$
If we now consider the Rayleigh quotient of \(\widetilde{\textsf {B}}\widetilde{\textsf {B}}^{\textsf {T}}\) we may rearrange the terms to get
$$\begin{aligned} \dfrac{\varvec{\pi }^{\textsf {T}}\widetilde{\textsf {B}}\widetilde{\textsf {B}}^{\textsf {T}}\varvec{\pi }}{\Vert \varvec{\pi }\Vert ^2}= \dfrac{\sum \nolimits _{\textsf {f}\in \mathscr {F}_h^{\partial \varOmega }}|\textsf {f}|^2p_{\textsf {P}^\textsf {f}}^2+\sum \nolimits _{\textsf {f}\in \mathscr {F}_h^0}|\textsf {f}|^2(p_{\textsf {P}^\textsf {f}_2}-p_{\textsf {P}^\textsf {f}_1})^2+ \sum \nolimits _{\textsf {f}\in \mathscr {F}_h^{\varGamma }}|\textsf {f}|^2(p_{\hat{\textsf {f}}}-p_{\textsf {P}^\textsf {f}})^2}{\sum \nolimits _{\textsf {P}\in \varOmega _h}p_{\textsf {P}}^2+\sum \nolimits _{\hat{\textsf {f}}\in \varGamma _h}p_{\hat{\textsf {f}}}^2 }. \end{aligned}$$
We can characterize the smallest eigenvalue as
$$\begin{aligned} \begin{aligned} \lambda _{min}(\widetilde{\textsf {B}}\widetilde{\textsf {B}}^{\textsf {T}})&=\min _{\varvec{\pi }\ne {\mathbf {0}}}\dfrac{\sum \nolimits _{\textsf {f}\in \mathscr {F}_h^{\partial \varOmega }}|\textsf {f}|^2p_{\textsf {P}^\textsf {f}}^2+\sum \nolimits _{\textsf {f}\in \mathscr {F}_h^0}|\textsf {f}|^2(p_{\textsf {P}^\textsf {f}_2}-p_{\textsf {P}^\textsf {f}_1})^2+\sum \nolimits _{\textsf {f}\in \mathscr {F}_h^{\varGamma }}|\textsf {f}|^2(p_{\hat{\textsf {f}}}-p_{\textsf {P}^\textsf {f}})^2}{\sum \nolimits _{\textsf {P}\in \varOmega _h}p_{\textsf {P}}^2+\sum \nolimits _{\hat{\textsf {f}}\in \varGamma _h}p_{\hat{\textsf {f}}}^2 }\\&\ge \min \nolimits _{\textsf {f}\in \mathscr {F}_h}|\textsf {f}|^2\min _{\varvec{\pi }\ne {\mathbf {0}}}\dfrac{\sum \nolimits _{\textsf {f}\in \mathscr {F}_h^{\partial \varOmega }}p_{\textsf {P}^\textsf {f}}^2+\sum \nolimits _{\textsf {f}\in \mathscr {F}_h^0}(p_{\textsf {P}^\textsf {f}_2}-p_{\textsf {P}^\textsf {f}_1})^2+\sum \nolimits _{\textsf {f}\in \mathscr {F}_h^{\varGamma }}(p_{\hat{\textsf {f}}}-p_{\textsf {P}^\textsf {f}})^2}{\sum \nolimits _{\textsf {P}\in \varOmega _h}p_{\textsf {P}}^2+\sum \nolimits _{\hat{\textsf {f}}\in \varGamma _h}p_{\hat{\textsf {f}}}^2 }. \end{aligned} \end{aligned}$$
We now order the elements of \(\varLambda _h\) path by path. Therefore, \(\varvec{\pi }=[{\mathbf {p}},{\mathbf {p}}_\varGamma ]^T\) may be partitioned in \([\varvec{\pi }_1,\dots ,\varvec{\pi }_{N_{\zeta _i}}]^{\textsf {T}}\), where \(\varvec{\pi }_i=[{\pi }_{c_{s,i}},\dots ,{\pi }_{c_{e,i}}]^{\textsf {T}}\) are the pressure values (either in the bulk or in the fracture) associated to the cells in path \(\zeta _i\). For each graph edge e of \(\zeta _i\) we indicate with \({\pi }_{e_{1,i}}\) and \({\pi }_{e_{2,i}}\) the elements of \(\varvec{\pi }_i\) associated to the cells at end of the edge. Since \(|\textsf {f}|\gtrsim h^{d-1}\), we have
$$\begin{aligned} \lambda _{min}(\widetilde{\textsf {B}}\widetilde{\textsf {B}}^{\textsf {T}}) \gtrsim h^{2(d-1)}\min _{\varvec{\pi }\ne {\mathbf {0}}}\dfrac{\sum \nolimits _{i=1}^{N_{\gamma }}\biggl ({\pi }_{c_{s,i}}^2+\sum \nolimits _{e\in \zeta _i}(\pi _{e_{2,i}}-\pi _{e_{1,i}})^2+\pi _{c_{e,i}}^2\biggl )}{\sum \nolimits _{c\in \varLambda _h}\pi _c^2}. \end{aligned}$$
The last term is equivalent to the Rayleigh coefficient of the block diagonal matrix
$$\begin{aligned} \varSigma =\textsf {diag}(\textsf {E}_1,\textsf {E}_2,\dots ,\textsf {E}_{N_{\gamma -1}},\textsf {E}_{N_{\gamma }})\in {\mathbb {R}}^{(N_{\textsf {P}}+N_{\varGamma })\times (N_{\textsf {P}}+N_{\varGamma })}, \end{aligned}$$
where \(\textsf {E}_i=\textsf {tridiag}(-1,2,-1)\in {\mathbb {R}}^{L_i\times Li}\). The eigenvalues of \(\textsf {E}_i\) can be computed explicitly as
$$\begin{aligned} \lambda _j(\textsf {E}_i)=2\biggl (1-\cos \dfrac{L_i+1-j}{L_i+1}\biggl ), \qquad j=1,\dots ,L_i. \end{aligned}$$
Therefore, \(\lambda _{min}(\textsf {E}_i)=2\biggl (1-\cos \dfrac{1}{L_i+1}\biggl )\), and, from Assumption 3 on the maximum length of the paths,
$$\begin{aligned} \lambda _{min}(\varSigma )\ge \min _{i=1,\dots ,N_{\gamma }}\lambda _{L_i}(\textsf {E}_i)=2\min _{i=1,\dots ,N_{\gamma }}\biggl (1-\cos \dfrac{1}{L_i+1}\biggl ) \ge \biggl (1-\cos \dfrac{1}{L_*h^{-1}+1}\biggl ). \end{aligned}$$
Finally,
$$\begin{aligned} \lambda _{min}(\widetilde{\textsf {B}}\widetilde{\textsf {B}}^{\textsf {T}}) \gtrsim h^{2(d-1)}\lambda _{min}(\varSigma ) \gtrsim h^{2(d-1)}\biggl (1-\cos \dfrac{h}{L_*+h}\biggl ). \end{aligned}$$
For sufficiently small h it holds that \(1-\cos \frac{h}{L_*+h}\le \frac{h^2}{2L_*^{{2}}}\), by which we can conclude that
$$\begin{aligned} \mu _{min}^{\widetilde{\textsf {B}}}=\sqrt{\lambda _{min}(\widetilde{\textsf {B}}\widetilde{\textsf {B}}^{\textsf {T}})} \gtrsim h^{d}. \end{aligned}$$
(64)
\(\square \)
Fußnoten
1
The optimal value, corresponding to a parabolic variation, can be either \(\xi _0=1/8\) or \(\xi _0=1/12\), depending on the measure used for the model error, for a recent discussion on the matter see also [46].
 
2
We point out that the term K-orthogonality is common in the context of flows in fractured porous media and that is used (thought stated differently) in the framework of the discretization of the diffusion operator with finite volumes, see [39]. If \(\textsf {K}\) is isotropic, it coincides with the so-called orthogonality condition [37, 40], which is purely geometrical.
 
3
We also note that the problem is well posed even if \(\widetilde{\textsf {T}}={\mathbf {0}}\). In this case, if also \({\mathbf {h}}_{\varGamma }={\mathbf {0}}\) we have \(\llbracket \varvec{u}\cdot {\mathbf {n}}_\varGamma \rrbracket _{{\hat{f}}}=0\) for all \({\hat{f}}\in \varGamma _h\), and \(\varvec{p}_\varGamma \) is the vector of Lagrange multipliers imposing this condition.
 
4
We may note that without Conjecture 1 we will have in (34) that for \(\lambda ^{-,{\mathcal {A}}}_{min}\) the term \(\zeta \lambda ^{\widetilde{\textsf {T}}}_{max}\) is of order \(h^{d-3}\). This will imply a condition number \(K_2({\mathcal {A}})\) of the order \(h^{-4}\), much more restrictive.
 
5
More precisely it falls under the class of constraint preconditioners, see [21] for more details. A constraint preconditioner has the same block structure of the original matrix. Therefore, a saddle-point matrix is preconditioned by another saddle-point matrix that can be inverted in an easier way.
 
6
We observe that the approximate block LU preconditioner based on employing the diagonal part of \(\textsf {M}_c\) mimics the well-known SIMPLE preconditioning (see [38]) used in computational fluid dynamics.
 
Literatur
2.
Zurück zum Zitat Aghili, J., Brenner, K., Hennicker, J., Masson, R., Trenty, L.: Two-phase discrete fracture matrix models with linear and nonlinear transmission conditions. GEM Int. J. Geomath. 10(1), 1 (2019)MathSciNet Aghili, J., Brenner, K., Hennicker, J., Masson, R., Trenty, L.: Two-phase discrete fracture matrix models with linear and nonlinear transmission conditions. GEM Int. J. Geomath. 10(1), 1 (2019)MathSciNet
3.
Zurück zum Zitat Al-Hinai, O., Srinivasan, S., Wheeler, M.F.: Mimetic finite differences for flow in fractures from microseismic data. In: SPE Reservoir Simulation Symposium, 23–25 February, Houston, Texas, USA. Society of Petroleum Engineers (2015) Al-Hinai, O., Srinivasan, S., Wheeler, M.F.: Mimetic finite differences for flow in fractures from microseismic data. In: SPE Reservoir Simulation Symposium, 23–25 February, Houston, Texas, USA. Society of Petroleum Engineers (2015)
4.
Zurück zum Zitat Alboin, C., Jaffré, J., Roberts, J.E., Wang, X., Serres, C.: Domain decomposition for some transmission problems in flow in porous media. In: Chen, Z., Ewing, R.E., Shi, Z.C. (eds.) Numerical Treatment of Multiphase Flows in Porous Media. Lecture Notes in Physics, vol. 552, pp. 22–34. Springer, Berlin (2000) Alboin, C., Jaffré, J., Roberts, J.E., Wang, X., Serres, C.: Domain decomposition for some transmission problems in flow in porous media. In: Chen, Z., Ewing, R.E., Shi, Z.C. (eds.) Numerical Treatment of Multiphase Flows in Porous Media. Lecture Notes in Physics, vol. 552, pp. 22–34. Springer, Berlin (2000)
5.
Zurück zum Zitat Ali Beik, F.P., Benzi, M.: Iterative methods for double saddle point systems. SIAM J. Matrix Anal. Appl. 39(2), 902–921 (2018)MathSciNet Ali Beik, F.P., Benzi, M.: Iterative methods for double saddle point systems. SIAM J. Matrix Anal. Appl. 39(2), 902–921 (2018)MathSciNet
6.
Zurück zum Zitat Angot, P., Boyer, F., Hubert, F.: Asymptotic and numerical modelling of flows in fractured porous media. ESAIM Math. Model. Numer. Anal. 43(2), 239–275 (2009)MathSciNet Angot, P., Boyer, F., Hubert, F.: Asymptotic and numerical modelling of flows in fractured porous media. ESAIM Math. Model. Numer. Anal. 43(2), 239–275 (2009)MathSciNet
7.
Zurück zum Zitat Antonietti, P.F., Beirão da Veiga, L., Lovadina, C., Verani, M.: Hierarchical a posteriori error estimators for the mimetic discretization of elliptic problems. SIAM J. Numer. Anal. 51(1), 654–675 (2013)MathSciNet Antonietti, P.F., Beirão da Veiga, L., Lovadina, C., Verani, M.: Hierarchical a posteriori error estimators for the mimetic discretization of elliptic problems. SIAM J. Numer. Anal. 51(1), 654–675 (2013)MathSciNet
8.
Zurück zum Zitat Antonietti, P.F., Beirão da Veiga, L., Verani, M.: A mimetic discretization of elliptic obstacle problems. Math. Comput. 82(283), 1379–1400 (2013)MathSciNet Antonietti, P.F., Beirão da Veiga, L., Verani, M.: A mimetic discretization of elliptic obstacle problems. Math. Comput. 82(283), 1379–1400 (2013)MathSciNet
9.
Zurück zum Zitat Antonietti, P.F., Bigoni, N., Verani, M.: Mimetic discretizations of elliptic control problems. J. Sci. Comput. 56(1), 14–27 (2013)MathSciNet Antonietti, P.F., Bigoni, N., Verani, M.: Mimetic discretizations of elliptic control problems. J. Sci. Comput. 56(1), 14–27 (2013)MathSciNet
10.
Zurück zum Zitat Antonietti, P.F., Facciolà, C., Russo, A., Verani, M.: Discontinuous Galerkin approximation of flows in fractured porous media. SIAM J. Sci. Comput. 41(1), A109–A138 (2019)MathSciNet Antonietti, P.F., Facciolà, C., Russo, A., Verani, M.: Discontinuous Galerkin approximation of flows in fractured porous media. SIAM J. Sci. Comput. 41(1), A109–A138 (2019)MathSciNet
11.
Zurück zum Zitat Antonietti, P.F., Facciolà, C., Verani, M.: Unified analysis of discontinuous Galerkin approximations of flows in fractured porous media on polygonal and polyhedral grids. Math. Eng. 2, 340 (2020)MathSciNet Antonietti, P.F., Facciolà, C., Verani, M.: Unified analysis of discontinuous Galerkin approximations of flows in fractured porous media on polygonal and polyhedral grids. Math. Eng. 2, 340 (2020)MathSciNet
12.
Zurück zum Zitat Antonietti, P.F., Formaggia, L., Scotti, A., Verani, M., Verzotti, N.: Mimetic finite difference approximation of flows in fractured porous media. ESAIM Math. Model. Numer. Anal. 50(3), 809–832 (2016)MathSciNet Antonietti, P.F., Formaggia, L., Scotti, A., Verani, M., Verzotti, N.: Mimetic finite difference approximation of flows in fractured porous media. ESAIM Math. Model. Numer. Anal. 50(3), 809–832 (2016)MathSciNet
13.
Zurück zum Zitat Antonietti, P.F., Giani, S., Houston, P.: \(hp\)-version composite discontinuous Galerkin methods for elliptic problems on complicated domains. SIAM J. Sci. Comput. 35(3), A1417–A1439 (2013)MathSciNet Antonietti, P.F., Giani, S., Houston, P.: \(hp\)-version composite discontinuous Galerkin methods for elliptic problems on complicated domains. SIAM J. Sci. Comput. 35(3), A1417–A1439 (2013)MathSciNet
14.
Zurück zum Zitat Beirão da Veiga, L., Brezzi, F., Cangiani, A., Manzini, G., Marini, L.D., Russo, A.: Basic principles of virtual element methods. Math. Models Methods Appl. Sci. 23(1), 199–214 (2013)MathSciNet Beirão da Veiga, L., Brezzi, F., Cangiani, A., Manzini, G., Marini, L.D., Russo, A.: Basic principles of virtual element methods. Math. Models Methods Appl. Sci. 23(1), 199–214 (2013)MathSciNet
15.
Zurück zum Zitat Beirão da Veiga, L., Brezzi, F., Marini, L.D., Russo, A.: Mixed virtual element methods for general second order elliptic problems on polygonal meshes. ESAIM Math. Model. Numer. Anal. 50(3), 727–747 (2016)MathSciNet Beirão da Veiga, L., Brezzi, F., Marini, L.D., Russo, A.: Mixed virtual element methods for general second order elliptic problems on polygonal meshes. ESAIM Math. Model. Numer. Anal. 50(3), 727–747 (2016)MathSciNet
16.
Zurück zum Zitat Beirão da Veiga, L., Brezzi, F., Marini, L.D., Russo, A.: Virtual element method for general second-order elliptic problems on polygonal meshes. Math. Models Methods Appl. Sci. 26(4), 729–750 (2016)MathSciNet Beirão da Veiga, L., Brezzi, F., Marini, L.D., Russo, A.: Virtual element method for general second-order elliptic problems on polygonal meshes. Math. Models Methods Appl. Sci. 26(4), 729–750 (2016)MathSciNet
17.
Zurück zum Zitat Beirão da Veiga, L., Lipnikov, K., Manzini, G.: Arbitrary-order nodal mimetic discretizations of elliptic problems on polygonal meshes. SIAM J. Numer. Anal. 49(5), 1737–1760 (2011)MathSciNet Beirão da Veiga, L., Lipnikov, K., Manzini, G.: Arbitrary-order nodal mimetic discretizations of elliptic problems on polygonal meshes. SIAM J. Numer. Anal. 49(5), 1737–1760 (2011)MathSciNet
18.
Zurück zum Zitat Beirão da Veiga, L., Lipnikov, K., Manzini, G.: The Mimetic Finite Difference Method for Elliptic Problems, MS&A. Modeling, Simulation and Applications, vol. 11. Springer, Cham (2014) Beirão da Veiga, L., Lipnikov, K., Manzini, G.: The Mimetic Finite Difference Method for Elliptic Problems, MS&A. Modeling, Simulation and Applications, vol. 11. Springer, Cham (2014)
19.
Zurück zum Zitat Beirão da Veiga, L., Lovadina, C., Mora, D.: Numerical results for mimetic discretization of Reissner–Mindlin plate problems. Calcolo 50(3), 209–237 (2013)MathSciNet Beirão da Veiga, L., Lovadina, C., Mora, D.: Numerical results for mimetic discretization of Reissner–Mindlin plate problems. Calcolo 50(3), 209–237 (2013)MathSciNet
20.
Zurück zum Zitat Benedetto, M.F., Borio, A., F., K., Mollica, J., Scialò, S.: An Arbitrary Order Mixed Virtual Element formulation for Coupled Multi-dimensional Flow Problems (2020). arXiv:2001.11309v1 Benedetto, M.F., Borio, A., F., K., Mollica, J., Scialò, S.: An Arbitrary Order Mixed Virtual Element formulation for Coupled Multi-dimensional Flow Problems (2020). arXiv:​2001.​11309v1
21.
Zurück zum Zitat Benzi, M., Golub, G.H., Liesen, J.: Numerical solution of saddle point problems. Acta Numerica 14, 1–137 (2005)MathSciNet Benzi, M., Golub, G.H., Liesen, J.: Numerical solution of saddle point problems. Acta Numerica 14, 1–137 (2005)MathSciNet
22.
Zurück zum Zitat Bergamaschi, L., Ferronato, M., Gambolati, G.: Mixed constraint preconditioners for the iterative solution of FE coupled consolidation equations. J. Comput. Phys. 227(23), 9885–9897 (2008)MathSciNet Bergamaschi, L., Ferronato, M., Gambolati, G.: Mixed constraint preconditioners for the iterative solution of FE coupled consolidation equations. J. Comput. Phys. 227(23), 9885–9897 (2008)MathSciNet
23.
Zurück zum Zitat Boffi, D., Brezzi, F., Fortin, M.: Mixed Finite Element Methods and Applications, Springer Series in Computational Mathematics, vol. 44. Springer, Heidelberg (2013) Boffi, D., Brezzi, F., Fortin, M.: Mixed Finite Element Methods and Applications, Springer Series in Computational Mathematics, vol. 44. Springer, Heidelberg (2013)
24.
Zurück zum Zitat Boon, W.M., Nordbotten, J.M., Yotov, I.: Robust discretization of flow in fractured porous media. SIAM J. Numer. Anal. 56(4), 2203–2233 (2018)MathSciNet Boon, W.M., Nordbotten, J.M., Yotov, I.: Robust discretization of flow in fractured porous media. SIAM J. Numer. Anal. 56(4), 2203–2233 (2018)MathSciNet
25.
Zurück zum Zitat Brenner, K., Hennicker, J., Masson, R., Samier, P.: Gradient discretization of hybrid-dimensional Darcy flow in fractured porous media with discontinuous pressures at matrix-fracture interfaces. IMA J. Numer. Anal. 37(3), 1551–1585 (2017)MathSciNet Brenner, K., Hennicker, J., Masson, R., Samier, P.: Gradient discretization of hybrid-dimensional Darcy flow in fractured porous media with discontinuous pressures at matrix-fracture interfaces. IMA J. Numer. Anal. 37(3), 1551–1585 (2017)MathSciNet
26.
Zurück zum Zitat Brenner, K., Hennicker, J., Masson, R., Samier, P.: Hybrid-dimensional modelling of two-phase flow through fractured porous media with enhanced matrix fracture transmission conditions. J. Comput. Phys. 357, 100–124 (2018)MathSciNet Brenner, K., Hennicker, J., Masson, R., Samier, P.: Hybrid-dimensional modelling of two-phase flow through fractured porous media with enhanced matrix fracture transmission conditions. J. Comput. Phys. 357, 100–124 (2018)MathSciNet
27.
Zurück zum Zitat Brezzi, F., Buffa, A.: Innovative mimetic discretizations for electromagnetic problems. J. Comput. Appl. Math. 234(6), 1980–1987 (2010)MathSciNet Brezzi, F., Buffa, A.: Innovative mimetic discretizations for electromagnetic problems. J. Comput. Appl. Math. 234(6), 1980–1987 (2010)MathSciNet
28.
Zurück zum Zitat Brezzi, F., Lipnikov, K., Shashkov, M.: Convergence of the mimetic finite difference method for diffusion problems on polyhedral meshes. SIAM J. Numer. Anal. 43(5), 1872–1896 (2005)MathSciNet Brezzi, F., Lipnikov, K., Shashkov, M.: Convergence of the mimetic finite difference method for diffusion problems on polyhedral meshes. SIAM J. Numer. Anal. 43(5), 1872–1896 (2005)MathSciNet
29.
Zurück zum Zitat Brezzi, F., Lipnikov, K., Shashkov, M.: Convergence of mimetic finite difference method for diffusion problems on polyhedral meshes with curved faces. Math. Models Methods Appl. Sci. 16(2), 275–297 (2006)MathSciNet Brezzi, F., Lipnikov, K., Shashkov, M.: Convergence of mimetic finite difference method for diffusion problems on polyhedral meshes with curved faces. Math. Models Methods Appl. Sci. 16(2), 275–297 (2006)MathSciNet
30.
Zurück zum Zitat Brezzi, F., Lipnikov, K., Simoncini, V.: A family of mimetic finite difference methods on polygonal and polyhedral meshes. Math. Models Methods Appl. Sci. 15(10), 1533–1551 (2005)MathSciNet Brezzi, F., Lipnikov, K., Simoncini, V.: A family of mimetic finite difference methods on polygonal and polyhedral meshes. Math. Models Methods Appl. Sci. 15(10), 1533–1551 (2005)MathSciNet
33.
Zurück zum Zitat Chave, F., Di Pietro, D.A., Formaggia, L.: A hybrid high-order method for Darcy flows in fractured porous media. SIAM J. Sci. Comput. 40(2), A1063–A1094 (2018)MathSciNet Chave, F., Di Pietro, D.A., Formaggia, L.: A hybrid high-order method for Darcy flows in fractured porous media. SIAM J. Sci. Comput. 40(2), A1063–A1094 (2018)MathSciNet
34.
Zurück zum Zitat Chen, Y., Davis, T.A., Hager, W.W., Rajamanickam, S.: Algorithm 887: CHOLMOD, supernodal sparse Cholesky factorization and update/downdate. ACM Trans. Math. Softw. 35(3), 1–14 (2008)MathSciNet Chen, Y., Davis, T.A., Hager, W.W., Rajamanickam, S.: Algorithm 887: CHOLMOD, supernodal sparse Cholesky factorization and update/downdate. ACM Trans. Math. Softw. 35(3), 1–14 (2008)MathSciNet
35.
Zurück zum Zitat Davis, T.A.: Algorithm 832: UMFPACK V4.3—an unsymmetric-pattern multifrontal method. ACM Trans. Math. Softw. 30(2), 196–199 (2004)MathSciNet Davis, T.A.: Algorithm 832: UMFPACK V4.3—an unsymmetric-pattern multifrontal method. ACM Trans. Math. Softw. 30(2), 196–199 (2004)MathSciNet
36.
Zurück zum Zitat Di Pietro, D.A., Ern, A.: Hybrid high-order methods for variable-diffusion problems on general meshes. C. R. Math. 353(1), 31–34 (2015)MathSciNet Di Pietro, D.A., Ern, A.: Hybrid high-order methods for variable-diffusion problems on general meshes. C. R. Math. 353(1), 31–34 (2015)MathSciNet
37.
Zurück zum Zitat Droniou, J.: Finite volume schemes for diffusion equations: introduction to and review of modern methods. Math. Models Methods Appl. Sci. 24(08), 1575–1619 (2014)MathSciNet Droniou, J.: Finite volume schemes for diffusion equations: introduction to and review of modern methods. Math. Models Methods Appl. Sci. 24(08), 1575–1619 (2014)MathSciNet
38.
Zurück zum Zitat Elman, H.C., Silvester, D.J., Wathen, A.J.: Finite Elements and Fast Iterative Solvers with Applications in Incompressible Fluid Dynamics. Numerical Mathematics and Scientific Computation, 2nd edn. Oxford University Press, Oxford (2014) Elman, H.C., Silvester, D.J., Wathen, A.J.: Finite Elements and Fast Iterative Solvers with Applications in Incompressible Fluid Dynamics. Numerical Mathematics and Scientific Computation, 2nd edn. Oxford University Press, Oxford (2014)
40.
Zurück zum Zitat Eymard, R., Gallouët, T., Herbin, R., Latché, J.C.: Analysis tools for finite volume schemes. Acta Mathematica Universitatis Comenianae. New Series 76(1), 111–136 (2007)MathSciNet Eymard, R., Gallouët, T., Herbin, R., Latché, J.C.: Analysis tools for finite volume schemes. Acta Mathematica Universitatis Comenianae. New Series 76(1), 111–136 (2007)MathSciNet
41.
Zurück zum Zitat Formaggia, L., Fumagalli, A., Scotti, A., Ruffo, P.: A reduced model for Darcy’s problem in networks of fractures. ESAIM Math. Model. Numer. Anal. 48(4), 1089–1116 (2014)MathSciNet Formaggia, L., Fumagalli, A., Scotti, A., Ruffo, P.: A reduced model for Darcy’s problem in networks of fractures. ESAIM Math. Model. Numer. Anal. 48(4), 1089–1116 (2014)MathSciNet
42.
Zurück zum Zitat Formaggia, L., Scotti, A., Sottocasa, F.: Analysis of a mimetic finite difference approximation of flows in fractured porous media. ESAIM Math. Model. Numer. Anal. 52(2), 595–630 (2018)MathSciNet Formaggia, L., Scotti, A., Sottocasa, F.: Analysis of a mimetic finite difference approximation of flows in fractured porous media. ESAIM Math. Model. Numer. Anal. 52(2), 595–630 (2018)MathSciNet
43.
Zurück zum Zitat Fumagalli, A., Scotti, A.: A numerical method for two-phase flow in fractured porous media with non-matching grids. Adv. Water Resour. 62(Part C), 454–464 (2013) Fumagalli, A., Scotti, A.: A numerical method for two-phase flow in fractured porous media with non-matching grids. Adv. Water Resour. 62(Part C), 454–464 (2013)
44.
Zurück zum Zitat Fumagalli, A., Scotti, A., Formaggia, L.: Performances of the Mixed Virtual Element Method on Complex Grids for Underground Flow (2020). arXiv:2002.11974 Fumagalli, A., Scotti, A., Formaggia, L.: Performances of the Mixed Virtual Element Method on Complex Grids for Underground Flow (2020). arXiv:​2002.​11974
45.
Zurück zum Zitat Fumagalli, A., Zonca, S., Formaggia, L.: Advances in computation of local problems for a flow-based upscaling in fractured reservoirs. Math. Comput. Simul. 137, 299–324 (2017)MathSciNet Fumagalli, A., Zonca, S., Formaggia, L.: Advances in computation of local problems for a flow-based upscaling in fractured reservoirs. Math. Comput. Simul. 137, 299–324 (2017)MathSciNet
47.
Zurück zum Zitat Jaffré, J., Mnejja, M., Roberts, J.E.: A discrete fracture model for two-phase flow with matrix–fracture interaction. Proc. Comput. Sci. 4, 967–973 (2011) Jaffré, J., Mnejja, M., Roberts, J.E.: A discrete fracture model for two-phase flow with matrix–fracture interaction. Proc. Comput. Sci. 4, 967–973 (2011)
48.
Zurück zum Zitat Lipnikov, K., Moulton, J.D., Svyatskiy, D.: A multilevel multiscale mimetic \(({\rm M}^3)\) method for two-phase flows in porous media. J. Comput. Phys. 227(14), 6727–6753 (2008)MathSciNet Lipnikov, K., Moulton, J.D., Svyatskiy, D.: A multilevel multiscale mimetic \(({\rm M}^3)\) method for two-phase flows in porous media. J. Comput. Phys. 227(14), 6727–6753 (2008)MathSciNet
49.
Zurück zum Zitat Loghin, D., Wathen, A.J.: Analysis of preconditioners for saddle-point problems. SIAM J. Sci. Comput. 25(6), 2029–2049 (2004)MathSciNet Loghin, D., Wathen, A.J.: Analysis of preconditioners for saddle-point problems. SIAM J. Sci. Comput. 25(6), 2029–2049 (2004)MathSciNet
50.
Zurück zum Zitat Lopez, L., Vacca, G.: Spectral properties and conservation laws in mimetic finite difference methods for PDEs. J. Comput. Appl. Math. 292, 760–784 (2016)MathSciNet Lopez, L., Vacca, G.: Spectral properties and conservation laws in mimetic finite difference methods for PDEs. J. Comput. Appl. Math. 292, 760–784 (2016)MathSciNet
51.
Zurück zum Zitat Martin, V., Jaffré, J., Roberts, J.E.: Modeling fractures and barriers as interfaces for flow in porous media. SIAM J. Sci. Comput. 26(5), 1667–1691 (2005)MathSciNet Martin, V., Jaffré, J., Roberts, J.E.: Modeling fractures and barriers as interfaces for flow in porous media. SIAM J. Sci. Comput. 26(5), 1667–1691 (2005)MathSciNet
52.
Zurück zum Zitat Paige, C.C., Saunders, M.A.: Solution of sparse indefinite systems of linear equations. ACM Trans. Math. Softw. 12, 617–629 (1975)MathSciNet Paige, C.C., Saunders, M.A.: Solution of sparse indefinite systems of linear equations. ACM Trans. Math. Softw. 12, 617–629 (1975)MathSciNet
53.
Zurück zum Zitat Saad, Y., Schultz, M.H.: GMRES: a generalized minimal residual algorithm for solving nonsymmetric linear systems. SIAM J. Sci. Stat. Comput. 7(3), 856–869 (1986)MathSciNet Saad, Y., Schultz, M.H.: GMRES: a generalized minimal residual algorithm for solving nonsymmetric linear systems. SIAM J. Sci. Stat. Comput. 7(3), 856–869 (1986)MathSciNet
54.
Zurück zum Zitat Schwenck, N., Flemisch, B., Helmig, R., Wohlmuth, B.I.: Dimensionally reduced flow models in fractured porous media: crossings and boundaries. Comput. Geosci. 19(6), 1219–1230 (2015)MathSciNet Schwenck, N., Flemisch, B., Helmig, R., Wohlmuth, B.I.: Dimensionally reduced flow models in fractured porous media: crossings and boundaries. Comput. Geosci. 19(6), 1219–1230 (2015)MathSciNet
55.
Zurück zum Zitat Silvester, D., Wathen, A.: Fast iterative solution of stabilised Stokes systems part II: using general block preconditioners. SIAM J. Numer. Anal. 31(5), 1352–1367 (1994)MathSciNet Silvester, D., Wathen, A.: Fast iterative solution of stabilised Stokes systems part II: using general block preconditioners. SIAM J. Numer. Anal. 31(5), 1352–1367 (1994)MathSciNet
56.
Zurück zum Zitat Tunc, X., Faille, I., Gallouët, T., Cacas, M.C., Havé, P.: A model for conductive faults with non-matching grids. Comput. Geosci. 16(2), 277–296 (2012) Tunc, X., Faille, I., Gallouët, T., Cacas, M.C., Havé, P.: A model for conductive faults with non-matching grids. Comput. Geosci. 16(2), 277–296 (2012)
57.
Zurück zum Zitat Wathen, A., Silvester, D.: Fast iterative solution of stabilised Stokes systems. Part I: using simple diagonal preconditioners. SIAM J. Numer. Anal. 30(3), 630–649 (1993)MathSciNet Wathen, A., Silvester, D.: Fast iterative solution of stabilised Stokes systems. Part I: using simple diagonal preconditioners. SIAM J. Numer. Anal. 30(3), 630–649 (1993)MathSciNet
58.
Zurück zum Zitat Wathen, A.J.: Realistic eigenvalue bounds for the Galerkin mass matrix. IMA J. Numer. Anal. 7(4), 449–457 (1987)MathSciNet Wathen, A.J.: Realistic eigenvalue bounds for the Galerkin mass matrix. IMA J. Numer. Anal. 7(4), 449–457 (1987)MathSciNet
59.
Metadaten
Titel
Preconditioning Techniques for the Numerical Solution of Flow in Fractured Porous Media
verfasst von
Paola F. Antonietti
Jacopo De Ponti
Luca Formaggia
Anna Scotti
Publikationsdatum
01.01.2021
Verlag
Springer US
Erschienen in
Journal of Scientific Computing / Ausgabe 1/2021
Print ISSN: 0885-7474
Elektronische ISSN: 1573-7691
DOI
https://doi.org/10.1007/s10915-020-01372-0

Weitere Artikel der Ausgabe 1/2021

Journal of Scientific Computing 1/2021 Zur Ausgabe