1 Introduction

Numerous deep-subsurface activities have been associated with induced seismicity, including geothermal energy production, hydrocarbon production, underground storage of natural gas, \(\mathrm CO_2\) or hydrogen, and wastewater injection (Segall 1989; Suckale 2009; Elsworth et al. 2016; Foulger et al. 2018; Muntendam-Bos et al. 2022). Induced seismicity may lead to serious societal concerns and damage to housing and infrastructure. This has caused the early termination of several subsurface projects, such as the Groningen gas field in the Netherlands (Muntendam-Bos et al. 2022) and the enhanced geothermal project in Basel, Switzerland (Häring et al. 2008; Mignan et al. 2015). Therefore, understanding the factors leading to induced seismicity is crucial.

Changes in pore pressure caused by fluid injection or production alter the stresses in the rock through poro-elastic effects and may cause slip along existing faults. Such faults have typically been generated through deformations driven by plate tectonics over geological timescales, and are nearly always displaced, i.e., they have a nonzero offset (a.k.a. as fault throw); see Fig. 1 which displays a reservoir intersected by a so-called normal fault where tectonic extension in combination with gravity has caused the rock to the left of the inclined fault to move down relative to the rock to the right of the fault. Figure 2 displays the same reservoir but now intersected by a so-called reverse fault, a result from tectonic compression which caused the rock to the right of the fault to be pushed up relative to the rock to the left.

Fig. 1
figure 1

Schematic representation of a porous and permeable reservoir with height h and width w, embedded in a non-permeable domain and intersected by a displaced normal fault. The fault is characterized by dip \(\theta\) and offset \(t_f\) and is located at the center of the reservoir. The combined pore pressure \({P(x,y,t)=p^0(y)+p(x,y,t)}\) is assumed to be quasi steady state with prescribed values \({P_L(y,t)=p^0(y)+p_L(t)}\) and \({P_R(y,t)=p^0(y)+p_R(t)}\) at the left- and right-hand sides, respectively

Fig. 2
figure 2

Schematic representation of a porous and permeable reservoir intersected by a displaced reverse fault. All other details are as stated in Fig. 1

For a nonzero fault throw, pore pressure changes induce large shear stresses at the reservoir corners along the fault. The importance of the fault throw for the onset of seismicity was first recognized by Roest and Kuilman (1994). This effect was recently investigated in more detail by van den Bogert (2015), Buijze et al. (2017), van Wees et al. (2017), van den Bogert (2018), and Buijze et al. (2019a) through numerical studies. Such numerical models can account for complexities such as spatial heterogeneities, various friction laws, and multi-phase flow. However, these models are computationally expensive, partially because adequately resolving the large stress peaks at the reservoir corners requires an extremely fine mesh.

Analytical or semi-analytical solutions can provide a fast estimate of the stresses induced by pore pressure changes. These solutions cannot handle the complexities that numerical models can, but the advantage is that the stress peaks can be resolved in great detail (Wu et al. 2021). Commonly used analytical methods are inclusion theory (Eshelby 1957; Rudnicki 2002) and the closely related nucleus of strain concept (Goodier 1937; Geertsma 1966, 1973). Inclusion theory has been applied to investigate the poro-elastic effects of incremental reservoir pressures caused by injection or depletion (Segall 1985, 1989; Soltanzadeh and Hawkes 2008), or of thermal stresses (Segall and Fitzgerald 1998). More recently, the effect of the fault throw on Coulomb stresses and fault slip was investigated (semi-)analytically (Jansen et al. 2019; van Wees et al. 2019; Wu et al. 2021; Jansen and Meulenbroek 2022).

However, all these studies consider a spatially uniform near-steady-state increase or decrease in reservoir pressure and disregard the effect of pressure gradients and the corresponding flow across the fault. Postma and Jansen (2018) considered the effect of pressure transients on fault stresses but did not take into account the particular effect of fault throw. Anderson (2006) performed an in-depth analysis of the flow in a reservoir with a displaced fault but focused on flow in the horizontal plane (along and across the fault) while using a Dupuit assumption for the vertical flow. Zbinden et al. (2017) addressed the effects of flow in a displaced fault with such a large throw that the two reservoir blocks no longer share a common boundary.

Here, we will address the effect of steady single-phase flow across a fully conductive displaced fault between reservoir blocks in direct communication, while focusing on the vertical and horizontal flow as caused by the “jump” in the flow conduit. In particular, we aim to quantify the pressure field in the reservoir and its effects on the stresses in the fault. We pursue a semi-analytical approach such that the stress peaks at the reservoir corners can be computed fast and accurately. We consider a configuration with two wells, placed, respectively, on the left-hand and right-hand sides of the reservoir, indicated by \(P_L\) and \(P_R\) in Figs. 1 and 2. Such a setting is relevant for, but not restricted to, geothermal doublets.

2 Methods

2.1 Geometry

