1 Introduction to poroelasticity problem

Poroelasticity theory describes the interaction between the deformation of an elastic porous material and the fluid flow inside of it. This coupling was already taken into account in the early one-dimensional work of Terzaghi, considered the father of soil mechanics, which was based on laboratory experimentation, see [38]. However, Maurice Biot, known as the founder of the theory of poroelasticity, was who established the three-dimensional mathematical formulation in the forties, see for example [2]. Nowadays, the analysis and numerical simulation of Biot’s models has become a trend topic due to their wide range of applications, and therefore, the study of this type of problems is of great interest to scientists and engineers. Biot’s models are used today in a great variety of fields, ranging from geomechanics and petrol engineering, where these models have been applied ever since its inception, to biomechanics or even food processing more recently. Some examples of applications in geosciences include petroleum production, solid waste disposal, carbon sequestration, soil consolidation, glaciers dynamics, subsidence, liquefaction and hydraulic fracturing, for instance. In biomechanics, the poroelastic theory can be used to describe tumor-induced stresses in the brain (see [34]), which can cause deformation of the surrounding tissue, and bone deformation under a mechanical load (see [37]), for example.

We consider the quasi-static Biot model for soil consolidation. We assume the porous medium to be linearly elastic, homogeneous, isotropic and saturated by an incompressible Newtonian fluid. According to Biot’s theory [2], the consolidation process must satisfy the following system of equations:

