1 Introduction
2 Mathematical Model and Its Numerical Approximation
2.1 Weak Formulation
2.2 Numerical Scheme
-
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}$$
2.3 The Algebraic System
3 Spectral Properties of the Governing System of Equations
-
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}}\).
-
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 thatwhere \(L_i\) is the number of cells in \(\zeta _i\).$$\begin{aligned} L_i\le L^*h^{-1}, \qquad i=1,\ldots ,N_{\gamma }, \end{aligned}$$
4 Preconditioning Techniques for the Discrete Generalized Saddle-Point System
4.1 Block Diagonal Preconditioner
4.2 Block Triangular Preconditioner
4.3 Block LU Preconditioner
5 Numerical Tests
5.1 Setup A: Single Fracture Case
5.2 Setup B: Fracture Network
5.3 Spectral Properties of the Matrix
eigs
function of MATLAB
®.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 |
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 |
5.4 Testing the Preconditioners
5.4.1 Setup A: Single Fracture Case
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 |
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 |
\(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 |
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 |
5.4.2 Setup B: Fracture Network Case
\(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 |
\(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 |
6 Conclusions
-
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.