We consider a two-dimensional (2D) faulted reservoir with height h and width w and a geometry as depicted in Fig. 1. The fault is characterized by dip \(\theta\) and fault throw \(t_f\). In this paper, we specify dip angles up to 180°, which differs from the convention in geology to use dip angles of up to 90° in combination with a dip direction. Thus, our definition of a fault dip of 110° is equivalent to a dip of 70° in the opposite direction. The impermeable domain outside the reservoir extends to infinity. Locations inside and outside the reservoir are indicated with an \(x-y\) coordinate system with its origin at the reservoir center. Two wells penetrate the reservoir, one on the left-hand side and one on the right-hand side of the domain. We assume that the pore pressure can be controlled uniformly across the entire depth of the reservoir. The parameter values used in this study are mostly identical to those used in Jansen and Meulenbroek (2022) and are roughly based on the properties of the Groningen natural gas reservoir in The Netherlands; see Table 1.

Table 1 List of parameter values used in this study

2.2 Incremental Pore Pressure

Several assumptions are required to obtain a semi-analytical solution for the incremental pressure field p(xyt). We consider steady-state single-phase flow and assume that the permeability of the surrounding rock is negligible compared to the permeability of the reservoir, such that fluid flow outside the reservoir can be disregarded. Additionally, the fault is assumed to be infinitely thin and completely conductive. We further assume that Darcy’s law is applicable and that the permeability is homogeneous inside the reservoir.

Under these assumptions, the governing equations for fluid flow reduce to Laplace’s equation. Quasi-steady-state incremental pressures are prescribed at the vertical boundaries on the left- and right-hand sides of the reservoir, denoted by \(p_L(t)\) and \(p_R(t)\), respectively (Fig. 1). All other boundaries are no-flow boundaries. A fully analytical solution seems to be out of reach for this problem, but a semi-analytical solution can be found as follows. Since the governing equation is the Laplace equation, the geometry of the faulted reservoir can be transformed to a simpler domain through conformal mapping. The flow problem in the faulted reservoir somewhat resembles the problem of confined aquifer flow over a stepped base as considered by Bakker and Post, (2022, p.181). In the stepped base problem, the pressure field can indeed also be solved through conformal mapping. However, already in that simpler problem the inverse transformation (from the complex potential plane to the physical plane) cannot be obtained analytically. We face a similar difficulty while, moreover, the geometry of the flow domain is more complex such that we need to revert to the Schwarz–Christoffel method to transform the problem domain. A detailed description of the solution strategy is given in Appendix A.

The result can be expressed in terms of the average incremental pressure \({\bar{p}}(t) = \frac{p_L(t)+p_R(t)}{2}\) and the pressure drop \(\Delta p = p_R(t) - p_L(t)\), which yields

$$\begin{aligned} p(x,y,t) = {\bar{p}}(t) + J(x,y) \Delta p \end{aligned}$$
(1)

where the exact definition of J(xy) is given in Eq. (A18) in Appendix A. Note that this definition tacitly assumes that the pressure drop \(\Delta p\) is time-independent, whereas the average incremental pressure \({\bar{p}}(t)\) is a (slow) function of time, with positive and negative values of \({\bar{p}}\) corresponding to injection and depletion, respectively. We will drop the explicit dependence on time from the notation in the remainder of this paper.

The semi-analytical solution can also be applied to anisotropic reservoirs. Often, the vertical permeability is smaller than the horizontal permeability due to laminations within the reservoir. This difference in flow resistance can be represented by an equivalent isotropic domain with scaled height and width (Muskat 1937; Bakker and Post 2022). This transforms the anisotropic flow equation to Laplace’s equation, which allows the application of the semi-analytical solution presented here to the scaled domain.

In practice, the Schwarz–Christoffel algorithm shows convergence issues when some reservoir edges are much larger than other edges. This issue arises for our reservoir geometry since \(w \gg h\). To minimize such convergence issues, we only apply the Schwarz–Christoffel transformation to the region \(-2 \le \bar{x} \le 2\) and assume that the streamlines are parallel at this distance from the fault. The justification of this assumption and discretization of the subdomains is shown in Appendix A.4. The threshold of \(\pm 2h\) serves to make the Schwarz–Christoffel solution applicable to a large range of dip angles and fault throws, but this condition can be relaxed for some combinations of dip angle and fault throw.

2.3 Incremental Stresses

The stresses induced by pore pressure changes are computed using inclusion theory, similar to the work of Jansen et al. (2019) and Wu et al. (2021). The reservoir is treated as an inclusion in an infinite space with homogeneous elastic properties. Changes in pore pressure cause compaction or expansion of the reservoir. Since the reservoir is constrained by the surrounding rock, stresses develop in- and outside of the inclusion. Here, we only give a brief summary of the governing equations. A more rigorous derivation is given in Appendix B.