$$\begin{aligned} \text{ Equilibrium } \text{ equation: }&\mathrm{div} \, {\varvec{\sigma }}' - \alpha \nabla \, p = {\mathbf g}, \quad \mathrm{in} \; \Omega , \end{aligned}$$
(1)
$$\begin{aligned} \text{ Constitutive } \text{ equation: }&{\varvec{\sigma }}' = \lambda \mathrm{tr}(\varvec{\epsilon }) {\mathbf I} + 2 \mu {\varvec{\epsilon }}, \quad \mathrm{in} \; \Omega , \end{aligned}$$
(2)
$$\begin{aligned} \text{ Compatibility } \text{ condition: }&{\varvec{\epsilon }}({\mathbf u}) = \frac{1}{2}(\nabla {\mathbf u} + \nabla {\mathbf u}^t), \quad \mathrm{in} \; \Omega , \end{aligned}$$
(3)
$$\begin{aligned} \text{ Darcy }\hbox {'s law:}&\mathbf {q} = - \frac{\kappa }{\eta } \nabla p, \quad \mathrm{in} \; \Omega , \end{aligned}$$
(4)
$$\begin{aligned} \text{ Continuity } \text{ equation: }&\nabla \cdot {\mathbf q} + \alpha \displaystyle \frac{\partial }{\partial t} \left( \nabla \cdot {\mathbf u}\right) = f, \quad \mathrm{in} \; \Omega , \end{aligned}$$
(5)

where \(\lambda \) and \(\mu \) are the Lamé coefficients, \(\alpha \) is the Biot-Willis constant which we will assume equal to one, \(\kappa \) is the permeability of the porous medium, \(\eta \) the viscosity of the fluid, \(\varvec{I}\) is the identity tensor, \({\mathbf u}\) is the displacement vector, p is the pore pressure, \({\varvec{\sigma }}'\) and \(\varvec{\epsilon }\) are the effective stress (the part of the total stress that is not carried by the fluid, which is the stress applied to the grains of the porous medium) and strain tensors for the porous medium and \({\mathbf q}\) is the percolation velocity of the fluid relative to the soil. The right hand term \(\mathbf{g}\) is the density of applied body forces and the source term f represents a forced fluid extraction or injection process. Here, we consider a bounded open subset \(\Omega \subset \mathbb {R}^n,\; n \le 3\) with regular boundary \(\Gamma \).

This mathematical model can also be written in terms of the displacements of the solid matrix and the pressure of the fluid. We assume \({\mathbf g}(\mathbf{x}, t) = {\mathbf 0}\) for simplicity in the presentation, and the system can be written as follows,

$$\begin{aligned} - \nabla \cdot (\mu \nabla \mathbf{u}) - \nabla \,(\lambda + \mu ) (\nabla \cdot \, \mathbf{u}) + \nabla \, p= & {} {\mathbf 0}, \quad \mathbf{x} \in \Omega , \end{aligned}$$
(6)
$$\begin{aligned} \displaystyle \frac{\partial }{\partial t}\left( \nabla \cdot \, \mathbf{u}\right) - \nabla \cdot \left( \frac{\kappa }{\eta } \nabla p \right)= & {} f (\mathbf{x}, t), \quad 0 < t \le T \, . \end{aligned}$$
(7)

To complete the formulation of the problem we must add appropriate boundary and initial conditions. For instance,

$$\begin{aligned} \begin{aligned} p&= 0, \quad \varvec{\sigma }' \, \mathbf{n} = \mathbf{t}, \quad \text{ on } \Gamma _1, \\ \mathbf{u}&= \mathbf{0}, \quad \displaystyle \frac{\kappa }{\eta } (\nabla p)\cdot \mathbf{n} = 0, \quad \text{ on } \Gamma _2, \end{aligned} \end{aligned}$$
(8)

where \(\mathbf{n}\) is the unit outward normal to the boundary and \(\Gamma _1 \cup \Gamma _2 = \Gamma \), with \(\Gamma _1\) and \(\Gamma _2\) disjoint subsets of \(\Gamma \) with non null measure. For the initial time, \(t=0\), the following incompressibility condition is fulfilled

$$\begin{aligned} (\nabla \cdot \mathbf{u} )\, (\mathbf {x},0)=0, \, \mathbf {x} \in \Omega . \end{aligned}$$
(9)

Let \(L^2(\Omega )\) be the Hilbert space of square integrable scalar valued functions defined on \(\Omega \), and let \(H^1(\Omega )\) denote the subspace of \(L^2(\Omega )\) of functions with first (distributional) derivatives in \(L^2(\Omega )\). To present the variational formulation of the problem, we introduce the following functional spaces \(\mathcal{Q} =\left\{ q \in H^1(\Omega ), q=0 \; \mathrm{on} \; \Gamma _1 \right\} \) and \(\mathbf{\mathcal { U}}=\left\{ {\mathbf u}\in (H^1(\Omega ))^n, {\mathbf u}={\mathbf 0} \; \mathrm{on} \; \Gamma _2 \right\} \). Then, considering the bilinear forms

$$\begin{aligned} a({\mathbf u},{\mathbf v})= & {} 2 \mu \sum _{i,j=1}^n ( \epsilon _{ij}({\mathbf u}), \epsilon _{ij}({\mathbf v})) + \lambda (\nabla \cdot {\mathbf u}, \nabla \cdot {\mathbf v}), \\ a_p(p,q)= & {} \displaystyle \frac{\kappa }{\eta } \sum _{i=1}^n \left( \frac{\partial p}{\partial x_i}, \frac{\partial q}{\partial x_i}\right) , \end{aligned}$$

the variational formulation for problem (6)–(7) with the boundary and initial conditions (8)–(9) consists of the following:

For each \(t \in (0,T]\), find \((\mathbf {u} (t), p(t)) \in \mathcal{U} \times \mathcal{Q}\) such that

$$\begin{aligned} a({\mathbf u}(t),{\mathbf v}) - (\nabla \cdot {\mathbf v}, p(t))= & {} h({\mathbf v}), \quad \forall \, {\mathbf v} \in \mathcal{U}, \end{aligned}$$
(10)
$$\begin{aligned} -\left( \frac{\partial \,\nabla \cdot {\mathbf u}(t)}{\partial t},q\right) - a_p(p(t),q)= & {} (f,q), \quad \forall q \in \mathcal{Q}, \end{aligned}$$
(11)

with the initial condition

$$\begin{aligned} (\nabla \cdot {{\mathbf u}}(0),q) = 0, \forall \, q \in L^2(\Omega ), \end{aligned}$$
(12)

and where

$$\begin{aligned} h({\mathbf v}) = \int _{\Gamma _1} {\mathbf t} \cdot {\mathbf v} \, \mathrm{d} \Gamma . \end{aligned}$$

2 Stable discretization of the model

The numerical solution of poroelastic problems is usually approached using finite element methods, see for example the monograph of Lewis and Schrefler in [20] and the papers in [18, 19, 21, 23].

It is well-known that the standard finite element solution of the poroelasticity equations can present strong nonphysical oscillations in the fluid pressure, see for instance [1, 7, 8, 15, 29]. For example, this is the case when linear finite elements are used to approximate both displacement and pressure unknowns. As in Stokes problems, approximation spaces for the vector and scalar fields, satisfying LBB condition (see [6]) can be used. This approach has been theoretically investigated by Murad et al. [2527]. However, the LBB property is not a sufficient condition to ensure a free-oscillatory behavior of the solution.

These nonphysical oscillations may be removed by using a very fine grid in space, which is not practical. Therefore, in order to avoid the nonphysical oscillations of the discrete solution, for example, one can add certain stabilization terms to the Galerkin formulation. We have applied this strategy in [1] to provide a stable scheme by using linear finite element approximations for both unknowns. More concretely, a time-dependent artificial term was added to the flow equation. The stabilization parameter, which depends on the elastic properties of the solid and on the size of the triangulation, was given a priori, and we showed its optimality in the one-dimensional case. This scheme provides solutions without oscillations independently of the chosen discretization parameters. In [1], any theoretical result on this stabilized scheme was given, but recently, we have presented a convergence proof in [30]. Also in this same paper, by using the same technique, we also present a stabilization of the Stokes-stable MINI element scheme for the poroelasticity problem.

2.1 One-dimensional problem

To illustrate the cause of the pressure oscillatory behaviour, we consider the following one-dimensional test problem which corresponds to a column of height H of a porous medium saturated by an incompressible fluid, bounded by impermeable and rigid lateral walls and bottom, and supporting a load \(\sigma _0\) on the top which is free to drain. This problem can be written as

$$\begin{aligned} \begin{array}{l} -\displaystyle \frac{\partial }{\partial x} \left( E \, \frac{\partial u}{\partial x}\right) + \displaystyle \frac{\partial p}{\partial x}=0, \\ \displaystyle \frac{\partial }{\partial t}\left( \displaystyle \frac{\partial u}{\partial x}\right) -\displaystyle \frac{\partial }{\partial x} \left( K \, \frac{\partial p}{\partial x}\right) = 0, \end{array} (x,t)\in (0,H)\times (0,T], \end{aligned}$$
(13)

with boundary and initial conditions

$$\begin{aligned} \displaystyle E \, \frac{\partial u}{\partial x}(0,t)= & {} \sigma _0, \quad p(0,t)=0, \ t\in (0,T], \\ u(H,t)= & {} 0, \ \displaystyle K \frac{\partial p}{\partial x}(H,t)=0, \ t\in (0,T], \\ \displaystyle \frac{\partial u}{\partial x}(x,0)= & {} 0, \ x\in [0,H], \end{aligned}$$

where E is the Young’s modulus and \(K = \kappa /\eta \) is the hydraulic conductivity. It can be easily seen that problem (13) is decoupled, giving rise to the following heat-type equation for the pressure

$$\begin{aligned} \displaystyle \frac{\partial }{\partial t}\left( \displaystyle \frac{1}{E} \, p \right) -\displaystyle \frac{\partial }{\partial x} \left( K \, \frac{\partial p}{\partial x}\right) = 0. \end{aligned}$$
(14)

This means that therefore the pressure solution is monotone, and we should use a monotone scheme in order to keep this property.

In order to discretize problem (13), we consider a non-uniform partition of spatial domain \(\Omega =(0,H)\), \(0=x_0 < x_1 < \cdots < x_{n-1} < x_n = H.\) In this way, the domain \(\Omega \) is given by the disjoint union of elements \(T_i=[x_i,x_{i+1}], \; 0 \le i \le n-1\), of size \(h_i = x_{i+1}-x_i\). We assume that the physical parameters E(x) and K(x) are constant on each element \(T_i\), and they are denoted here by \(E_i\) and \(K_i\) respectively.

We consider an uniform time discretization by using a backward Euler method. Regarding the space discretization, we consider linear finite elements for both displacement and pressure. In this case, the following linear system of equations has to be solved on each time step

$$\begin{aligned} \left[ \begin{array}{l@{\quad }l} A_l &{} G_l \\ G_l^T &{} \tau A_p \end{array} \right] \left[ \begin{array}{l} U_l^m \\ P^m \end{array} \right] = \left[ \begin{array}{l@{\quad }l} 0 &{} 0 \\ G_l^T &{} 0 \end{array} \right] \left[ \begin{array}{l} U_l^{m-1} \\ P^{m-1} \end{array} \right] + \left[ \begin{array}{l} f_l^m \\ 0 \end{array} \right] , \end{aligned}$$
(15)

where \(m \ge 1\), and \(\tau \) is the time discretization parameter. It is clear that the pressure at time level m must satisfy the following equation

$$\begin{aligned} (C_l + \tau A_p) P^{m} = C_l P^{m-1} - G_l^T A_l^{-1} (f_l^m -f_l^{m-1}), \end{aligned}$$
(16)

where \(C_l=-G_l^T A_l^{-1} G_l\) is a tridiagonal matrix such that for an interior node \(x_i\) it is given by

$$\begin{aligned} (C_l P^m)_i = \frac{1}{4} \left( \displaystyle \frac{h_{i-1}}{E_{i-1}} P_{i-1}^m + \left( \frac{h_{i-1}}{E_{i-1}} + \frac{h_{i}}{E_{i}} \right) P_{i}^m + \frac{h_{i}}{E_{i}} P_{i+1}^m \right) . \end{aligned}$$
(17)

Notice that the scheme associated with the above equation should be an appropriate discretization for problem (14). Depending on the relation between the space and time discretization parameters, the off-diagonal elements of matrix \(C_l + \tau A_p\) could be positive and therefore the cause of possible non-physical oscillations in the approximation of the pressure. To avoid these instabilities, the following restriction holds,

$$\begin{aligned} \max _{0 \le i \le n-1} \displaystyle \frac{h_i^2}{4 K_i E_i} < \tau . \end{aligned}$$
(18)

For example, in the case of an uniform-grid of size h and constant values of the parameters E and K in the whole domain, such restriction becomes \(h^2 < 4 E K \tau \). To confirm these unstable behaviour, we solve system (13) in the computational domain (0, 1) by using linear finite elements considering \(K \, E \, \tau = 10^{-6}\). In this case, it is necessary a mesh of at least 500 nodes to fulfill the restriction. In Fig. 1a, b we show the corresponding approximation of the pressure at the first time step, for two different values of h, that is, \(h=1/32\) and \(h=1/500\). Besides, we have plotted the analytical solution of the problem (see [1]). We can observe that strong non-physical oscillations appear for this type of finite element approximations, when the space discretization parameter is not small enough. It is clear that this is due to a lack of monotonicity of the scheme. Other authors have related these oscillations to the locking effect and/or the fact that the pair of finite element does not satisfy an inf-sup condition. However, since our test is an one-dimensional problem, elastic locking can not appear, and therefore, in general, this can not be the only cause of this oscillatory behaviour. Regarding the LBB condition, we are going to show now that this property is not enough to avoid the presence of the spurious oscillations. We consider the Taylor-Hood finite element method, which approximates the displacement by continuous piecewise quadratic functions and the pressure by continuous piecewise linear functions. It is well-known that this pair of finite elements satisfies the LBB condition. Following similar computations as for the P1–P1 case, and considering again the backward Euler scheme, we obtain the following lineal system of equations on each time step

$$\begin{aligned} \left[ \begin{array}{l@{\quad }l@{\quad }l} A_b &{} 0 &{} G_b \\ 0 &{} A_l &{} G_l \\ G_b^T &{} G_l^T &{} \tau A_p \end{array} \right] \left[ \begin{array}{l} U_b^m \\ U_l^m \\ P^m \end{array} \right] = \left[ \begin{array}{l@{\quad }l@{\quad }l} 0 &{} 0 &{} 0 \\ 0 &{} 0 &{} 0 \\ G_b^T &{} G_l^T &{} 0 \end{array} \right] \left[ \begin{array}{l} U_b^{m-1} \\ U_l^{m-1} \\ P^{m-1} \end{array} \right] + \left[ \begin{array}{l} f_b^m \\ f_l^m \\ 0 \end{array} \right] , \end{aligned}$$
(19)

where \(A_l, G_l\) correspond again to the linear basis functions whereas \(A_b, G_b\) are associated with the bubble basis functions. In this case, the pressure at time level m satisfies the equation

$$\begin{aligned} (C_l + C_b + \tau A_p) P^{m} = (C_l + C_b) P^{m-1} - G_l^T A_l^{-1} (f_l^m -f_l^{m-1}) - G_b^T A_b^{-1} (f_b^m -f_b^{m-1}), \end{aligned}$$
(20)

where \(C_l\) is as in (17) and \(C_b=-G_b^T A_b^{-1} G_b\) is given by

$$\begin{aligned} (C_b P^m)_i = \frac{1}{12} \left( \displaystyle -\frac{h_{i-1}}{E_{i-1}} P_{i-1}^m + \left( \frac{h_{i-1}}{E_{i-1}} + \frac{h_{i}}{E_{i}} \right) P_{i}^m - \frac{h_{i}}{E_{i}} P_{i+1}^m \right) . \end{aligned}$$

We can observe that the off-diagonal entries of matrix \(C_b\) have the right sign, but again depending on the values of the involved parameters, the whole matrix \(C_l + C_b + \tau A_p\) can still have positive off-diagonal terms. To avoid this, on each element the restriction

$$\begin{aligned} \max _{0 \le i \le n-1} \displaystyle \frac{h_i^2}{6 K_i E_i} < \tau . \end{aligned}$$
(21)

must be fulfilled. Summarizing, we remark that the use of quadratic finite elements for displacement contributes in a positive way to the reduction of the oscillations, but it is still not enough. To illustrate this behaviour, we consider again system (19) on an uniform grid of size h and constant coefficients E and K. In this particular case, the restriction (21) is simplified to \(h^2 < 6 E K \tau \), and when \(E K \tau = 10^{-6}\) it is deduced that 409 nodes are needed to ensure a non-oscillatory behaviour. In Fig. 2 we show the corresponding approximation of the pressure at the first time step, for two different values of h, that is, \(h = 1/32\) and \(h = 1/409\). Notice again that in the first case non-physical oscillations appear, and then we can conclude that the LBB property is not enough to ensure the monotonicity of the scheme.

Fig. 1
figure 1

Numerical solution for the pressure field obtained with finite elements P1–P1 and corresponding exact solution for a \(h=1/32\) and b \(h=1/500\)

Fig. 2
figure 2

Numerical solution for the pressure field obtained with finite elements P2–P1 and corresponding exact solution for a \(h=1/32\) and b \(h=1/409\)

To avoid the restrictions (18) for P1–P1 and (21) for P2–P1, which can yield to the necessity of using a very fine grid, we have proposed stable schemes providing oscillation-free solutions independently of the chosen parameters. Since schemes (16) and (20) should be suitable discretizations of the heat-type Eq. (14), the idea is to add artificial terms in order to recover the standard monotone linear finite element discretization of such equation. With this purpose, we define the following tridiagonal matrix

$$\begin{aligned} (A_{\varepsilon } P^m)_i = \varepsilon \left( \displaystyle -\frac{h_{i-1}}{E_{i-1}} P_{i-1}^m + \left( \frac{h_{i-1}}{E_{i-1}} + \frac{h_{i}}{E_{i}} \right) P_{i}^m - \frac{h_{i}}{E_{i}} P_{i+1}^m \right) , \end{aligned}$$
(22)

where \(\varepsilon =1/4\) for the linear finite element pair and \(\varepsilon =1/6\) for the Taylor–Hood method. Then, it is clear that the perturbation of scheme (16)

$$\begin{aligned} (C_l + A_{\varepsilon } + \tau A_p) P^{m} = (C_l + A_{\varepsilon }) P^{m-1} - G_l^T A_l^{-1} (f_l^m -f_l^{m-1}), \end{aligned}$$
(23)

or the perturbation of (20)

$$\begin{aligned} (C_l + C_b + A_{\varepsilon } + \tau A_p) P^{m}= & {} (C_l + C_b + A_{\varepsilon }) P^{m-1} - G_l^T A_l^{-1} (f_l^m -f_l^{m-1})\nonumber \\&- G_b^T A_b^{-1} (f_b^m -f_b^{m-1}), \end{aligned}$$
(24)

results in the monotone standard discretization by linear finite element method with mass-lumping. Notice that this perturbation corresponds to add to the variational formulation of the second equation of system (13) the term

$$\begin{aligned} \varepsilon \sum _{i=0}^{n-1} \frac{h_i^2}{E_i} \int _{T_i} \frac{1}{\tau }\left( \frac{\partial }{\partial x}p_h^{m+1}-\frac{\partial }{\partial x} p_h^m \right) \, \frac{\partial }{\partial x} q_h \, \mathrm{d}x. \end{aligned}$$
(25)

Finally, in Fig. 3 we show the approximation for the pressure obtained by using the proposed stabilization scheme for both the linear finite element pair and the Taylor Hood method, and considering \(h = 1/32\). Notice that for this value of the spatial discretization parameter, not satisfying the restriction, we obtained oscillatory solutions. However, with the stabilized schemes (23) and (24) we obtain oscillation-free solutions.

Fig. 3
figure 3

Numerical solution for the pressure field obtained with the stabilized finite elements. a P1–P1 and b P2–P1 and corresponding exact solution

Next, we illustrate the appearance of non-physical oscillations in the pressure field when a low-permeability is assumed in a region of the domain. We consider a porous material on which a low–permeable layer (\(K = 10^{-8}\)) is placed between two layers with unit permeability (\(K = 1\)), as shown in Fig. 4, see [15]. The boundary of the squared domain is split in two disjoint subsets \(\Gamma _1\) and \(\Gamma _2\) on which we assume the following boundary conditions: on the top, which is free to drain, a uniform load is applied, that is,

$$\begin{aligned} p = 0, \quad {\varvec{\sigma }}' {\mathbf n} = {\mathbf g}, \; \hbox {with} \; {\mathbf g} = (0,-1)^t, \; \hbox {on} \; \Gamma _1, \end{aligned}$$
(26)

whereas at the sides and bottom that are rigid the boundary is considered to be impermeable, that is,

$$\begin{aligned} \nabla p \cdot {\mathbf n} = 0, \quad {\mathbf u} = {\mathbf 0}, \; \hbox {on} \; \Gamma _2. \end{aligned}$$
(27)

Zero initial conditions are considered for both variables, and the time step is chosen as \(\tau =1\). This test can be reduced to a one-dimensional problem. Therefore, in the following simulations we will show the numerical solutions corresponding to one vertical line in the domain as displayed in Fig. 4.

Fig. 4
figure 4

Domain representing a square of layered porous material with different permeability

Fig. 5
figure 5

Numerical solution by P1–P1 for the pressure to the two-material problem a without stabilization term and b with stabilization term

First we approximate the proposed model problem by using linear finite elements for displacements and pressure. If no stabilization term is added to the discrete formulation, the approximation for the pressure field that is obtained by using 32 elements in the grid is shown in Fig. 5a. We can observe that strong spurious oscillations appear in the part corresponding to the low-permeable layer. However, if the proposed stabilized scheme is used for the simulation with the same number of nodes, the oscillations are completely eliminated and the method gives rise to the real physical solution for the pressure, as we can see in Fig. 5b.

Fig. 6
figure 6

Numerical solution by P2–P1 for the pressure to the two-material problem a without stabilization term and b with stabilization term

Next, the MINI element method is considered to approximate our model problem. We consider the same number of elements in the mesh. Similarly to the previous case, when no stabilization parameter is included in the formulation, the oscillatory behaviour of the pressure approximation appears, as shown in Fig. 6a. Notice that the oscillations are much weaker than in the case of P1–P1 elements, but still are not eliminated by using this pair of finite elements. Again, if the proposed stabilization is considered for the solution of the problem, an oscillation-free approximation for the pressure field is obtained as displayed in Fig. 6b.

2.2 Multi-dimensional problem

We now consider the finite element approximation of problem (10)–(12) by using linear finite elements for both unknowns or the well-known MINI element. Let \(\mathcal{T}_h\) be a regular triangularization of \(\Omega \) satisfying the usual admissibility assumption. In the two-dimensional case, we can define finite element approximations for \(\mathcal{U}\) and \(\mathcal{Q}\) as \(\mathcal{U}_h\) and \(\mathcal{Q}_h\), respectively. We can write the semidiscrete Galerkin approximation to the problem (10)–(12) as

For each \(t \in (0,T]\), find \((\mathbf {u}_h (t), p_h(t)) \in \mathcal{U}_h \times \mathcal{Q}_h\) such that

$$\begin{aligned}&\displaystyle a({\mathbf u}_h(t),{\mathbf v}_h) - (\nabla \cdot {\mathbf v}_h, p_h(t)) = h({\mathbf v}_h), \quad \forall {\mathbf v}_h \in \mathcal{U}_h, \end{aligned}$$
(28)
$$\begin{aligned}&\displaystyle -\left( \frac{\partial \, \nabla \cdot {\mathbf u}_h(t)}{\partial t},q_h\right) -a_p(p_h(t),q_h) = (f,q_h), \quad \forall q_h \in \mathcal{Q}_h. \end{aligned}$$
(29)

such that

$$\begin{aligned} (\nabla \cdot {{\mathbf u}}_h(0),q_h) = 0, \quad \forall q_h \in \mathcal{Q}_h. \end{aligned}$$
(30)

In a standard way in the finite element framework, we can consider the usual basis functions \(\{{\varvec{\psi }}_i\}_{i = 1}^{n_u}\) for the displacements and those for the pressure \(\{\phi _i\}_{i=1}^{n_p}\) corresponding either to P1–P1 or MINI element schemes. In this way, we find that the semi-discrete formulation (28)–(29) can be expressed as a system of linear ordinary differential equations

$$\begin{aligned} \left[ \begin{matrix} 0 &{}0 \\ B &{}0 \end{matrix} \right] \left[ \begin{matrix} {\mathbf U}_t \\ {\mathbf P}_t \end{matrix} \right] + \left[ \begin{matrix} A &{}B' \\ 0 &{}-A_p \end{matrix} \right] \left[ \begin{matrix} {\mathbf U} \\ {\mathbf P} \end{matrix} \right] = \left[ \begin{matrix} {\mathbf H} \\ {\mathbf F} \end{matrix} \right] . \end{aligned}$$

Here \({\mathbf U}\) represents the unknown vector \(({\mathbf u}_1(t), {\mathbf u}_2(t), \ldots , {\mathbf u}_{n_u}(t))\) and \({\mathbf P}\) the unknown vector \((p_1(t), p_2(t), \ldots , p_{n_p}(t))\), and \({\mathbf U}_t\) and \({\mathbf P}_t\) the corresponding vectors with the time derivatives of the unknowns. The matrix A is the elasticity matrix, \(-A_p\) is the diffusive matrix, \(B'\) is the gradient matrix and B is its transpose, that is minus the divergence matrix. \({\mathbf H}\) and \({\mathbf F}\) are the right hand side vectors with components \({\mathbf H}_i(t) = h({\varvec{\psi }}_i), i = 1, \ldots , n_u\) and \(F_i(t) = (f,\phi _i), i = 1, \ldots , n_p,\) respectively.

To discretize in time, we consider the backward Euler scheme:

For \(m \ge 1\), find \((\mathbf {u}_h^m, p_h^m) \in \mathcal{U}_h \times \mathcal{Q}_h\) such that

$$\begin{aligned}&a({\mathbf u}_h^m,{\mathbf v}_h) - (\nabla \cdot {\mathbf v}_h, p_h^m) = h({\mathbf v}_h), \quad \forall {\mathbf v}_h \in \mathcal{U}_h, \end{aligned}$$
(31)
$$\begin{aligned}&\quad -(\nabla \cdot {\mathbf u}_h^m,q_h) - \tau a_p(p_h^m ,q_h) = -(\nabla \cdot {\mathbf u}_h^{m-1},q_h) + \tau (f^m,q_h) \quad \forall q_h \in \mathcal{Q}_h, \end{aligned}$$
(32)

which yields the following linear equations system on each time step

$$\begin{aligned} \left[ \begin{matrix} A &{}B' \\ B &{}-\tau A_p \end{matrix} \right] \left[ \begin{matrix} {\mathbf U}^m \\ {\mathbf P}^m \end{matrix} \right] = \left[ \begin{matrix} 0 &{}0 \\ B &{}0 \end{matrix} \right] \left[ \begin{matrix} {\mathbf U}^{m-1} \\ {\mathbf P}^{m-1} \end{matrix} \right] + \left[ \begin{matrix} {\mathbf H}^m \\ \tau {\mathbf F}^m \end{matrix} \right] , \end{aligned}$$
(33)

where \(\tau \) is the time discretization parameter and \(B{\mathbf U}^0={\mathbf 0}\).

In the multi-dimensional case, we cannot proceed as in 1D since the Schur complement becomes a full matrix and therefore it is very difficult to obtain any result about the monotonicity of the discrete schemes. However, we can extend the idea proposed for the one-dimensional case to obtain stabilized discretizations for (6)–(8). The final scheme results to be the corresponding discretization of the problem

$$\begin{aligned}&- \nabla \cdot \left( \mu \nabla \mathbf{u}\right) - \nabla (\lambda + \mu ) \left( \nabla \cdot \, \mathbf{u}\right) + \nabla \, p = {\mathbf 0}, \end{aligned}$$
(34)
$$\begin{aligned}&\displaystyle \frac{\partial }{\partial t}\left( \nabla \cdot \, \mathbf{u}\right) - \nabla \cdot \left( \frac{\kappa }{\eta } \nabla p\right) - \frac{\partial }{\partial t}\nabla \cdot \left( \beta \nabla p\right) = f (\mathbf{x}, t), \end{aligned}$$
(35)

where a perturbation term \(-\frac{\partial }{\partial t}\nabla \cdot \left( \beta \nabla p\right) \) has been added to the flow equation, with parameter

$$\begin{aligned} \displaystyle \beta = \frac{h^2}{\widetilde{\beta }(\lambda + 2 \mu )}, \hbox { being }\widetilde{\beta } = \left\{ \begin{array}{l@{\quad }l} 4, &{} \hbox {for P1--P1}, \\ 6,&{} \hbox {for MINI element}, \end{array}\right. \end{aligned}$$

where \(\displaystyle h=\min \nolimits _{T \in \mathcal{T}_h} h_T\), being \(h_T\) the diameter of element T. The corresponding semidiscrete Galerkin approximation is as follows,

For each \(t \in (0,T]\), find \((\mathbf {u}_h (t), p_h(t)) \in \mathcal{U}_h \times \mathcal{Q}_h\) such that

$$\begin{aligned}&a({\mathbf u}_h,{\mathbf v}_h) - (\nabla \cdot {\mathbf v}_h, p_h) = h({\mathbf v}_h), \quad \forall {\mathbf v}_h \in \mathcal{U}_h, \end{aligned}$$
(36)
$$\begin{aligned}&-\left( \frac{\partial \, \nabla \cdot {\mathbf u}_h}{\partial t},q_h\right) - a_p(p_h,q_h) - \beta ' a_p\left( \frac{\partial }{\partial t}{p_h},q_h\right) = (f,q_h), \quad \forall q_h \in \mathcal{Q}_h, \end{aligned}$$
(37)

where \(\beta ' = \displaystyle \beta \frac{\eta }{\kappa }\). Considering the backward Euler scheme to discretize in time, we get the discrete variational problem:

For \(m \ge 1\), find \((\mathbf {u}_h^m, p_h^m) \in \mathcal{U}_h \times \mathcal{Q}_h\) such that

$$\begin{aligned}&a({\mathbf u}_h^m,{\mathbf v}_h) - (\nabla \cdot {\mathbf v}_h, p_h^m) = h({\mathbf v}_h), \quad \forall \, {\mathbf v}_h \in \mathcal{U}_h, \end{aligned}$$
(38)
$$\begin{aligned}&-(\nabla \cdot {\mathbf u}_h^m,q_h) - (\tau + \beta ') a_p(p_h^m ,q_h) = \tau (f^m,q_h) - (\nabla \cdot {\mathbf u}_h^{m-1},q_h)\nonumber \\&\quad - \beta ' a_p(p_h^{m-1} ,q_h) \;\forall q_h \in \mathcal{Q}_h, \end{aligned}$$
(39)

which in matrix-form reads as

$$\begin{aligned} \left[ \begin{matrix} A &{}B' \\ B &{}-(\tau + \beta ') A_p \end{matrix} \right] \left[ \begin{matrix} {\mathbf U}^m \\ {\mathbf P}^m \end{matrix} \right] = \left[ \begin{matrix} 0 &{}0 \\ B &{}-\beta ' A_p \end{matrix} \right] \left[ \begin{matrix} {\mathbf U}^{m-1} \\ {\mathbf P}^{m-1} \end{matrix} \right] + \left[ \begin{matrix} {\mathbf H}^m \\ \tau {\mathbf F}^m \end{matrix} \right] . \end{aligned}$$

In order to assess the performance of the proposed method, we solve numerically a poroelastic problem on a cylindrical shell of deformable porous material with a uniform load on the inner boundary. The outer boundary is constrained by a rigid body that offers no resistance to the passage of the fluid, so the boundary conditions for the displacement and for the pressure are \({\mathbf u}=0\) and \(p=0\) respectively. In the inner surface of the cylinder, there is a fixed pressure, \(p=1\), which produces a uniform load \(\varvec{\sigma }' {\mathbf n} = (\cos \, \theta ,\sin \, \theta )\). A scheme of the geometry and boundary conditions are given in Fig. 7.

Fig. 7
figure 7

Geometry and boundary conditions

The material properties of the porous medium are given in Table 1 where \(\lambda \) and \(\mu \) are related to the Young’s modulus E and the Poisson’s ratio \(\nu \) by

$$\begin{aligned} \lambda = \frac{\nu E}{(1 + \nu ) (1-2\nu )}, \quad \mu = \frac{E}{2(1+\nu )}. \end{aligned}$$
Table 1 Material parameters for the first poroelastic problem

Figure 8a shows how standard finite elements P1–P1 lead to spurious oscillations in the pressure approximation at time \(T=10^{-6}\) using one time step. These nonphysical oscillations in the pressure are eliminated completely adding the stabilization term \(h^2 a_p(\frac{\partial }{\partial t}p_h,q_h)/4(\lambda + 2 \mu )\) to the flow equation as can be seen in Fig. 8b.

Fig. 8
figure 8

Numerical solution of the pressure for the cylindrical shell poroelasticity problem a without stabilization term and b adding the term \(h^2 a_p(\dot{p_h},q_h)/4(\lambda + 2 \mu )\)

3 Stability and convergence of the discrete schemes

In this section we study the stability of the proposed stabilized schemes. By stability, here we mean bounds on the inverse of the discrete operator (for a fixed time step). This is analyzed by proving an inf-sup condition for the different discretizations that we consider, namely stabilized P1–P1 and MINI element schemes.

From now on, we consider that operator \(\mathcal{A}_C =\left( \begin{array}{c@{\quad }c}A &{} B' \\ B &{} -C \end{array}\right) \) represents a discretization of poroelasticity problem, where \(A\,:\, \mathcal{U}_h \mapsto \mathcal{U}_h'\) is given by \(\langle A{\mathbf u}_h, {\mathbf v}_h\rangle : =a({\mathbf u}_h,{\mathbf v}_h)\), \(B\, : \, \mathcal{Q}_h \mapsto \mathcal{U}_h'\) is defined by \(\langle B{\mathbf u}_h, q_h\rangle := - ({\text {div}}{\mathbf u}_h,q_h)\), and C is bounded, selfadjoint and positive definite. Since C may take different form for different discretizations, we do not specify its definition here. Notice that A is bounded, selfadjoint and positive definite, and B is also bounded. Moreover, we define the following norm

$$\begin{aligned} \parallel q_h \parallel ^2 := \tau \langle A_p q_h, q_h\rangle + \parallel q_h \parallel ^2_{L^2(\Omega )}, \end{aligned}$$

where \(\langle A_p p_h, q_h\rangle := a_p(p_h,q_h)\), and the triple norm on \(\mathcal{U}_h \times \mathcal{Q}_h\)

$$\begin{aligned} |\!|\!| ({\mathbf u}_h,p_h) |\!|\!|^2 = \parallel {\mathbf u}_h\parallel ^2_A+\parallel p_h \parallel ^2_C + \parallel p_h \parallel ^2. \end{aligned}$$

Theorem 1

We consider the discretization of poroelasticity problem given by an operator of the form \(\mathcal{A}_C\), as previously explained. Then, \(\mathcal{A}_C\) is an isomorphism if and only if for any \(q_h\in \mathcal{Q}_h\),

$$\begin{aligned} \displaystyle \sup _{\mathbf {v}_h\in \mathcal{U}_h}\frac{\langle B\,\mathbf {v}_h, q_h\rangle }{\parallel \mathbf {v}_h \parallel _A}\ge \gamma _B \parallel q_h \parallel - \parallel q_h \parallel _C. \end{aligned}$$
(40)

Proof

First we assume that (40) holds and we show that \(\mathcal{A}_C\) is an isomorphism. For this purpose, we introduce the bilinear form

$$\begin{aligned} \langle \mathcal {A}_{C} (\mathbf {u}_h,p_h); (\mathbf {v}_h,q_h)\rangle = \langle A\mathbf {u}_h, \mathbf {v}_h \rangle + \langle B\mathbf {v}_h, p_h \rangle + \langle B\mathbf {u}_h, q_h \rangle - \langle Cp_h,q_h \rangle . \end{aligned}$$

From the continuity of operators A and B, we can easily show that operator \(\mathcal {A}_{C}\) is bounded in \(|\!|\!| \cdot |\!|\!|\). Moreover, from the inf-sup condition (40), for any \(p_h\), there exist \(\mathbf {w}_h \in \mathcal{U}_h\), such that \(\langle B\mathbf {w}_h, p_h \rangle \ge ( \gamma _B \Vert p_h \Vert - \Vert p_h \Vert _C ) \Vert \mathbf {w}_h\Vert _A\). Without loss of generality, we may assume that \(\Vert \mathbf {w}_h\Vert _A=\Vert p_h\Vert \), and then we have,

$$\begin{aligned} \langle B\mathbf {w}_h, p_h \rangle \ge ( \gamma _B \Vert p_h \Vert - \Vert p_h \Vert _C ) \Vert p_h \Vert . \end{aligned}$$
(41)

Given a pair \((\mathbf {u}_h,p_h)\in \mathcal{U}_h\times \mathcal{Q}_h\), we choose \(\mathbf {v}_h = \mathbf {u}_h + \theta \mathbf {w}_h\) and \(q_h = -p_h\), with \(\mathbf {w}_h\) defined as above and some \(\theta >0\) that will be determined later. Then, we can write,

$$\begin{aligned} \langle \mathcal {A}_{C} (\mathbf {u}_h,p_h); (\mathbf {v}_h,q_h)\rangle= & {} \langle A\mathbf {u}_h, \mathbf {u}_h\,{+}\, \theta \mathbf {w}_h \rangle \,{+}\, \langle B (\mathbf {u}_h \,{+}\, \theta \mathbf {w}_h), p_h \rangle \,{-}\, \langle B\mathbf {u}_h, p_h \rangle \,{+}\, \langle C p_h, p_h \rangle \\= & {} \Vert \mathbf {u}_h\Vert _A^2 + \theta \langle A\mathbf {u}_h, \mathbf {w}_h \rangle + \theta \langle B \mathbf {w}_h, p_h \rangle + \Vert p_h \Vert ^2_{C}. \end{aligned}$$

Applying the inequality \(\displaystyle ab \ge -\frac{1}{2\theta }a^2-\frac{\theta }{2}b^2\), we have,

$$\begin{aligned} \displaystyle \theta \langle A\mathbf {u}_h, \mathbf {w}_h \rangle \ge -\frac{1}{2}\Vert \mathbf {u}_h\Vert _A^2- \frac{\theta ^2}{2}\Vert \mathbf {w}_h\Vert _A^2 = -\frac{1}{2}\Vert \mathbf {u}_h\Vert _A^2- \frac{\theta ^2}{2}\Vert p_h\Vert ^2. \end{aligned}$$

Also, by using (41), it is satisfied that,

$$\begin{aligned} \theta \langle B \mathbf {w}_h, p_h \rangle \ge \theta \gamma _B \Vert p_h \Vert ^2 - \theta \Vert p_h \Vert _C \Vert p_h \Vert . \end{aligned}$$

In this way,

$$\begin{aligned} \langle \mathcal {A}_{C} (\mathbf {u}_h,p_h); (\mathbf {v}_h,q_h)\rangle\ge & {} \frac{1}{2} \Vert \mathbf {u}_h\Vert _A^2 + \left( \theta \gamma _B-\frac{\theta ^2}{2}\right) \Vert p_h\Vert ^2 \\&- \theta \left( \frac{1}{2\theta }\Vert p_h\Vert _C^2 + \frac{\theta }{2} \Vert p_h \Vert ^2\right) + \Vert p_h \Vert _{C}^2. \end{aligned}$$

Now, we fix \(\displaystyle \theta =\frac{\gamma _B}{2}\) to obtain that

$$\begin{aligned} \langle \mathcal {A}_{C} (\mathbf {u}_h,p_h); (\mathbf {v}_h,q_h)\rangle\ge & {} \frac{1}{2}\Vert \mathbf {u}_h\Vert _A^2+\frac{\gamma _B^2}{4}\Vert p_h \Vert ^2 +\frac{1}{2}\Vert p_h\Vert _C^2 \ge \widetilde{\gamma }|\!|\!| (\mathbf {u}_h,p_h) |\!|\!|^2, \end{aligned}$$

where \(\widetilde{\gamma } = \frac{1}{4}\min \{ 2, \gamma _B^2\} \). On the other hand, the triangle inequality implies that

$$\begin{aligned} |\!|\!| (\mathbf {v}_h,q_h) |\!|\!| = |\!|\!| (\mathbf {u}_h+\theta \mathbf {w}_h,p_h) |\!|\!|\le \widetilde{\gamma }_1|\!|\!| (\mathbf {u}_h,p_h) |\!|\!|, \end{aligned}$$

with \(\widetilde{\gamma }_1\) depending only on \(\gamma _B\). Hence,

$$\begin{aligned} \sup _{\mathbf {v}_h, q_h} \frac{\langle \mathcal {A}_{C}(\mathbf {u}_h,p_h);(\mathbf {v}_h,q_h) \rangle }{|\!|\!| (\mathbf {v}_h,q_h) |\!|\!|} \ge \gamma |\!|\!| (\mathbf {u}_h,p_h) |\!|\!|, \quad \gamma = \frac{\widetilde{\gamma }}{\widetilde{\gamma }_1}, \end{aligned}$$

and we can conclude that \(\mathcal {A}_{C}\) is an isomorphism.

Next, we assume the invertibility of \(\mathcal {A}_C\) and we show that condition (40) is fulfilled. For any \(q_h\in \mathcal{Q}_h\), we define \(\mathbf {v}_{h,q} = -A^{-1}B' q_h\in \mathcal{U}_h\), in the way that

$$\begin{aligned} \mathcal {A}_{C}\begin{pmatrix}\mathbf {v}_{h,q}\\ q_h\end{pmatrix} = \begin{pmatrix}0\\ B\mathbf {v}_{h,q}-Cq_h\end{pmatrix}. \end{aligned}$$

Then, the invertibility of \(\mathcal {A}_{C}\) implies that

$$\begin{aligned} \Vert q_h\Vert \le |\!|\!| (\mathbf {v}_{h,q},q_h) |\!|\!|\le \Vert \mathcal {A}_{C}^{-1}\Vert \;\Vert B\mathbf {v}_{h,q}-Cq_h\Vert _{\mathcal{Q}_h'}\le \Vert \mathcal {A}_{C}^{-1}\Vert \;(\Vert B \mathbf {v}_{h,q} \Vert _{\mathcal{Q}_h'} +\Vert C q_h\Vert _{\mathcal{Q}_h'}). \end{aligned}$$

We can obtain estimates for \(\Vert B \mathbf {v}_{h,q} \Vert _{\mathcal{Q}_h'}\) and \(\Vert C q_h\Vert _{\mathcal{Q}_h'}\) in order to deduce (40). First, since C is symmetric and positive (semi)-definite, we have \(\langle C q_h, s_h \rangle \le \sqrt{\langle Cq_h, q_h \rangle }\sqrt{\langle Cs_h, s_h \rangle }\), and therefore,

$$\begin{aligned} \Vert C q_h\Vert _{\mathcal{Q}_h'} = \sup _{s_h\in \mathcal{Q}_h}\frac{\langle C q_h, s_h \rangle }{\Vert s_h\Vert } \le \sqrt{\Vert C\Vert \langle C q_h, q_h \rangle }. \end{aligned}$$

Secondly, to estimate \(\Vert B\mathbf {v}_{h,q}\Vert _{\mathcal{Q}_h'}\) we note that \(\Vert B \mathbf {v}_{h,q}\Vert _{\mathcal{Q}_h'} = \sup _{s_h\in \mathcal{Q}_h}\frac{\langle B \mathbf {v}_{h,q}, s_h \rangle }{\Vert s_h\Vert }\) and we also have for all \(s_h\in \mathcal{Q}_h\),

$$\begin{aligned} \displaystyle \frac{|\langle B\mathbf {v}_{h,q}, s_h \rangle |}{\Vert s_h\Vert }= & {} \frac{|\langle B's_h, A^{-1}B'q_h \rangle |}{\Vert s_h\Vert } \le \Vert B'\Vert \frac{|\langle B's_h, A^{-1}B'q_h \rangle |}{\Vert B's_h\Vert _{\mathcal{U}_h'}} \\\le & {} \Vert B'\Vert \sup _{f_h\in \mathcal{U}_h'}\frac{\langle f_h, A^{-1}B'q_h \rangle }{\Vert f_h\Vert _{\mathcal{U}_h'}} = \Vert B'\Vert \sup _{\mathbf {w}_h\in \mathcal{U}_h}\frac{\langle A\mathbf {w}_h, A^{-1}B'q_h \rangle }{\Vert A\mathbf {w}_h\Vert _{\mathcal{U}_h'}} \\\le & {} \Vert B'\Vert \Vert A^{-1}\Vert \sup _{\mathbf {w}_h\in \mathcal{U}_h}\frac{\langle B\mathbf {w}_h, q_h \rangle }{\Vert \mathbf {w}_h\Vert _{A}} =\Vert B'\Vert \sup _{\mathbf {w}_h\in \mathcal{U}_h}\frac{\langle B\mathbf {w}_h, q_h \rangle }{\Vert \mathbf {w}_h\Vert _{A}}. \end{aligned}$$

Finally, the inf-sup condition (40) easily follows by combining the last two estimates. \(\square \)

A more general version of the previous result can be found in [30] for a general operator \(\mathcal{A}_C =\left( \begin{array}{c@{\quad }c}A &{} B' \\ B &{} -C \end{array}\right) :V\times Q \mapsto V' \times Q'\), where V and Q are Hilbert spaces and \(V'\) and \(Q'\) their dual spaces, operator \(A:V\mapsto V'\) is bounded, selfadjoint and positive definite, operator \(B:V\mapsto Q'\) is also bounded and \(C:Q\mapsto Q'\) is a bounded operator, sefadjoint and positive (semi)definite.

Notice that if the inf-sup condition in (40) is satisfied with \(C=0\), then it is also satisfied for any C bounded, selfadjoint and positive (semi)definite. This implies that a stable finite element pair for Stokes equations is also stable for poroelasticity. From this, we can conclude that MINI element is stable for poroelasticity, since it is well-known that this finite element scheme satisfies an inf-sup condition for Stokes system, see [3] for example. The discrete space of functions corresponding to MINI element scheme satisfies that is a direct sum of the space of piece-wise linear continuous vector valued functions and the space of bubble functions. Therefore, if we write \({\mathbf v}_h = {\mathbf v}_{h,l} + {\mathbf v}_{h,b}\) we have that \(a(\mathbf {u}_h,\mathbf {v}_h) = a(\mathbf {u}_{h,l},\mathbf {v}_{h,l}) + a(\mathbf {u}_{h,b},\mathbf {v}_{h,b}),\) since \(\mathbf {v}_{h,b}\) is zero on \(\partial T\) for \(T\in T_h\). Then, we can write the discrete problem (31)–(32) in the following block form:

$$\begin{aligned} \mathcal {A}\; \begin{pmatrix} \mathbf {u}_{h,b}\\ \mathbf {u}_{h,l}\\ p_h \end{pmatrix} = \begin{pmatrix} \mathbf {f}_{h,b}\\ \mathbf {f}_{h,l}\\ g_h \end{pmatrix}, \quad \text{ where }\quad \mathcal {A}=\begin{pmatrix} A_b &{}0 &{}G_b\\ 0 &{}A_l &{}G_l \\ G_b^T &{}G_l^T &{}-\tau \,A_p \end{pmatrix}. \end{aligned}$$
(42)

By eliminating the equation corresponding to bubble functions, we obtain the following operator,

$$\begin{aligned} \mathcal {A}_l=\begin{pmatrix} A_l &{}G_l \\ G_l &{}-\tau A_p - S_b \end{pmatrix}, \quad \text{ where }\quad S_b = G_b^TA_{b}^{-1} G_b. \end{aligned}$$
(43)

Therefore, changing accordingly the right hand sides, the systems of equations corresponding to (42) and (43) are equivalent and solvability for MINI element implies solvability for P1–P1 + \(S_b\). We then have the following theorem from which arises that \(S_b\) improves the “monotonicity” of the P1–P1 scheme.

Theorem 2

\(S_b\) is spectrally equivalent to \(h^2\,L\), where h is the grid-size and L is the discretization of Laplace operator by piece-wise linear continuous finite elements, that is, \(S_b\eqsim h^2 \,L\) with constants only depending on the shape regularity of the mesh.

This theorem can be proven by using the results in the Appendix of [30], which hold for one, two and three spatial dimensions. Moreover, this statement implies that if the stiffness matrix for linear continuous elements is an M-matrix, then \(S_b\) is an M-matrix as well, and therefore adding the term \(S_b\) improves the properties of monotonicity of the resulting discrete problem. Finally, the following result, together with the previous theorem, justifies the addition of the proposed stabilization terms to both the MINI element and the P1–P1 discretizations.

Theorem 3

Suppose that \(\mathcal {A}_C\), as in Theorem 1, is an isomorphism, and that D is spectrally equivalent to C, namely \(\alpha _0\Vert q_h\Vert _C\le \Vert q_h\Vert _D \le \alpha _1\Vert q_h\Vert _C\) for some positive constants \(\alpha _0\) and \(\alpha _1\). Then \(\mathcal {A}_{D}\) is an isomorphism.

From this result, we can state that any operator C, spectrally equivalent to \(\tau A_p + S_b\) will result in a stable discretization of the Biot’s model. The perturbations spectrally equivalent to \(S_b\) are of the form

$$\begin{aligned} \langle C p_h,q_h\rangle =\sum _{T\in \mathcal {T}_h} C_Th_T^{2}\int _T(\nabla p_h\cdot \nabla q_h), \end{aligned}$$

where \(C_T\), \(T\in \mathcal {T}_h\) are constants independent of the mesh size h or \(\tau \), and therefore we can conclude that an inf-sup condition is satisfied for stabilized P1–P1.

Once the stability of the two proposed stabilized schemes has been deduced, we can obtain estimates for the analysis of the fully discretized time dependent Biot’s model. A detailed error analysis of the problem can be found in [30], and next we summarize the main results presented in that paper. In the next, we will denote by c a generic constant independent of time step, mesh size and other parameters.

We can write the fully discretized scheme at time \(t_n\), \(n=1,2,\ldots \) as

Find \(\mathbf { u}_h^n=\mathbf {u}_h(t_n) \in \mathcal{U}_h \subset \left[ H^1(\Omega ) \right] ^d\) and \(p_h^n=p_h(t_n) \in \mathcal{Q}_h \subset H^1(\Omega )\), such that,

$$\begin{aligned}&a(\mathbf { u}_h^n, \mathbf { v}_h) - ({\text {div}}\mathbf { v}_h, p_h^n) = (f(t_n), \mathbf { v}_h), \quad \forall \mathbf { v}_h \in \mathcal{U}_h, \\&-({\text {div}}\bar{\partial }_t \mathbf { u}_h^n, q_h) - a_p(p_h^n, q_h) - \varepsilon h^2 (\nabla \bar{\partial }_t p^n_h, \nabla q_h) = 0, \quad \forall q_h \in \mathcal{Q}_h, \end{aligned}$$

where \(\bar{\partial }_t \mathbf { u}_h^n := (\mathbf { u}_h^n - \mathbf { u}_h^{n-1})/\tau \) and \(\bar{\partial }_t p_h^n := (p_h^n - p_h^{n-1})/\tau \). The initial data \(\mathbf { u}_h^0\) and \(p_h^0\) are given by the following stabilized Stokes equation,

$$\begin{aligned} a(\mathbf { u}_h^0, \mathbf { v}_h) - ({\text {div}}\mathbf { v}_h, p_h^0)= & {} (f(0), \mathbf { v}_h) \quad \forall \mathbf { v}_h \in \mathcal{U}_h, \\ ({\text {div}}\mathbf { u}_h^0, q_h) + \varepsilon h^2 (\nabla p_h^0, \nabla q_h)= & {} 0 \quad \forall q_h \in \mathcal{Q}_h. \end{aligned}$$

Although we do not consider this case here, the initial data can also be defined satisfying \(div u_h^0 = 0, \; p_h^0 = 0.\) In this case, similar convergence results can be obtained (see [30]).

We define the following norm on the finite element spaces: \( \Vert (\mathbf {u}, p ) \Vert _{\tau , h} := \big ( \Vert \mathbf { u} \Vert _a^2 + \tau \Vert p \Vert _{a_p}^2 + \varepsilon h^2 \Vert \nabla p \Vert ^2 \big )^{1/2},\) and the following elliptic projections \(\widetilde{\mathbf { u}}_h\) and \(\widetilde{p}_h\) for \(t>0\), such that

$$\begin{aligned} a( \widetilde{\mathbf { u}}_h, \mathbf { v}_h ) - ({\text {div}}\mathbf { v}_h, \widetilde{p}_h)= & {} a(\mathbf { u}, \mathbf { v}_h) - ({\text {div}}\mathbf { v}_h, p), \quad \forall \mathbf { v}_h \in \mathcal{U}_h \\ a_p(\widetilde{p}_h, q_h)= & {} a_p(p, q_h), \quad \forall q_h \in \mathcal{Q}_h. \end{aligned}$$

In this way, we can write the discretization error as follows,

$$\begin{aligned} \mathbf { u}(t_n) - \mathbf { u}_h^n= & {} (\mathbf { u}(t_n) - \widetilde{\mathbf { u}}_h(t_n) ) - (\mathbf { u}_h^n - \widetilde{\mathbf { u}}_h(t_n)) =: \rho _{\mathbf { u}}^n - e_{\mathbf { u}}^n, \\ p(t_n) - p_h^n= & {} (p(t_n) - \widetilde{p}_h(t_n) ) - (p_h^n - \widetilde{p}_h(t_n)) =: \rho _{p}^n - e_p^n, \end{aligned}$$

and study separately estimates for each of the terms. For the error of the elliptic projections (by using P1–P1 or mini-element), we have, for any t,

$$\begin{aligned} \Vert \rho _{\mathbf { u}} \Vert _a\le & {} c h ( | \mathbf { u} |_2 + | p |_1 ),\\ \Vert \rho _{p} \Vert _{1}\le & {} c h | p |_2, \quad \Vert \rho _{p} \Vert _{a_p} \le c h | p |_2,\\ \Vert \rho _p \Vert\le & {} c h^2 | p |_2. \end{aligned}$$

Besides this results, we also have the corresponding estimates for \(\partial _t \rho _u\) and \(\partial _t \rho _p\).

We can prove the following auxiliary estimates of the error between the elliptic projection and the numerical solution:

Lemma 4

The following estimates hold:

$$\begin{aligned} \Vert ( e_{\mathbf { u}}^n, e_p^{n}) \Vert _{\tau ,h}&\le \Vert (e_{\mathbf { u}}^0, e_p^{0}) \Vert _{\tau ,h} + c \tau \sum _{j=1}^n \left( \Vert w_{\mathbf { u}}^j \Vert _a + \varepsilon ^{1/2} h \Vert \nabla w_p^j \Vert + \varepsilon ^{1/2} h \Vert \nabla \partial _t p(t_j) \Vert \right) .\\ \Vert e_p^n \Vert _{a_p}&\le \Vert e_p^{0} \Vert _{a_p} + c \tau ^{1/2} \left[ \left( \sum _{j=1}^n \Vert w_{\mathbf { u}}^j \Vert _a^2\right) ^{1/2} \right. \nonumber \\&\left. \quad + \left( \sum _{j=1}^n \varepsilon h^2 \Vert \nabla w_p^j \Vert ^2 \right) ^{1/2} + \left( \sum _{j=1}^n \varepsilon h^2 \Vert \nabla \partial _t p(t_j) \Vert ^2 \right) ^{1/2} \right] , \end{aligned}$$

where \(w_{\mathbf { u}}^j := \partial _t \mathbf { u}(t_j) - \frac{\widetilde{\mathbf { u}}_h(t_{j}) - \widetilde{\mathbf { u}}_h(t_{j-1})}{\tau } \) and \(w^j_p := \partial _t p(t_j) - \frac{\widetilde{p}_h(t_{j}) - \widetilde{p}_h(t_{j-1})}{\tau }\). Furthermore, we also have the following estimate in the \(L^2\)-norm,

$$\begin{aligned} \Vert e_p^{n} \Vert \le c \Vert (e_{\mathbf { u}}^0, e_p^{0}) \Vert _{\tau ,h} + c \tau \sum _{j=1}^n \left( \Vert w_{\mathbf { u}}^j \Vert _a + \varepsilon ^{1/2} h \Vert \nabla w_p^j \Vert + \varepsilon ^{1/2} h \Vert \nabla \partial _t p(t_j) \Vert \right) . \end{aligned}$$
(44)

The next step is to find estimates for the terms corresponding to \(w_{\mathbf { u}}^j\) and \(w_{p}^j\):

Lemma 5

Let \(\mathbf { u}(t)\) and p(t) be the solution to the model Biot’s problem, \(w_{\mathbf { u}}^j = \partial _t \mathbf { u}(t_j) - \frac{\widetilde{\mathbf { u}}_h(t_{j}) - \widetilde{\mathbf { u}}_h(t_{j-1})}{\tau }\) and \(\rho _{\mathbf { u}}(t) = \mathbf { u}(t) - \widetilde{\mathbf { u}}_h(t)\). Then

$$\begin{aligned}&\sum _{j=1}^n \Vert w_{\mathbf { u}}^j \Vert _a \le c \left( \int _{0}^{t_n} \Vert \partial _{tt} \mathbf { u} \Vert _1 \mathrm {d} t + \frac{1}{\tau } \int _{0}^{t_n} \Vert \partial _t \rho _{\mathbf { u}} \Vert _1 \mathrm {d} t \right) , \\&\sum _{j=1}^n \Vert w_{\mathbf { u}}^j \Vert _a^2 \le c \left( \tau \int _{0}^{t_n} \Vert \partial _{tt} \mathbf { u} \Vert ^2_1 \mathrm {d} t + \frac{1}{\tau } \int _{0}^{t_n} \Vert \partial _t \rho _{\mathbf { u}} \Vert ^2_1 \mathrm {d} t \right) . \end{aligned}$$

Moreover, if \(w_p^j = \partial _t p(t_j) - \frac{\tilde{p}_h(t_{j}) - \tilde{p}_h(t_{j-1})}{\tau }\) and \(\rho _{p} = p(t) - \tilde{p}_h(t)\), we have

$$\begin{aligned}&\sum _{j=1}^n \Vert \nabla w_{p}^j \Vert \le c \left( \int _{0}^{t_n} \Vert \partial _{tt} p \Vert _1 \mathrm {d} t + \frac{1}{\tau } \int _{0}^{t_n} \Vert \partial _t \rho _{p} \Vert _1 \mathrm {d} t \right) , \\&\sum _{j=1}^n \Vert \nabla w_{p}^j \Vert ^2 \le c \left( \tau \int _{0}^{t_n} \Vert \partial _{tt} p \Vert ^2_1 \mathrm {d} t + \frac{1}{\tau } \int _{0}^{t_n} \Vert \partial _t \rho _{p} \Vert ^2_1 \mathrm {d} t \right) . \end{aligned}$$

Finally, assuming extra regularity of \(\mathbf { u}(t)\) and p(t), as usual for convergence analysis of the finite element method, we have the following theorem for both MINI element and P1–P1 stabilized element, which provides estimates for the final error.

Theorem 6

Let \(\mathbf { u}(t)\) and p(t) be the solution of the Biot’s system. Then we have the following estimate for displacement \(\mathbf { u}(t)\),

$$\begin{aligned}&\Vert \left( \mathbf { u}(t_n) - \mathbf { u}_h^n, p(t_n) - p_h^n \right) \Vert _{\tau ,h} \\&\quad \le \left\| \left( e_{\mathbf { u}}^0, e_p^0 \right) \right\| _{\tau , h} + c \left\{ \tau \left[ \int _{0}^{t_n} \Vert \partial _{tt} \mathbf { u} \Vert _1 \mathrm {d} t + \int _{0}^{t_n} \varepsilon ^{1/2} h | \partial _{tt} p |_1 \mathrm {d}t \right] \right. \\&\qquad + \,h \left[ | \mathbf { u}(t_n) |_2 + | p(t_n) |_1 + (\tau ^{1/2}+\varepsilon ^{1/2} h) | p(t_n)|_2 + \int _{0}^{t_n} \left( | \partial _t \mathbf { u}|_2 + | \partial _t p |_1 \right) \mathrm {d}t \right. \\&\left. \left. \qquad + \, \int _{0}^{t_n} \varepsilon ^{1/2} h | \partial _t p |_2 \mathrm {d}t \right] + t_n\max _{1\le j\le n} \varepsilon ^{1/2} h \Vert \nabla \partial _t p(t_j) \Vert \right\} . \end{aligned}$$

For pore pressure p(t), we have the estimate

$$\begin{aligned}&\Vert p(t_n) - p_h^n \Vert _{a_p} \\&\quad \le \Vert e_p^0 \Vert _{a_p} + c \left\{ \tau \left[ \left( \int _{0}^{t_n} \Vert \partial _{tt} \mathbf { u} \Vert ^2_1 \mathrm {d} t \right) ^{1/2} + \left( \int _{0}^{t_n}\varepsilon h^2 \Vert \partial _{tt} p \Vert ^2_1 \mathrm {d} t \right) ^{1/2} \right] \right. \\&\qquad + \, h \left[ |p(t_n)|_2 + \left( \int _{0}^{t_n} \left( | \partial _t \mathbf { u}|_2 + | \partial _t p |_1 \right) ^2 \mathrm {d} t \right) ^{1/2} + \left( \int _{0}^{t_n} \varepsilon h^2 | \partial _t p |_2^2 \mathrm {d} t \right) ^{1/2} \right] \\&\left. \qquad +\, \sqrt{t_n}\max _{1\le j\le n} \varepsilon ^{1/2} h \Vert \nabla \partial _t p(t_j) \Vert \right\} , \end{aligned}$$

and we also have the following error estimate in \(L^2\)-norm,

$$\begin{aligned}&\Vert p(t_n) - p_h^n \Vert \\&\quad \le c \Vert \left( e_{\mathbf { u}}^0, e_p^0 \right) \Vert _{\tau , h} + c \left\{ \tau \left[ \int _{0}^{t_n} \Vert \partial _{tt} \mathbf { u} \Vert _1 \mathrm {d} t + \int _{0}^{t_n} \varepsilon ^{1/2} h | \partial _{tt} p |_1 \mathrm {d}t \right] \right. \\&\qquad + \, h^2 | p(t_n)|_2 + h \left[ \int _{0}^{t_n} \left( | \partial _t \mathbf { u}|_2 + | \partial _t p |_1 \right) \mathrm {d}t + \int _{0}^{t_n} \varepsilon ^{1/2} h | \partial _t p |_2 \mathrm {d}t \right] \\&\qquad \left. +\, t_n\max _{1\le j\le n} \varepsilon ^{1/2} h \Vert \nabla \partial _t p(t_j) \Vert \right\} . \end{aligned}$$

Previous error estimates consists of two parts: the error for \(t>0\), which gives optimal convergence order; and the error in the approximation of the initial data, which can be split in two terms, one depending on the errors due to the elliptic projection and the other one corresponding to the errors due to the choice of initial conditions. Due to the choice of our initial data, satisfying a stabilized Stokes equation, the initial errors strongly depend on the regularity of the initial data, and in particular the assumptions on the regularity of the initial pore pressure are crucial. By assuming \(p(0) \in H_0^1(\Omega )\), the standard error estimates for the elliptic projection and stabilized Stokes equation show that the initial data errors are appropriately bounded, and therefore optimal order of convergence is achieved for the discrete problem. In this way, the overall convergence rate of the stabilized MINI element is optimal. However, if we assume that p(0) is merely in \(L^2(\Omega )\), then we cannot expect that the errors in the initial data are of optimal order, and, therefore, the overall convergence rate of the stabilized MINI element is not optimal as well.

4 Monolithic multigrid solver based on Vanka smoothers

Numerical simulation is increasingly prominent in the field of continuum mechanics, and a very important aspect is the efficient resolution of the resulting systems after the discretization of the models. Biot’s models lead to computationally complex problems for which traditional simulations become too expensive. Therefore, fast numerical algorithms have to be designed for their solution. Here, we deal with the design of a monolithic multigrid solver for the highly efficient solution of the resulting algebraic systems of equations. Special smoothers suitable for saddle point problems, as the Vanka type relaxations, are considered. By using this approach, an efficient multigrid solver is obtained for the solution of the quasi-static Biot’s model for soil consolidation.

Since their development in the 70’s, multigrid methods (see [14, 36, 39], for example) have been proved to be among the most efficient numerical algorithms for solving the large sparse systems of equations arising from the discretization of partial differential equations, achieving asymptotically optimal complexity at least for elliptic problems. These methods are iterative solvers mainly based on the acceleration of the convergence of classical iterative methods by using solutions obtained on coarser meshes as corrections. Two ideas are involved in the development of multigrid methods: the first one is the fact that some classical iterative methods have a strong smoothing effect on the components of the error corresponding to the high frequencies (high oscillating error components), and the second one is that a smooth error can be well represented on a coarser grid. These observations suggest the following structure of a two-grid cycle:

  1. 1.

    Perform \(\nu _1\) iterations of an iterative relaxation method \(S_h\) on the fine grid (pre-smoothing)

  2. 2.

    Compute the defect of the current fine grid approximation

  3. 3.

    Restrict the defect to the coarse grid by using a restriction operator \(R_{h,2h}\)

  4. 4.

    Solve the coarse grid defect equation

  5. 5.

    Interpolate the correction to the fine grid using a prolongation operator \(P_{2h,h}\)

  6. 6.

    Add the interpolated correction to the current fine grid approximation

  7. 7.

    Perform \(\nu _2\) iterations of an iterative relaxation method \(S_h\) on the fine grid (post-smoothing)

Following this algorithm, the two-grid error transformation operator is given by

$$\begin{aligned} M_{h,2h} = S_h^{\nu _2}(I_h - P_{2h,h} L_{2h}^{-1}R_{h,2h}L_h)S_h^{\nu _1}, \end{aligned}$$
(45)

where \(I_h\) denotes the identity and the subscript “2h” indicates that the coarse grid is obtained by doubling the mesh size in each space direction, which is called “standard coarsening”. Instead of inverting \(L_{2h}\), the coarse-grid equation can be solved by recursive application of this procedure, yielding a multigrid method. From the previous algorithm, it is clear that many details are open for discussion and decision, since all the components have to be properly chosen.

Regarding the coarse-grid correction part of the algorithm, standard inter-grid transfer operators, dictated by the geometry of the triangular grid, are considered here. This results in 7-point restriction operator and bilinear interpolation of neighboring coarse-grid unknowns. Finally, on the coarse grids, we apply direct coarse-grid discretization. However, the efficiency and robustness of a multigrid algorithm is usually strongly influenced by the smoother. Moreover, for the problem we are dealing with, an additional difficulty appears, since it results in a system of saddle point type aspect. An overview of multigrid methods for discretizations on rectangular grids of this type of problems is presented in [28], where coupled or Vanka-relaxation and decoupled distributive relaxation methods appear as the most suitable for this kind of problems. Due to the fact that for some systems of equations it is a challenge to design an efficient distributive relaxation scheme, Vanka smoothers seems to be the best option. These smoothers consist of decomposing the mesh into small subdomains and treating them separately. Therefore, one relaxation step consists of a loop over all subdomains, solving for each one the system arising from the corresponding equations. Next, we give a more detailed description of the iterative method. We consider a linear system of equations \(A_h\,u_h = f_h,\) which, in our case, arises from the discretization of a PDE problem. Vector \(u_h\) is composed of unknowns corresponding to m different variables. More concretely, \(N_i\) unknowns of each variable i are considered. Let B be the subset of unknowns involved in an arbitrary block, that is, \(B = \{u^1_{k_1(1)},\ldots , u^1_{k_1(n_1)},\ldots ,u^m_{k_m(1)},\ldots ,u^m_{k_m(n_m)}\},\) where \(k_i(1),\ldots ,k_i(n_i)\) are the global indexes of the \(n_i\) unknowns corresponding to variable i. In order to obtain the matrix \(A_h^B\) of the system to solve associated with block B,  we introduce the matrix \(V_B\) representing the projection operator from the vector of all unknowns to the vector of the unknowns involved in the block, as the following block-diagonal matrix

$$\begin{aligned} V_B = \left( \begin{array}{ccc} V_B^1 &{} &{} \\ &{} \ddots &{} \\ &{} &{} V_B^m \end{array}\right) . \end{aligned}$$
(46)

Here, each block \(V_B^i\) is a \((n_i\times N_i)-\)matrix, whose jth-row is the \(k_i(j)\)th-row of the identity matrix of order \(N_i.\) In this way, matrix \(A_h^B\) can be defined as

$$\begin{aligned} A_h^B = V_B\,A_h\, V_B^T. \end{aligned}$$
(47)

Therefore, this type of smoother results in a multiplicative Schwarz method with iteration matrix

$$\begin{aligned} \prod _{B=1}^{NB}(I-V_B^T\,(A_h^B)^{-1}\,V_B\,A_h), \end{aligned}$$
(48)

where NB is the number of blocks or small systems to be solved in a relaxation step of the iterative method. Very often in practice, instead of solving the local problems exactly, one can replace \(A_h^B\) with an approximation \({\widetilde{A}}_h^B\), obtaining the so-called multiplicative Schwarz method with inexact local solver, with iteration matrix given by

$$\begin{aligned} \prod _{B=1}^{NB}(I-V_B^T\,(\widetilde{A}_h^B)^{-1}\,V_B\,A_h). \end{aligned}$$
(49)

Therefore, many variants of box-type smoothers can be considered. They can differ in the choice of the subdomains which are solved simultaneously, and in the way in which the local systems to be solved are built. Notice that the different subdomains can also be visited in different orderings, for instance, they can also be treated with some patterning scheme, yielding to a multicolored version of these relaxation schemes. All this makes wider the variety of this type of relaxations.

This class of smoothers was introduced by Vanka in [41] to solve the finite difference discretization on rectangular grids of the Navier–Stokes equations. Since then, much literature can be found about the application of this type of smoothers, mainly in the field of Computational Fluid Dynamics [16, 17, 40], but also in the context of Computational Solid Mechanics, for example in [44]. Here, we consider a Vanka smoother suitable for the stabilized P1–P1 discretization of poroelasticity problem on triangular grids, in which all unknowns appearing in the discrete divergence operator in the pressure equation are simultaneously updated. This way of building the blocks is very common in Vanka-relaxations used for Stokes and Navier–Stokes problems. This approach implies that for the two-dimensional problem twelve unknowns corresponding to displacements and one pressure unknown, see Fig. 9, are relaxed simultaneously, making necessary to solve a \(13\times 13-\)system for each grid point. Then, we iterate over all grid points in lexicographic order, and for each of them the corresponding box is solved. In this full variant, all the unknowns in the system are considered coupled. Therefore, the need of solving such systems makes these smoothers expensive. A simplified variant can be considered by coupling each displacement unknown in the system only with itself and with the corresponding pressure unknown. In this way, the solution of the resulting systems becomes much cheaper, making the use of this diagonal version very appealing in practice. However, it is observed that the diagonal version of the point-box smoother can be less robust with respect to some applications. In our case, the multigrid based on the diagonal Vanka smoother provides a very efficient solver for the poroelasticity equations.

Fig. 9
figure 9

Unknowns simultaneously updated in point-wise box Gauss–Seidel smoother, and example of the overlapping between two arbitrary blocks. Circles denote velocity unknowns whereas the square refers to pressure degrees of freedom

On the other hand, it is well-known that the performance of multigrid methods strongly depends on the interplay between the smoothing and the coarse-grid correction part of the algorithm. This two principles can be combined by two basic approaches to multigrid solvers. In algebraic multigrid no information is used concerning the grid on which the governing PDE is discretized, and therefore it is more suitable when unstructured grids are considered. However, an alternative to this strategy is to consider a hierarchy of semi-structured grids, in which a geometric multigrid that takes advantage of the geometry of the grid, can be efficiently implemented. An initial totally unstructured grid is then considered to represent the geometry of the domain, and a regular refinement process is applied on each element of the input grid, resulting in a hierarchy of globally unstructured grids composed of structured patches, where the geometric multigrid can be implemented based on stencil-based operations. We have proposed this strategy for example in [33] for other problems like elasticity equations. This approach is also advantageous in the sense that the implementation uses stencil-based operations, since the local nature of the multigrid operators and the semi-structured character of the grid allow it, as well as it allows the use of low-cost memory storage of the discrete operator based on stencil formulation. For poroelasticity equations, we presented the efficient implementation of a multigrid finite element method on semi-structured grids in [11]. In this paper, the implementation on semi-structured grids of the linear finite element scheme is explained, focusing on the stencil-based implementation on each regular patch of the semi-structured grid. Moreover, an efficient procedure to construct these stencils by means of a reference hexagon is also described. Furthermore, due to the block-structure of the considered grids, each triangle of the coarsest triangulation can be treated as a different block, and then different components can be chosen on these patches. In particular, in [9], we have proposed the use of different smoothers for triangles which have different geometries, but this choice can be done in a very efficient way with the help of the local Fourier analysis.

5 Local Fourier analysis for Vanka smoother based multigrid

Local Fourier analysis (LFA, or local mode analysis) is a commonly used approach for analyzing the convergence properties of geometric multigrid methods. In this analysis an infinite regular grid is considered and boundary conditions are not taken into account. LFA was introduced by Brandt in [4] and afterward extended in [5]. A good introduction can be found in the paper by Stüben and Trottenberg [36] and in the books by Wesseling [42], Trottenberg et al. [39], and Wienands and Joppich [43]. LFA was generalized to triangular grids in [10], for discretizations based on linear finite element methods. Afterwards, we extended this generalization to systems of partial differential equations [12, 13].

Local Fourier analysis assumes that all the operations involved in the multigrid algorithm are local processes, that is, the operations performed on each unknown only depend on the information on nearby neighbors, what allows to neglect the effect of boundary conditions. By imposing some assumptions on the discrete operator: linear differential operators with constant coefficients, a basis of complex exponential eigenfunctions of the operator, called Fourier components, can be obtained. Summarizing, this analysis mainly simplifies the computation of the spectral radius of the k-grid iteration matrix, by considering the matrix representation of this operator with respect to such basis of eigenfunctions, which results in a block-diagonal matrix.

To perform the LFA on the considered regular triangular grids, we establish a non-orthogonal unitary basis of \({\mathbb R}^2\), \(\{{\mathbf e}_1, {\mathbf e}_2\}, \) in the directions of two of the edges determining the triangular grid. We also consider, for the frequency space, its reciprocal basis \(\{{\mathbf e}'_1,{\mathbf e}'_2\},\) i.e., \(({\mathbf e}_i,{\mathbf e}'_j)=\delta _{ij}, \, 1\le i,j\le 2, \) where \((\cdot ,\cdot )\) is the usual inner product in \({\mathbb R}^2\) and \(\delta _{ij}\) is the Kronecker’s delta, see [12]. Considering that the coordinates of a point in the basis, \(\{{\mathbf e}_1,{\mathbf e}_2\}\) are \({\mathbf x}=(x_1,x_2)\), we can extend our computational grid to a regular infinite grid,

$$\begin{aligned} G_h = \{{\mathbf x}=(x_1, x_2)\, \vert \, x_i=k_i h_i, \;k_i\in {\mathbb Z}, \ i=1,2 \}, \end{aligned}$$
(50)

where \(\mathbf{h} = (h_1, h_2)\) is a grid spacing in the coordinate system \(\{{\mathbf e}_1, {\mathbf e}_2\}\). Considering the scalar Fourier modes, \(\varphi _h({\varvec{\theta }'}, {\mathbf x}) =\mathrm{e}^{i \theta '_1 x_1} \, \mathrm{e}^{i \theta '_2 x_2}\), their vector counterparts are \({\varvec{\varphi }}_h({\varvec{\theta }'},{\mathbf x}):= \varphi _h({\varvec{\theta }'},{\mathbf x}) \cdot {\mathbf 1},\) where \({\mathbf 1} = (1,\ldots ,1)^t\, \in \, \ {\mathbb R}^q,\) (with q equal to the number of variables) \({\mathbf x}\in G_h,\) and \({\varvec{\theta }'} \in {\varvec{\Theta }}_h = (-\pi /h_1,\pi /h_1]\times (-\pi /h_2,\pi /h_2].\) They give rise to the Fourier space,

$$\begin{aligned} \mathcal{F}(G_h) = \mathrm{span} \{{\varvec{\varphi }}_h({\varvec{\theta }'},\cdot ) \ \vert \ {\varvec{\theta }'} \in {\varvec{\Theta }}_h\}. \end{aligned}$$

From the expression of the back Fourier transformation, it follows that each vector discrete function \({\mathbf u}_h(\mathbf{x})\) can be written as a formal linear combination of the Fourier modes, which are linearly independent discrete functions.

By considering vector operators \({\mathbf L}_h\) defined on the infinite grid and satisfying the assumptions of the LFA, it is fulfilled that the Fourier modes \({\varvec{\varphi }}_h({\varvec{\theta }'},{\mathbf x})\) are formal eigenfunctions of \({\mathbf L}_h\). More precisely, the following relation reads

$$\begin{aligned} {\mathbf L}_h{\varvec{\varphi }}_h({\varvec{\theta }'},{\mathbf x}) = \widetilde{{\mathbf L}}_h ({\varvec{\theta }'}){\varvec{\varphi }}_h({\varvec{\theta }'},{\mathbf x}), \end{aligned}$$
(51)

where \(\widetilde{{\mathbf L}}_h ({\varvec{\theta }'})\) is the so-called symbol of operator \({\mathbf L}_h\), which denotes the representation of the discrete operator on the Fourier space.

Most classical iterative methods can be expressed by means of a splitting of the operator \({\mathbf L}_h\) of the form \({\mathbf L}_h = {\mathbf L}_h^++{\mathbf L}_h^-\), where \({\mathbf L}_h^-\) relates the part of the operator corresponding to the unknowns which have been relaxed before the current approximation, and \({\mathbf L}_h^+\) to those that are going to be updated in the current or in the following steps. In this way, the iteration matrix of the smoothing operator is given by \({\mathbf S}_h=-({\mathbf L}_h^+)^{-1}{\mathbf L}_h^-\), and it is easy to prove that the Fourier modes are also its eigenvectors, satisfying a relation like in (51), with its Fourier symbol denoted as \(\widetilde{{\mathbf S}}_h ({\varvec{\theta }'})\). However, the overlapping block smoothers considered here do not come from such a decomposition of the discrete operator. The distinction with respect to other smoothers is that they update some variable more than once, due to the overlapping of the local subdomains which are simultaneously solved, and this fact has to be taken into account in the analysis because it causes that some intermediate errors appear apart from the initial and final errors. For this reason, Vanka smoothers require a special strategy to perform the local Fourier analysis.

To our knowledge, there are only few papers dealing with local Fourier analysis for overlapping smoothers, all of them for discretizations on rectangular grids. This analysis was performed in [35] for the staggered finite-difference discretizations of the Stokes equations, and in [24] for a mixed finite element discretization of the Laplace equation. In [32] an LFA for overlapping block smoothers on triangular grids is presented. This tool was applied to linear finite element discretizations for poroelasticity problems. Later, in [22], the analysis for such overlapping block smoothers is performed on rectangular grids for finite element discretizations of the grad-div, curl-curl and Stokes equations. In [31], we present and extend this analysis to general discretizations on triangular grids, including some special techniques for the case of edge-based discretizations. Two model problems are chosen to show this analysis, but we keep in mind that it can be carried over to a variety of other problems and other overlapping smoothers. The considered problems are the discretization by stabilized linear finite elements of the Stokes problem, and the low-order Nédélec’s edge elements for the curl-curl equation. Since the analysis of the Vanka smoother considered here for the poroelasticity problem in analogous to the one presented in [32] and similar to that explained in [31] for Stokes equations, we refer to the reader to these works in order to avoid to include here very technical and involved calculations. Instead, we present some results obtained with this analysis for both the full and the diagonal versions of the Vanka smoother. From now on, in all the results, for simplicity of notation we will denote \(k=\tau \displaystyle \frac{\kappa }{\eta }.\)

We start presenting some results for equilateral triangular grids. In Table 2, the two-grid convergence factors \(\rho _{2g}\) are displayed together with the experimentally measured W-cycle convergence factors \(\rho _h,\) using nine refinement levels, which have been obtained with a random initial guess and a right-hand side zero to avoid round-off errors. For a value of \(k = 10^{-8},\) the results obtained for different number of pre- and post-smoothing steps, \(\nu _1,\, \nu _2,\) are shown for both full and diagonal point-wise box-smoothers. In this table, we can observe the good correspondence between the experimentally measured factors and the predicted ones, what indicates that the proposed analysis gives very accurate predictions of the convergence factors of the box-relaxation based multigrid method. Also it is seen that the behavior of full and diagonal box smoothers, in this case, is identical, giving rise to almost the same values.

Table 2 Local Fourier analysis results for full and diagonal point-wise box-smoothers for different number of pre- and post-smoothing steps on an equilateral triangular domain

Next, we analyze the influence of parameter k on the behavior of box-type smoothers. To this end, two pre- and one post-smoothing steps are considered, and the two-grid convergence factors \(\rho _{2g},\) predicted by LFA, together with those factors experimentally computed, \(\rho _h,\) are displayed in Table 3, for different values of k,  varying from \(10^{-4}\) to \(10^{-13},\) by using both full and diagonal point-wise box-smoothers. The experimentally obtained and the predicted results match perfectly for any value of parameter k and, although the obtained results are not independent of k,  they are very satisfactory for any value of such parameter.

Table 3 Local Fourier analysis results for full and diagonal point-wise box-smoothers on an equilateral triangular domain for different values of parameter k

Due to the fact that the obtained results for full and diagonal point-wise box-smoothers are very similar, the latest is preferred for the computations since this approach is significantly cheaper than the full variant, and results in a very good performance.

Despite the good behavior of the diagonal-Vanka based multigrid for equilateral triangulations, for meshes characterized by a small angle, the obtained convergence factors deteriorate, as we can see in Fig. 10. It shows the spectral radius \(\rho _{2g} = \rho ({\mathbf M}_h^{2h})\) for diagonal point-wise box-smoother with two pre- and one post-smoothing steps, for a value of k equal to \(10^{-10},\) for a wide range of values of angles \(\alpha \) and \(\beta ,\) which are geometric parameters determining the shape of the triangular grid.

Fig. 10
figure 10

Spectral radius \(\rho ({\mathbf M}_h^{2h})\) for the diagonal point-wise box-smoother with two pre- and one post-smoothing steps for different triangles in function of two of their angles, for poroelasticity problem with parameter \(k=10^{-10}\)

In order to improve the results obtained for a very anisotropic grid, it is possible to consider the use of a line-wise Vanka smoother. This relaxation simultaneously updates all the unknowns involved in the blocks corresponding to the pressure points in a whole line. It is also possible to perform a local Fourier analysis for this line smoother, and some results are presented here in order to show how these smoothers can improve the obtained convergence factors. To this end, we consider an isosceles triangular domain with smallest angle of \(10^{\circ }.\) In Table 4, the predicted two-grid convergence factors, \(\rho _{2g}\) by considering two pre- and one post-smoothing steps, are shown for both line-wise and diagonal point-wise box-smoothers and for different values of parameter k. It is observed how the behavior of the diagonal point-wise box-smoother deteriorates whereas line-wise box-relaxation gives a significant improvement.

Table 4 Local Fourier analysis results for line-wise and diagonal point-wise box-smoothers for different values of parameter k,  on an isosceles triangular domain with smallest angle \(10^{\circ }\)
Fig. 11
figure 11

Coarsest triangulation of the computational domain and obtained grid in the hierarchy after four refinement levels

Finally, in order to demonstrate the good behavior of the proposed box-relaxation based multigrid, we present some results for the previously considered poroelastic problem on a cylindrical shell. In order to apply the proposed box-relaxation based geometric multigrid, a hierarchy of grids must be defined as in previous experiments. Then, for the unstructured coarsest grid, we have chosen the triangulation shown in left Fig. 11, which is composed of 18 quite regular triangles. From this triangulation, a regular refinement process is applied giving rise to a hierarchy of meshes. In particular, due to the curvature of the boundary, the refinement is performed leading to a good fitting of the grid to the real domain boundary as more refinement is made. For instance, the obtained grid after four refinement levels is depicted in right Fig. 11, as an example, where it can be seen how well the refined grid approximates the real boundary.

Then, this problem is solved by applying the proposed multigrid method, considering the diagonal point-wise box-smoother, and by using an F-cycle with two pre- and one post-smoothing steps. In Fig. 12, the obtained convergence of the multigrid algorithm for this poroelastic problem for different numbers of refinement levels is displayed. Satisfactory results are obtained, since for such complicated problem the residual is reduced to a value of \(10^{-6}\) after about 16 iterations of the multigrid algorithm.

Fig. 12
figure 12

Convergence of multigrid based on the diagonal point-wise box-smoother for different numbers of refinement levels