The displacements are computed by integrating Green’s functions over the inclusion domain. These Green’s functions describe the solution of the mechanical equilibrium equation for the displacements at a point (xy) due to a change in pore pressure at a point \((\zeta ,\xi )\). The main difference with the analytical work of Jansen et al. (2019) and Wu et al. (2021) is that the pressure is now non-uniform and should be included inside the integral, an approach that was earlier taken by Segall (1985). The expression for the incremental displacements then becomes

$$\begin{aligned} u_i(x,y) = \frac{D}{2} \iint _\Omega p(\zeta ,\xi ) g_i(x,y,\zeta ,\xi ) \ d\zeta \ d\xi , \end{aligned}$$
(2)

where \(D = \frac{(1-2\nu )\alpha }{2\pi (1-\nu )G}\), \(\alpha\) is Biot’s coefficient, \(\nu\) is Poisson’s ratio, and G the shear modulus. Expressions for the Green’s functions \(g_i\) are given in Appendix B. The strains are obtained from taking the spatial derivatives of the displacements

$$\begin{aligned} \epsilon _{ij}(x,y) = \frac{1}{2}\bigg (\frac{\partial u_i}{\partial x_j} + \frac{\partial u_j}{\partial x_i}\bigg ) \end{aligned}$$
(3)

The incremental stresses are computed from the strains using Hooke’s law. Outside the inclusion, the total strain \(\epsilon _{ij}\) can be used directly, but inside the inclusion the contribution of the eigenstress needs to be subtracted. For isotropic elastic properties, this yields

$$\begin{aligned} \sigma _{ij} = \lambda \epsilon _{kk}\delta _{ij} + 2G \epsilon _{ij} - \alpha p\delta _{ij} \delta _\Omega , \end{aligned}$$
(4)

where \(\lambda\) is Lamé’s first parameter, \(\delta _{ij}\) is the Kronecker delta, and \(\delta _\Omega\) is a modified Kronecker delta which equals 1 inside the reservoir and 0 outside. The subscript kk implies summation. The incremental stresses given by Eq. (4) are transformed to obtain the incremental normal and shear stresses at the fault according to

$$\begin{aligned} \sigma _{\perp }=\, & {} \sigma _{xx} \sin ^2\theta + \sigma _{yy}\cos ^2\theta - 2 \sigma _{xy} \sin \theta \cos \theta , \end{aligned}$$
(5)
$$\begin{aligned} \sigma _{\parallel }=\, & {} (\sigma _{xx} - \sigma _{yy})\sin \theta \cos \theta + \sigma _{xy}(\sin ^2\theta -\cos ^2\theta ). \end{aligned}$$
(6)

whereafter the incremental effective normal stress on the fault is given by

$$\begin{aligned} \sigma '_{\perp } = \sigma _{\perp } + \beta p \delta _{\Omega }. \end{aligned}$$
(7)

Fault slip is governed by combined (i.e., initial plus incremental) shear and effective normal stresses, which are defined as

$$\begin{aligned} {\Sigma }_{\parallel }=\, & {} \sigma ^0_{\parallel } + \sigma _{\parallel } , \end{aligned}$$
(8)
$$\begin{aligned} {\Sigma }'_{\perp }=\, & {} \sigma '^0_{\perp } + \sigma '_{\perp } , \end{aligned}$$
(9)

where superscripts 0 indicate initial values. Fault slip occurs when

$$\begin{aligned} |{\Sigma }_{\parallel }|> \Sigma _{sl}, \end{aligned}$$
(10)

where \(\Sigma _{sl}\) is the slip stress, defined as

$$\begin{aligned} \Sigma _{sl}=c-\mu _{st}{\Sigma }'_{\perp }, \end{aligned}$$
(11)

with c indicating fault cohesion and \(\mu _{st}\) the static friction coefficient inside the fault, and where it should be kept in mind that a negative normal stress corresponds to compression. Alternatively, the criterion for fault slip can be expressed in terms of the combined pre-slip Coulomb stress

$$\begin{aligned} \Sigma _C = |{\Sigma }_{\parallel }|- {\Sigma }_{sl}, \end{aligned}$$
(12)

in which case slip corresponds to positive values of \(\Sigma _C\).

Here, we only consider incremental stresses while we assume cohesion to be absent. In that case we can define the incremental Coulomb stress as

$$\begin{aligned} \sigma _C = |\sigma _{\parallel }|+ \mu _{st} \sigma '_{\perp }, \end{aligned}$$
(13)

Regions with positive incremental Coulomb stresses (\(\sigma _C > 0\)) indicate zones where the fault moves to failure. This does not necessarily mean that slip will occur here, as this also depends on the initial Coulomb stress distribution along the fault.

The integral for the displacements in Eq. (2) can be split into a component governed by the average incremental pressure \({\bar{p}}\) and a component affected by the pressure drop \(\Delta p\). The result can be written as

$$\begin{aligned} u_i = \frac{D {\bar{p}}}{2} \Bigg (\iint _\Omega g_i(x,y,\zeta ,\xi ) \ d\zeta \ d\xi + {\hat{p}} \iint _\Omega J(\zeta ,\xi ) g_i(x,y,\zeta ,\xi ) \ d\zeta \ d\xi \Bigg ) \end{aligned}$$
(14)

where the dimensionless pressure drop \({\hat{p}}\) is defined as

$$\begin{aligned} {\hat{p}} = \frac{\Delta p}{{\bar{p}}}. \end{aligned}$$
(15)

Equation (14) combined with Eq. (3) can be used to assess the significance of fluid flow on the strains and stresses in the entire domain while its subsequent application in Eqs. (4) to (7) allows for an assessment of the effect of flow on the (pre-slip) fault stresses. Equation (14) depends on the geometrical factor \(J(\zeta ,\xi )\), which is discussed in the next section, and on the relative pressure drop \({\hat{p}}\). When \({\hat{p}}\) approaches zero, the expression for the strain reduces to that for a uniform pressure field. In this case, fully analytical solutions for the displacements, strains, and stresses are available from Jansen et al. (2019) while corresponding compact expressions for the fault stresses, and a semi-analytical method to determine the resulting fault slip, can be found in Jansen and Meulenbroek (2022).

3 Results

3.1 Pressure Field

Figure 3 shows an example of a typical incremental pressure field in a reservoir with a displaced normal fault. For this example, we used a fault with dip angle \({\theta = 70^{\circ }}\), a scaled offset \({\hat{t}=\frac{t_f}{h}=\frac{75}{225}=\frac{1}{3}}\), and a reservoir width \(w = 20h\) which corresponds to a distance of 4500 m between the fixed pressure boundaries. We applied a negative unit pressure drop \({\Delta p = -1}\) MPa such that flow is in the “up-dip” direction (i.e., from left to right in Fig. 3). As seen in Eq. (1), the pressure field can be expressed as an average pressure plus a deviation caused by the pressure drop. Therefore, we plotted a scaled pressure defined as \({ (p(x,y)-{\bar{p}})/ \vert \Delta p\vert }\), which equals \(-J(x,y)\) in the case of a negative pressure drop. Hence, the figure shows the deviations from the average pressure for a unit decline in pressure. At large distances from the fault, the flow field is one-dimensional, i.e., the pressure drop is linear in the horizontal direction, as indicated by the vertical pressure contours and horizontal streamlines. Near the fault, however, the fluid must travel around the impermeable formations surrounding the reservoir which leads to a significant vertical flow component in this region.

Fig. 3
figure 3

Contour plot of the scaled pressure \({ (p(x,y)-{\bar{p}})/\vert \Delta p\vert }\), with \({\Delta p = -1}\) in a reservoir intersected by a normal fault. The scaled pressure is equal to the negative of the geometrical pressure deviation factor J(xy). The contours of the scaled pore pressure are indicated by dashed lines and the streamlines are indicated by solid lines. A scaled fault throw \({{\hat{t}} = t_f/h = \frac{1}{3}}\) and a dip angle \({\theta = 70^{\circ }}\) have been used in this example

The pressure deviations scale linearly with the applied pressure difference \(\Delta p\), but are also dependent on the reservoir geometry through the factor J(xy). The largest deviations occur at the edges of the reservoir at \({x = \pm 2250}\) m, with a magnitude of \(\pm 0.5 \Delta p\) (outside the figure). The function J(xy) thus adheres to the constraint \(-0.5 \le J \le 0.5\). It approaches zero near the center of the domain, where the pressure is closer to the average pressure, which coincides with the location of the fault in our setup. This means that the term inside the second integral term of Eq. (B25) will always be smaller than the first integral. However, the contribution of this second term may still be relevant, especially for large values of the relative pressure drop \({\hat{p}}\).

While the stresses at the fault are affected by pressure changes in the whole reservoir, the contributions of these changes diminish with their distance from the fault. In other words, the stresses along the fault are most sensitive to pressure changes close to the fault, while their values are also affected by the fault dip, offset, and reservoir width. The function value J(xy) at the upper external corner (e.g., at \({J(x,y)=J(54.6,150)}\) for the example of Fig. 3) is plotted as a function of the fault offset and dip in Fig. 4. A smaller dip corresponds to a fault that is more aligned to the main flow direction. This leads to larger pressure differences along the fault. A larger fault offset leads to a narrower opening between the left- and right-hand sides of the reservoir, which leads to larger pressure gradients along the fault. The function J is antisymmetric along the fault, so the absolute value of J is the same in the lower external corner, but with opposite sign.

Fig. 4
figure 4

Value of J in the upper external reservoir-fault corner as a function of scaled fault offset and fault dip. This value of J denotes the magnitude of the spatially dependent deviation from the average pressure. Values of \(\theta > 90^\circ\) indicate a reverse fault

Figure 5 shows an example of a typical incremental pressure field in a reservoir with a displaced reverse fault. All parameter values in this example are identical to those used to generate Fig. 3, except for the dip angle which is now taken as \({\theta = 120^{\circ }}\). Just like in Fig. 3, the flowlines close to the fault are forced to deviate from their undisturbed parallel horizontal trajectories. However, a difference between the configurations displayed in the two figures is that a normal fault causes the height of the reservoir to be locally reduced, whereas the reverse fault causes the height to be locally increased.

Fig. 5
figure 5

Contour plot of the scaled pressure \({ (p(x,y)-{\bar{p}})/\vert \Delta p\vert }\), with \({\Delta p = -1}\) in a reservoir intersected by a reverse fault. The scaled pressure is equal to the negative of the geometrical pressure deviation factor J(xy). The contours of the scaled pore pressure are indicated by dashed lines and the streamlines are indicated by solid lines. A scaled fault throw \({{\hat{t}} = t_f/h = \frac{1}{3}}\) and a dip angle \({\theta = 120^{\circ }}\) have been used in this example

3.2 Incremental Flow Resistance

For a given pressure drop \(\Delta p\), a reservoir without fault will provide a resistance to flow \(R_0\) resulting in a flow rate \(q_0\), whereas a reservoir with a displaced fault provides a larger resistance R resulting in a smaller flow rate q. We define the incremental resistance according to

$$\begin{aligned} R - R_0 = \frac{\mu }{\kappa }\Big (\frac{1}{f({\hat{w}}, {\hat{t}}, \theta )} - {\hat{w}}\Big ) = \frac{\mu }{\kappa } {\hat{R}} \end{aligned}$$
(16)

where \(\kappa\) is permeability, \(\mu\) is viscosity, \({{\hat{w}} = \frac{w}{h}}\) is scaled reservoir width, and f is a geometry-dependent factor defined in detail in Appendix A.4. The contribution of the reservoir geometry to the resistance is bundled in the dimensionless parameter \(\hat{R}\). Figure 6 displays the dimensionless resistance \({\hat{R}}\) as a function of \(\theta\) and \({\hat{t}}\) for a fixed value \({{\hat{w}} = \frac{4500}{225}=20}\). We verified with a numerical model that the influence of \({\hat{w}}\) on the added resistance is very small for \({\hat{w}} > 2\), and therefore Fig. 6 will be valid for most practical situations. The range of dip angles \({(60^\circ< \theta < 120^\circ )}\) in the figure is typically encountered in normal and reverse faulting regimes, and it can be seen that for these values the magnitude of the incremental resistance is primarily dependent on the scaled fault throw, and only to a lesser extent on the fault angle. The range of dip angles here does not include shallow-dipping features such as thrust faults. While the Schwarz–Christoffel method is applicable to such geometries, convergence issues arise for shallow dip angles, which we will elaborate on in the Discussion section.

Somewhat surprisingly, the incremental resistance becomes slightly negative for high dip angles (corresponding to a reverse fault) and small values of \({\hat{t}}\), although this is hardly visible in the figure. An explanation for this effect is the locally increased reservoir height (see Fig. 5), which, for small values of the scaled fault throw, results in a local reduction in flow resistance that just overcompensates the increased flow resistance caused by flow line disturbance.

Fig. 6
figure 6

Dimensionless additional resistance \({\hat{R}}\) as a function of fault dip \(\theta\) and scaled fault offset \({\hat{t}}\) for a fixed value \({\hat{w}} = 20\)

If we consider depletion in a hydrocarbon reservoir, the absolute value of the average incremental pressure \({\bar{p}}\) is small at the start of production, and the relative pressure drop, which was defined earlier as \({{\hat{p}} = \frac{\Delta p}{{\bar{p}}}}\), is therefore relatively large. As the reservoir is increasingly depleted, the absolute value of the average incremental pressure increases and the effect of fluid flow on fault stresses will therefore become relatively less significant with increase in reservoir depletion. On the other hand, in a typical geothermal doublet setting, the average pressure drop will be close to zero, because all the produced water is re-injected (although temperature effects may cause a slight shrinkage). In that case the effect of flow on the fault stresses should be compared to the effect of thermal stresses caused by the lower temperature of the re-injected water. We will elaborate on the practical consequences of these relative effects in the Discussion section.

3.3 Stresses Along the Fault

Figure 7 depicts the scaled incremental pressure \(\frac{p}{\bar{p}}\) and the scaled incremental Coulomb stress \(\frac{\sigma _C}{C}\) acting on the normal fault (\({\theta = 70^{\circ }}\)) for various values of the dimensionless pressure drop \({{\hat{p}}=\frac{\Delta p}{{\bar{p}} }}\) for a depletion situation \({({\bar{p}}<0)}\) with up-dip flow (i.e., flow from left to right). The stress is scaled by a factor \(C = \frac{(1-2\nu )\alpha |\bar{p}|}{2\pi (1-\nu )}\). The parameters used for this figure are given in Table 1. The line \({{\hat{p}}=0}\) coincides with a uniform incremental pressure field \({p={\bar{p}}}\), for which fully analytical pressure solutions are available (Jansen et al. 2019; Wu et al. 2021). Due to differential compaction between the reservoir and the surrounding rock, large shear stresses develop at the reservoir-fault corners. In case of depletion, the incremental Coulomb stress is positive between the “internal” reservoir-fault corners (i.e., for \({-75 \le y \le 75}\) m), marked in green in Fig. 7 and thus the fault moves toward failure in this region. However, this only represents the change in Coulomb stress. Whether fault slip will occur also depends on the initial Coulomb stress distribution.

For a uniform incremental pressure field (\({\hat{p}} = 0\)), the incremental stress profile is symmetric around the x-axis. The pressure and stress profiles become (more) asymmetric when the absolute value of the pressure drop increases. In case of depletion with up-dip flow, the pressure in the upper half of the reservoir is more negative (i.e., the reservoir is more depleted here) than in the bottom half, and this asymmetry becomes more pronounced with increasing \({\hat{p}}\); see Fig. 7 (left). However, as can be seen from Fig. 7 (right), the corresponding effect of flow on the positive values of the pre-slip Coulomb stresses around \({y = \pm 75}\) m is very small. In case of depletion with down-dip flow (i.e., flow from right to left), the additional pressures change sign and the Coulomb stress profile is mirrored in the x-axis, but the effect remains negligible.

Fig. 7
figure 7

Scaled pressure and stresses under depletion with a fault throw \({{\hat{t}} = \frac{1}{3}}\) and dip \({\theta = 70^{\circ }}\). The dotted lines indicate the coordinates of the reservoir corners and the gray shaded areas represent the reservoir geometry. Left: the dimensionless pressure \(\frac{p}{\bar{p}}\) along the fault for various values of the dimensionless pressure drops \({\hat{p}}\). Right: the scaled incremental Coulomb stresses for various values of the dimensionless pressure drop \({\hat{p}}\). The incremental Coulomb stresses have been scaled by a factor \(C = \frac{(1-2\nu )\alpha |\bar{p}|}{2\pi (1-\nu )}\). The green patches indicate regions with positive incremental Coulomb stresses (\({\sigma _C > 0}\)), where the fault moves closer to failure

Figure 8 depicts the scaled pressure and incremental Coulomb stresses for a similar situation as Fig. 7, but now for an injection situation. The flow is still from left to right, but the sign of the average pressure is now positive, meaning that the dimensionless pressure drop \({\hat{p}}\) is now negative. The regions with positive incremental Coulomb stress now lie outside the reservoir (i.e., \(y < -75\) m and \(y > 75\) m). Figure 8 (right) illustrates that in case of injection the positive incremental Coulomb stresses are much more influenced by fluid flow than in case of depletion. The green areas indicate positive incremental Coulomb stresses for \({{\hat{p}} = 0}\), as was the case for depletion. The cyan areas, which were invisible in case of depletion, now indicate the positive incremental Coulomb stresses for \(\hat{p} = -10\). Compared to the no-flow situation, the upper region with positive incremental Coulomb stresses shrinks, while the lower region expands. Changing the flow direction to down-dip flow (from right to left) yields a similar result, although mirrored in the x-axis, such that the growth of the zones of positive incremental Coulomb stresses then occurs in the upper region.

Fig. 8
figure 8

Scaled pressure and stresses under injection with a fault throw \({{\hat{t}} = \frac{1}{3}}\) and dip \({\theta = 70^{\circ }}\). The dotted lines indicate the coordinates of the reservoir corners and the gray shaded areas represent the reservoir geometry. Left: the dimensionless pressure \(\frac{p}{\bar{p}}\) along the fault for various values of the dimensionless pressure drop \({\hat{p}}\). Right: the scaled incremental Coulomb stresses for various values of the dimensionless pressure drop \({\hat{p}}\). The incremental Coulomb stresses have been scaled by a factor \(C = \frac{(1-2\nu )\alpha |\bar{p}|}{2\pi (1-\nu )}\). The green patches indicate the regions of positive incremental Coulomb stresses for \({{\hat{p}} = -1}\) where the fault moves closer to failure, while the cyan patches indicate the regions of positive incremental Coulomb stresses for \({{\hat{p}} = -10}\)

Figures 7 and 8 both depict stress changes in a normal fault. Similar figures can be produced for a reverse fault, but they will qualitatively not be very much different from those for normal faults. Furthermore, the effects will be less severe in the sense that the combined Coulomb stresses in reverse faults will only become positive in very small regions. This is because reverse faults typically experience comparatively large compressive initial normal stresses as a remainder of the compressive tectonic stresses that caused the formation of the reverse faults (Jansen et al. 2019).

We note that positive incremental Coulomb stresses give an indication of where slip patches may develop, but do not tell the full story. The potential slip patches are also dependent on the initial Coulomb stress distribution. Once slip occurs, additional shear stresses occur along the fault leading to a shear stress redistribution and a corresponding modified post-slip Coulomb stress pattern (Jansen and Meulenbroek 2022). Moreover, the occurrence of dilation may introduce additional normal stresses and thus further complicate the post-slip stress pattern. Furthermore, slip may occur aseismically, i.e., gradually; or co-seismically, i.e., in the form of a seismic event (a.k.a. an earthquake). The nucleation of a seismic event typically occurs after growth of a slip patch over a certain distance or after the growth rate reaches a certain limit, depending on the details of the friction law; see, e.g., Uenishi and Rice (2003); Ampuero and Rubin (2008). A detailed analysis of flow-induced seismicity is well beyond the scope of the present paper, but from the results presented above we can safely draw the conclusion that fluid flow in displaced faults has a much larger effect on slip patch growth in the case of injection compared to the case of depletion.

4 Discussion

4.1 Consequences for Practice

As a practical depletion example, we consider the Groningen natural gas field in the Netherlands (van Elk et al. 2021) which contains a large number of faults with a wide range of offsets. A typical pressure difference over a distance of about 5 km is \(\Delta p = -0.5\) MPa (Pijpers 2018), while the average incremental pressure, of which probably only a small fraction is caused by displaced faults with \({{\hat{t}} < 1}\), is at the moment typically around \({\bar{p}} = -25\) MPa. This results in \({\hat{p}} = 0.02\), which shows that the relative contribution of pressure drop to the incremental pressure is currently very small. Close to the wells (or well clusters) much stronger gradients may occur. In that case we should also take into account the strongly nonlinear relationship between pressure and volume in gasses, e.g., through the use of a pseudo gas formulation (Postma and Jansen 2018). However, even for these potentially higher relative pressure drops, it still holds that the effect of flow on the pre-slip Coulomb stresses in case of depletion is very small such that steady-state flow is therefore unlikely to significantly affect fault slip in the Groningen reservoir under the current conditions. Note, however, that for displaced faults with \({{\hat{t}} > 1}\) another, more significant effect may be at play, as will be discussed below.

As a geothermal example, we consider a typical low-enthalpy geothermal doublet in the Netherlands (i.e., a pair of wells for hot water production at temperatures below 90\(^\circ\) C and subsequent re-injection of the cooled-down water in the same reservoir layer (Buijze et al. 2019b). This setup may have a similar reservoir height as the example described above, while the distance between the injector and producer will be between 1 and 2 km with a pressure drop between the wells up to 5 MPa of which typically only a small fraction will be caused by displaced faults (Daniilidis et al. 2021). The re-injection of cold water will cause shrinkage of the reservoir rock which has a similar effect as a pressure decrease due to production. In case of a temperature drop \(\Delta T = 50^\circ\), the equivalent average incremental reservoir pressure \({\bar{p}}_{eq}\) can be expressed as (Segall and Fitzgerald 1998)

$$\begin{aligned} {\bar{p}}_{eq} = \frac{2G(1+\nu )\lambda _T \Delta T}{(1-2\nu )\alpha }, \end{aligned}$$
(17)

where \(\lambda _T\) is the linear thermal expansion coefficient. With the data given in Table 1 this results in an equivalent depletion \({{\bar{p}}_{eq}\approx -24}\) MPa, which is similar to the case of depletion in the Groningen gas field. The effect of steady-state flow on the fault stresses is therefore much smaller than the effect of cooling. However, steady-state flow may be significant when the cold front has not yet reached the fault, in particular for faults located close to the injector. Detailed site-specific studies will be necessary to quantify these potential effects with more certainty.

It should be noted that in the Groningen reservoir, and in typical geothermal doublets in the Netherlands, it has been found that faults are not critically stressed (van Wees et al. 2014; Dempsey and Suckale 2017; Muntendam-Bos et al. 2022). However, in tectonically more active regions, critically stressed faults do frequently occur in which case even the relatively small effects of steady-state flow might indeed lead to the reactivation of (near-)critically stressed faults.

4.2 Limitations

In this study, we assumed that the fault was completely conductive (i.e., that the permeability in the fault is the same as in the reservoir rock). In reality, faults may be partially conductive or completely sealing (Caine et al. 1996). A non-conductive fault would lead to two uniform pressure fields on either side of the fault, most likely of different magnitude. This was considered by Wu et al. (2021), and such a configuration can also be handled with our approach. A partially conductive fault, which would lead to a jump in the pressure between both sides of the fault, is more complex to analyze analytically. Anderson (2006) developed an analytical solution for the jump by treating the fault as an inhomogeneity. However, he used the Dupuit approximation and hence neglected vertical flow in the reservoir which may significantly affect the pressure along a displaced fault. Due to the complexity of the reservoir geometry, a (semi-)analytical solution for a partially conductive displaced fault seems to be out of reach.

Fault flow in a slightly different configuration was investigated numerically by Zbinden et al. (2017) who addressed the effects of flow in a displaced fault with a scaled throw \({{\hat{t}} > 1}\) such that the top of the hanging wall is below the bottom of the foot wall. In case of a non-conductive fault, this would imply complete hydraulic separation between the reservoir blocks to the left and to the right of the fault. However, Zbinden et al. (2017) modeled the fault as conductive such that it provides a pathway for fluid flow between the blocks, and they concluded that for this configuration, where fluid is forced through a very narrow pathway, flow plays a major role in pore pressure and stress evolution within the fault, especially in case of differential depletion.

Another possible effect, not considered in the present study, is a change in fault strength that may result from flow across or along the fault, in particular when two-phase (gas-liquid) effects play a role. Depending on lithology, fluid properties and detailed fault geometry such fault weakening may lead to a significantly accelerated transition from aseismic slip to seismicity; see, e.g., Hunfeld et al. (2019); Snell et al. (2020) and references therein.

We neglected flow outside of the reservoir. In reality, the permeability in the over- and underburden will be nonzero and there will be some pressure diffusion across the boundary of the reservoir. This would somewhat smoothen the discontinuity in the pore pressure across the reservoir boundary (e.g., Figs. 7 (left) and 8 (left)), which would also smoothen the stress peaks at the reservoir corners. However, this effect is expected to be negligible when the permeability of the reservoir is much larger than the permeability of its surroundings.

Furthermore, we assumed that the elastic properties of the reservoir and its surroundings are equal and homogeneous. In reality, the over- and underburden are likely to have elastic properties different from the reservoir. Such contrasts in rock stiffness would alter the magnitude of the incremental stresses, but the effect of steady-state flow on the stresses is expected to remain similar. While theoretically there exist analytical methods for treating inhomogeneous inclusions (Mura 1987), these methods are only practical for elliptical inclusions (Ma and Korsunsky 2014, 2022). For other inclusion shapes, it is more convenient to resort to numerical methods.

While the Schwarz–Christoffel method can theoretically be applied to fault offset ranges from \(0< \hat{t} < 1\) and dip angles from \(0^\circ< \theta < 180^\circ\), in practice the transformation and/or its inverse cannot be solved with appropriate accuracy. This is the case for large fault throws, when the flow opening becomes very narrow, and for shallow dip angles. This limits the application of the Schwarz–Christoffel method to certain reservoir geometries. These limitations can be circumvented by using purely numerical methods, which would also allow for including more complex features, such as heterogeneity or transient flow. The semi-analytical approach presented here is therefore not expected to replace existing numerical methods. However, the semi-analytical approach has the advantage of being able to accurately resolve the Coulomb stress peaks. Therefore, it is a helpful tool for assessing changes in Coulomb stresses, in this particular case due to steady-state flow.

5 Conclusions

We investigated the effect of steady-state flow in a reservoir with a displaced, conductive fault through conformal mapping. Similar to the problem of confined aquifer flow over a stepped base, we needed a semi-analytical approach to compute the inverse transformation (Bakker and Post 2022). Moreover, the more complex geometry of the faulted reservoir required the use of the Schwarz–Christoffel transformation. Inclusion theory was used to compute the stresses along the fault.

The additional resistance to fluid flow caused by a displaced fault, relative to the resistance in a reservoir without fault, is a function of dip angle, scaled fault throw (i.e., fault throw divided by reservoir height) and scaled reservoir width (i.e., reservoir width divided by reservoir height). For dip angles \({60^\circ< \theta < 120^\circ }\), as typically encountered in faults originating from tectonic events, the magnitude of the scaled resistance is primarily dependent on the scaled fault throw, to a lesser extent on the fault angle, and hardly at all on the scaled reservoir width.

The impact of fluid flow across a displaced fault on stresses along the fault depends on both the reservoir geometry and the pressure drop over the fault zone. The effect of flow is most strongly felt at the “external” reservoir-fault corners where the pressure is more influenced than at the “internal” corners, and where therefore also the fault stresses are more strongly influenced. It is known from earlier work that injection results in the development of zones of positive combined Coulomb stresses at the “external” reservoir corners, whereas depletion results in positive incremental Coulomb stresses at the “internal” corners (Jansen et al. 2019). Therefore, the effect of flow is considerably larger in case of injection than in case of depletion. Moreover, in case of injection with up-dip flow the effect is a stronger increase in Coulomb stress at the bottom of the reservoir, whereas in case of injection with down-dip flow the effect is a stronger increase at the top.

As a practical example of depletion in a natural gas field, we considered the Groningen field in the Netherlands. An order-of-magnitude estimate of the effect of flow indicates that steady-state flow across displaced faults is unlikely to significantly affect fault slip in the Groningen reservoir under the current conditions. As an example of geothermal energy production, we considered generic dimensions of typical low-enthalpy geothermal doublets. In this case, we find that steady-state flow may possibly play a small role in the development of stresses in displaced faults, in particular close to the injector, but site-specific assessments will be necessary to quantify the effect.