1 Introduction

The study of the flow of fluid through rock or soil, and the path it takes, is relevant to many practical scenarios. An example of such a flow arises in the contamination of groundwater by an industrial leak [1]. Further applications arise in in situ mineral leaching, in which a lixiviant is injected into rock to dissolve the ore and recover it in solution [2, 3], and the extraction of fluid from groundwater aquifers or oil reservoirs [4, 5].

Flow in fully saturated porous media is generally modelled using a well-known system of linear differential equations. When phreatic surfaces or interfaces are present, however, the location of these free boundaries is usually unknown. This makes the mathematical problem highly nonlinear, and thus, difficult to solve, since both the fluid velocity and the shape of the fluid region itself must be determined as part of the solution process. Closed-form solutions to these problems, in terms of familiar analytical functions, are, therefore, not usually possible, although some classical results are known for problems in which a high degree of symmetry exists and certain simplifying assumptions are possible (see the texts by Bear [6, 7] and Strack [8]). Otherwise, numerical methods must be used instead.

Many of the studies of plumes in porous media involve an assumption that the flow can be regarded as two dimensional. In addition, by considering the flow that is established after a long time, only steady-state behaviour need be considered, and this simplifies the problem description substantially. This has allowed a number of important insights into plume structure to be obtained. Wooding [9] carried out a two-dimensional steady asymptotic analysis in which the outer fluid could be entrained into the moving plume, which as a result becomes wider as it develops. This analysis is valid when the vertical speed in the plume is almost equal to that in the ambient fluid, and predicts that the width at the head of the entraining plume increases as the 2/3 power of its distance from the source. In an experimental investigation, Oostrom et al. [10] found that leachate plumes may be stable or unstable, depending on the density ratio of the two fluids and the volume flow rate at the source, and conditions for unstable plumes to form fingers were studied numerically and experimentally by Cremer and Graf [11]. Hewitt et al. [12] considered a steady two-dimensional model for a buoyancy-driven plume that encounters an internal layer of different permeability, and carried out a detailed asymptotic analysis of conditions under which the plume spreads. A very detailed numerical analysis of two-dimensional plumes has been undertaken by Slim [13], in a study that now incorporates time-dependent effects. She finds six different time regimes for plume evolution, including an early stage during which the plume widens and an intermediate stage during which dense fluid is stripped from the plume interface as it accelerates downwards.

In a recent paper, Browne and Forbes [14] analysed the formation and development, through time, of a vertical plume formed by the injection of a more-dense fluid into a wet porous medium. They considered two-dimensional geometry only, in order to simplify the mathematics. Thus, the flow occurred in vertical planes, with the heavier fluid injected through a horizontal line source orthogonal to these flow planes. Horizontal drilling wells are, in fact, used in some mining applications [15, 16]. Browne and Forbes [14] solved their planar flow problem using a spectral approach, in which the fluid velocity and density were represented using Fourier series with time-dependent coefficients. This gave highly accurate results, and the evolution of the fluid region from an initial cylinder into a fully developed vertical plume was demonstrated.

The purpose of this present paper is to investigate the analogous problem, in which the flow geometry is now three-dimensional and axisymmetric, with the denser fluid injected through a small spherical source. This would represent a situation as occurs in mineral leaching, for example, in which the leaching liquor is introduced through a narrow vertical pipe drilled into the rock. The equations describing this flow are presented in Sect. 2. To solve this nonlinear problem numerically, we use a spectral method similar in some ways to that in Browne and Forbes [14], but here we develop new basis functions, as discussed in Sect. 3 that allow us to consider a finite-sized source region. This is possibly more realistic and closer to industrial reality than approximating the injection region as an idealized point source, and it avoids the singularity that a point source represents. Nevertheless, at some distance from the source, outflow from a point source or a finite source would be almost indistinguishable from one another [17], as also observed experimentally by Bietenholz et al. [18]. We also present an asymptotic closed-form solution in Sect. 4 that estimates the plume shape far from the injection zone, and we compare this approximate solution with the computations of the fully nonlinear problem in Sect. 5. We consider the time-dependent behaviour of this three-dimensional flow, and a key aim is to determine the way in which the plume evolves in time, towards a steady-state configuration. A discussion in Sect. 6 concludes this paper.

2 Governing model

We wish to model the trajectory of some fluid as it flows through a porous medium of uniform porosity n and permeability k. The fluid is injected from a point source at the origin of a Cartesian coordinate system where the z-axis points vertically and the horizontal ground is located parallel to the xy-plane high enough above the point of injection such that the fluid remains underground. The acceleration of gravity, g, is directed downward. We assume that the fluid has density \(\rho _1\), and that the porous rock is already saturated with a fluid of a lower density, \(\rho _2\); however, both fluids have the same constant viscosity, \(\mu \).

Fluid is flowing radially in all directions from the injection point, and given this geometry, it is intuitive to use a spherical coordinate system, which will be done for the rest of this paper. We assume that the flow of fluid is axisymmetric such that there is no dependence on the azimuthal angle \(\theta \), but only the radial distance r and the polar angle \(\phi \) measured from the z-axis.

Initially, we assume there is a sharp interface between the region the heavier fluid saturates and the rest of the porous medium. As fluid is injected into the system, the two fluids will mix and it is no longer appropriate to assume a sharp boundary between two distinct fluids. We instead assume that the fluid density \(\rho (r,\phi ,t)\) varies continuously across a narrow boundary of finite width from \(\rho _1\) (the density of fluid injected at the source) to \(\rho _2\) (the density of the fluid that saturates the ground far away from the source). Similarly to a number of other papers [14, 19,20,21], we assume that the higher density of the introduced fluid is due to the addition of some solute with concentration \(C(r,\phi ,t)\) such that the density varies linearly with the concentration and \(C \rightarrow C_0\) as \(\rho \rightarrow \rho _1\); that is

$$\begin{aligned} \rho =\rho _2\left( 1+\frac{\rho _1 - \rho _2}{\rho _2 C_0}C\right) . \end{aligned}$$
(1)

The concentration of the solute satisfies the transport equation:

$$\begin{aligned} n\frac{\partial C}{\partial t}+\varvec{q}\cdot \varvec{\nabla }C=n\mathcal {D}\varvec{\nabla }^2 C, \end{aligned}$$
(2)

where \(\mathcal {D}\) is a constant diffusion coefficient for the solute and n is the porosity of the medium, a dimensionless constant that gives a measure of the void space in the porous rock that the fluid can flow through. From the pore pressure of the fluid, p, we can find the seepage velocity \(\varvec{q}\) using Darcy’s law in the form [22],

$$\begin{aligned} \frac{\mu }{k}\varvec{q}=-\varvec{\nabla }p-\rho g \left( \cos \phi \varvec{e}_r - \sin \phi \varvec{e}_{\phi }\right) . \end{aligned}$$
(3)

Here \(\mu \) is the dynamic viscosity of the fluid and k is the permeability of the porous medium. The unit vectors \(\varvec{e}_r\) and \(\varvec{e}_{\phi }\) point in the directions of increasing radial r and angular \(\phi \) coordinates, respectively. We use a Boussinesq approximation in which the fluid velocity also satisfies the continuity equation:

$$\begin{aligned} \nabla \cdot \varvec{q}=0, \end{aligned}$$
(4)

representing an incompressible fluid.

We assume that initially, the higher density fluid saturates a spherical region of radius a around the point source and that at time \(t=0\) the point source is suddenly turned on, thereafter, injecting fluid at the volumetric flow rate Q. The velocity of the fluid near the source can be written as follows:

$$\begin{aligned} \varvec{q} \rightarrow \frac{Q}{4\pi r^2} \varvec{e}_r \quad \text { as } r \rightarrow 0. \end{aligned}$$
(5)

At this point, it is convenient to make use of dimensionless variables, where all lengths have been scaled by the initial radius a of the injected fluid. Similarly, all times are scaled by \(n \mu a / k\rho _2 g\), pressures by \(\rho _2 g a\), and the concentration of the solute is scaled with reference to its value \(C_0\) at the source. Using this scaling, our governing Eqs. (1)–(3) become

$$\begin{aligned} \rho= & {} 1+(D-1)C, \end{aligned}$$
(6)
$$\begin{aligned} \frac{\partial C}{\partial t}+\varvec{q}\cdot \varvec{\nabla }C= & {} \beta \nabla ^2 C, \end{aligned}$$
(7)

and

$$\begin{aligned} \varvec{q}=-\varvec{\nabla }p-\rho \left( \cos \phi \varvec{e}_r - \sin \phi \varvec{e}_{\phi }\right) . \end{aligned}$$
(8)

The non-dimensional velocity of the fluid near the source is given by

$$\begin{aligned} \varvec{q} \rightarrow \frac{F}{4\pi r^2} \varvec{e}_r \quad \text { as } r \rightarrow 0. \end{aligned}$$
(9)

In the equations above, three dimensionless parameters have appeared. There is a density ratio,

$$\begin{aligned} D=\frac{\rho _1}{\rho _2}, \end{aligned}$$
(10)

a Froude number,

$$\begin{aligned} F=\frac{\mu }{k}\frac{Q}{\rho _2 g a^2}, \end{aligned}$$
(11)

and a dimensionless diffusion coefficient for the solute,

$$\begin{aligned} \beta =\frac{\mu }{k}\frac{n \mathcal {D}}{\rho _2 g a}. \end{aligned}$$
(12)

At the point of injection, the scaled concentration of the solute is subject to the boundary condition that

$$\begin{aligned} C \rightarrow 1 \text { as } r \rightarrow 0. \end{aligned}$$
(13)

Far from the source,

$$\begin{aligned} C \rightarrow 0 \text { and } \nabla p \rightarrow 0 \text { as } r \rightarrow \infty . \end{aligned}$$
(14)

Given that the velocity of the fluid satisfies the continuity Eq. (4), we know that a stream function \(\Psi (r,\phi ,t)\) exists such that the fluid seepage velocity can be written as follows:

$$\begin{aligned} \varvec{q}=-\frac{1}{r\sin \phi }\frac{\partial }{\partial \phi }\left( \Psi \sin \phi \right) \varvec{e}_r + \frac{1}{r}\frac{\partial }{\partial r}\left( r \Psi \right) \varvec{e}_{\phi }. \end{aligned}$$
(15)

Hence, the condition (9) for the velocity near the source can be transformed into a condition on the stream function; that is,

$$\begin{aligned} \Psi \rightarrow \frac{F}{4\pi }\frac{\cos \phi }{r \sin \phi } \text { as } r \rightarrow 0. \end{aligned}$$
(16)

Using the state Eq. (6) and the stream function form for the velocity as in (15), by taking the curl of Darcy’s law (8), we can show that

$$\begin{aligned} \nabla ^2\Psi - \frac{\Psi }{r^2 \sin ^2\phi }=(D-1)\left( \sin \phi \frac{\partial C}{\partial r}+\frac{\cos \phi }{r}\frac{\partial C}{\partial \phi }\right) . \end{aligned}$$
(17)

3 Numerical method

In this section, we describe the numerical method we use to solve (17) coupled with the transport Eq. (7), along with the conditions (16) and (13) at the source. It follows the method given in Browne and Forbes [14] which solved a similar system of equations, but for planar flow involving fluid injected along a line source. It is necessary to create an artificial boundary at \(r=R_{\infty }\) that is chosen to be large enough that it does not interact with the top of the plume; naturally it is inevitable that the bottom of the plume will always reach the computational boundary given enough time. At this outer boundary, we follow (14) and introduce the condition that

$$\begin{aligned} C(R_{\infty },\phi ,t)=0, \end{aligned}$$
(18)

meaning that there is no solute in the fluid far away from the source. We have also introduced a boundary at \(r=\alpha \) around the source to exclude the origin from the computational volume, which consequently is now a spherical shell as shown in Fig. 1. This was done to avoid problems caused by the singularity at the origin, but in any event, the finite fluid speed on the injection sphere \(r=\alpha \) more closely mimics physical reality. We replace the boundary conditions (13) and (16) at the source with conditions at this inner boundary such that

$$\begin{aligned} C(\alpha ,\phi ,t) = 1, \end{aligned}$$
(19)

and

$$\begin{aligned} \Psi (\alpha ,\phi ,t) = \frac{F}{4\pi }\frac{\cos \phi }{\alpha \sin \phi }. \end{aligned}$$
(20)

Note that the computational boundaries are chosen such that

$$\begin{aligned} 0<\alpha<1<R_{\infty }. \end{aligned}$$
(21)
Fig. 1
figure 1

Schematic diagram of a point source (marked by the red dot) that is injecting a fluid into a porous medium which is already saturated with a less dense fluid. The computational volume we are solving over is \(\alpha \le r \le R_{\infty }\), \(0\le \phi \le \pi \), \(0\le \theta \le 2\pi \)

The dimensionless concentration of the solute is represented in the form:

$$\begin{aligned} C(r,\phi ,t)=&1-\frac{(r-\alpha )^2}{(R_{\infty }-\alpha )^2}+\sum _{m=1}^{M} A_{m,0}(t) \sin \left( \frac{m\pi (r-\alpha )}{R_{\infty }-\alpha }\right) \nonumber \\&+\sum _{n=1}^{N}\sum _{m=1}^{M} A_{m,n}(t) r^{-\frac{1}{2}} p_{n+\frac{1}{2}}(\kappa _{m,n}r;\!\alpha ) P_n\left( \cos \phi \right) , \end{aligned}$$
(22)

where \(p_{n+\frac{1}{2}}(\kappa _{m,n}r;\!\alpha )\) is the Bessel function cross-product

$$\begin{aligned} p_{n+\frac{1}{2}}(\kappa _{m,n}r;\!\alpha )=J_{n+\frac{1}{2}}\left( \kappa _{m,n} \alpha \right) Y_{n+\frac{1}{2}}\left( \kappa _{m,n} r\right) - J_{n+\frac{1}{2}}\left( \kappa _{m,n} r\right) Y_{n+\frac{1}{2}}\left( \kappa _{m,n} \alpha \right) , \end{aligned}$$
(23)

and \(\kappa _{m,n}\) is the \(m^{th}\) positive root of

$$\begin{aligned} J_{n+\frac{1}{2}}\left( \kappa _{m,n} \alpha \right) Y_{n+\frac{1}{2}}\left( \kappa _{m,n} R_{\infty }\right) - J_{n+\frac{1}{2}}\left( \kappa _{m,n} R_{\infty }\right) Y_{n+\frac{1}{2}}\left( \kappa _{m,n} \alpha \right) =0. \end{aligned}$$
(24)

Here, \(J_{n+1/2}(z)\) and \(Y_{n+1/2}(z)\) are the Bessel functions of half-integer order of the first and second kinds, respectively, and we have used the notation \(p_{n+\frac{1}{2}}(\kappa _{m,n}r;\!\alpha )\) for the Bessel function cross-product, so as to be consistent with Abramowitz and Stegun [23, p. 361]. We can numerically find these roots in (24) using the method as described by Horsley [24, 25]. Not to be confused with \(p_{n+\frac{1}{2}}(\kappa _{m,n}r;\!\alpha )\), the terms \(P_n(\cos \phi )\) are the Legendre polynomials of order n, as defined in Abramowitz and Stegun [23]. We note that the basis functions go to zero on both boundaries, so the boundary conditions (18) and (19) for the concentration of the solute are satisfied by the first two terms in (22).

The stream function is also represented spectrally: the form

$$\begin{aligned} \Psi (r,\phi ,t)=&\frac{F}{4\pi }\frac{\cos \phi }{r\sin \phi } + \frac{r \sin \phi }{2} + (D-1)\sin \phi \Bigg \{ -\frac{r(r-\alpha )(2r-3\alpha )}{10(R_{\infty }-\alpha )^2} \nonumber \\&+ \sum _{m=1}^{M} A_{m,0}(t) \frac{R_{\infty }-\alpha }{m\pi }\Bigg [\cos \left( \frac{m\pi (r-\alpha )}{R_{\infty }-\alpha }\right) \left\{ 2\left( \frac{R_{\infty }-\alpha }{m\pi r}\right) ^2 - 1\right\} \nonumber \\&+ 2\left( \frac{R_{\infty }-\alpha }{m\pi r}\right) \sin \left( \frac{m\pi (r-\alpha )}{R_{\infty }-\alpha }\right) -2\left( \frac{R_{\infty }-\alpha }{m\pi r}\right) ^2\Bigg ] \nonumber \\&+\sum _{n=1}^{N}\sum _{m=1}^{M} B_{m,n}(t) r^{-\frac{1}{2}}p_{n+\frac{1}{2}}(\kappa _{m,n}r) P_n'\left( \cos \phi \right) \Bigg \}, \end{aligned}$$
(25)

ensures that (17) is satisfied when the \(B_{m,n}(t)\) are chosen appropriately.

In these series representations for \(C(r,\phi ,t)\) and \(\Psi (r,\phi ,t)\), the coefficients \(A_{m,0}(t)\), \(A_{m,n}(t)\), and \(B_{m,n}(t)\) are unknown functions of time t and the expressions become exact as the numbers M and N of Fourier modes approaches infinity. The first term in (25) is chosen to satisfy the condition (20) that models the fluid being injected into the system and the second term is there to represent the downward acceleration of gravity. As they satisfy

$$\begin{aligned} \nabla ^2\left( \frac{F}{4\pi }\frac{\cos \phi }{r\sin \phi } + \frac{r \sin \phi }{2}\right) - \frac{1}{r^2 \sin ^2\phi }\left( \frac{F}{4\pi }\frac{\cos \phi }{r\sin \phi } + \frac{r \sin \phi }{2}\right) =0, \end{aligned}$$
(26)

they do not have equivalent terms in the series for the concentration (22).

For the \(B_{m,n}(t)\) to satisfy equation (17), we must find the relation to the \(A_{m,n}(t)\) using Fourier analyses. We substitute the spectral forms for the concentration (22) and \(\Psi \) (25) into (17), and after some algebra, we find that

$$\begin{aligned} \sum _{n=1}^N\sum _{m=1}^M B_{m,n}(t)&\kappa _{m,n}^2 r^{-\frac{1}{2}}p_{n+\frac{1}{2}}(\kappa _{m,n}r) P_n'\left( \cos \phi \right) \sin \phi \nonumber \\ =&\sum _{n=1}^{N}\sum _{m=1}^{M} A_{m,n}(t)r^{-\frac{3}{2}} \left[ \frac{1}{2}p_{n+\frac{1}{2}}(\kappa _{m,n}r)P_n\left( \cos \phi \right) \sin \phi \right. \nonumber \\&-\kappa _{m,n}r q_{n+\frac{1}{2}}(\kappa _{m,n}r)P_n\left( \cos \phi \right) \sin \phi \nonumber \\&\left. +p_{n+\frac{1}{2}}(\kappa _{m,n}r)P_n'\left( \cos \phi \right) \cos \phi \sin \phi \right] . \end{aligned}$$
(27)

We then multiply (27) by functions \(r^{3/2}p_{l+\frac{1}{2}}(\kappa _{k,l}r)P_l'\left( \cos \phi \right) \sin ^2\phi \) and integrate over the volume \(\alpha<r<R_{\infty }\), \(0<\phi <\pi \) to get

$$\begin{aligned} B_{k,l}(t)=\frac{1}{2\kappa _{k,l}^2\mathcal {O}_{k,l}}\int _{a}^{R_{\infty }} p_{l+\frac{1}{2}}(\kappa _{k,l}r) \mathcal {S}_{m,l}(r)\, \text {d}r, \end{aligned}$$
(28)

where

$$\begin{aligned} \mathcal {S}_{m,l}(r) =&\sum _{m=1}^{M} A_{m,l-1}(t)\left[ p_{l-\frac{1}{2}}(\kappa _{m,l- 1}r) - \frac{2\kappa _{m,l-1}r}{2l-1}q_{l-\frac{1}{2}}(\kappa _{m,l- 1}r) \right] \nonumber \\&+ \sum _{m=1}^{M} A_{m,l+1}(t)\left[ p_{l+\frac{3}{2}}(\kappa _{m,l+ 1}r) + \frac{2\kappa _{m,l+1}r}{2l+3}q_{l+\frac{3}{2}}(\kappa _{m,l+ 1}r)\right] , \end{aligned}$$
(29)

and

$$\begin{aligned} \mathcal {O}_{k,l}= \frac{1}{2}\left[ \left\{ R_{\infty }q_{l+\frac{1}{2}}(\kappa _{k,l}R_{\infty })\right\} ^2 - \left\{ \alpha q_{l+\frac{1}{2}}(\kappa _{k,l}\alpha )\right\} ^2\right] . \end{aligned}$$
(30)

Note that

$$\begin{aligned} q_{n+\frac{1}{2}}(\kappa _{m,n}r)=J_{n+\frac{1}{2}}\left( \kappa _{m,n} \alpha \right) Y'_{n+\frac{1}{2}}\left( \kappa _{m,n} r\right) - J'_{n+\frac{1}{2}}\left( \kappa _{m,n} r\right) Y_{n+\frac{1}{2}}\left( \kappa _{m,n} \alpha \right) , \end{aligned}$$
(31)

where we have used the same notation for the derivative of the cross-product as in Abramowitz and Stegun [23, p. 361].

To solve numerically for \(C(r,\phi ,t)\) (and consequently \(\Psi (r,\phi ,t)\) as well), we wish to find the coefficient functions \(A_{m,0}(t)\) and \(A_{m,n}(t)\) so as to satisfy the transport Eq. (7) for the concentration of the solute. The coefficient functions \(B_{m,n}(t)\) will follow using (28). We use Fourier analysis to find the following system of nonlinear ordinary differential equations for the coefficients:

$$\begin{aligned} A_{k,0}'(t)=&-\frac{1}{R_{\infty }-\alpha }\int _0^{\pi }\!\int _{\alpha }^{R_{\infty }}\!\left( u \frac{\partial C}{\partial r} + \frac{w}{r}\frac{\partial C}{\partial \phi }\right) \sin \left( \frac{k\pi (r-\alpha )}{R_{\infty }-\alpha }\right) \sin \phi \,\text {d}r \,\text {d}\phi \nonumber \\&-\frac{12\beta \left[ 1-\cos (k\pi )\right] }{k\pi (R_{\infty }-\alpha )^2}+\frac{8\beta \alpha }{(R_{\infty }-\alpha )^3}\int _a^{R_{\infty }}\frac{1}{r}\sin \left( \frac{k\pi (r-\alpha )}{R_{\infty }-\alpha }\right) \,\text {d}r \nonumber \\&-\beta \left( \frac{k\pi }{R_{\infty }-\alpha }\right) ^2 A_{k,0}(t) + \sum _{m=1}^{M} A_{m,0}(t)\frac{4\beta m\pi }{(R_{\infty }-\alpha )^2}\nonumber \\&\times \int _{\alpha }^{R_{\infty }}\frac{1}{r}\cos \left( \frac{m\pi (r-\alpha )}{R_{\infty }-\alpha }\right) \sin \left( \frac{k\pi (r-\alpha )}{R_{\infty }-\alpha }\right) \,\text {d}r, \end{aligned}$$
(32)

and

$$\begin{aligned} A_{k,l}'(t)=&\frac{\beta }{\mathcal {O}_{k,l}}\sum _{m=1}^{M} A_{m,l}(t) \left[ -\left( l+\frac{1}{2}\right) \!\int _a^{R_{\infty }}\frac{1}{r}p_{l+\frac{1}{2}}(\kappa _{m,l}r)p_{l+\frac{1}{2}}(\kappa _{k,l}r)\,\text {d}r\right. \nonumber \\&+\kappa _{m,l}\int _a^{R_{\infty }}q_{l+\frac{1}{2}}(\kappa _{m,l}r)p_{l+\frac{1}{2}}(\kappa _{k,l}r)\,\text {d}r \nonumber \\&\left. + \kappa _{m,l}^2\int _a^{R_{\infty }} rp''_{l+\frac{1}{2}}(\kappa _{m,l}r)p_{l+\frac{1}{2}}(\kappa _{k,l}r)\,\text {d}r\right] -\frac{2l+1}{2\mathcal {O}_{k,l}}\nonumber \\&\times \int _0^{\pi }\!\int _a^{R_{\infty }}\!\left( u \frac{\partial C}{\partial r} + \frac{w}{r}\frac{\partial C}{\partial \phi }\right) r^{3/2}p_{l+\frac{1}{2}}(\kappa _{k,l}r)P_l\left( \cos \phi \right) \sin \phi \,\text {d}r \,\text {d}\phi . \end{aligned}$$
(33)

We also need to transform the initial conditions for the concentration, \(C(r,\phi ,0)\) into initial conditions for the coefficients, \(A_{k,0}(0)\) and \(A_{k,l}(0)\). Recall that initially we assumed that the porous medium is already saturated with some fluid without the presence of the solute (corresponding to a concentration of the solute equal to zero) and that there is a spherical region with radius \(r=r_{init}\) around the source in which a solute is dissolved in the fluid such that the concentration of the solute is equal to one. Therefore,

$$\begin{aligned} C(r,\phi ,0)= {\left\{ \begin{array}{ll} 1, &{} \alpha \le r\le r_{init}, \\ 0, &{}r_{init}<r\le R_{\infty }, \end{array}\right. } \end{aligned}$$
(34)

where \(r_{init}\) is another parameter to be chosen. Using similar Fourier analysis on our series representation (22), we can show that the initial coefficients are

$$\begin{aligned} A_{k,0}(0)=-\frac{2}{k\pi }\left[ \cos \left( \frac{k\pi (r_{init}-\alpha )}{R_{\infty }-\alpha }\right) +\frac{2}{k^2\pi ^2}\left[ 1-\cos (k\pi )\right] \right] , \end{aligned}$$
(35)

and

$$\begin{aligned} A_{k,l}(0)=0, l \ge 1. \end{aligned}$$
(36)

We make use of Lanczos smoothing [26] to lessen the impact of Gibbs’ phenomenon [27] occurring in our spectral solution at the jump discontinuity at \(r=r_{init}\). This has been done by multiplying each Fourier coefficient \(A_{k,0}(0)\) by \(\sin (\epsilon k)/\epsilon k\) where \(\epsilon \) is a small parameter. We typically chose this Lanczos parameter to have the value \(\epsilon =0.1\).

The system of Eqs. (32) and (33) is then integrated numerically forward in time using the MATLAB routine +ode45+. To do this, we have evaluated the integrals in (32) and (33) using von Winckel’s [28] Gauss–Legendre quadrature program +lgwt+ and have used five times the number of points in r and \(\phi \) as the number of modes M and N in Fourier space. This ensures our solutions are accurate according to the Nyquist criterion [29].

4 Asymptotic solution

As a comparison to our numerical results, we also look for a large-time steady-state solution by considering the scenario in which there exists a sharp interface \(r=R(\phi )\) between the two fluids. The densities are constant either side of this interface and the fluids cannot cross this sharp boundary. As such, and turning our focus to the denser fluid being injected, the fluid is subject to the kinematic condition:

$$\begin{aligned} \frac{\partial R}{\partial t}=u-\frac{w}{R}\frac{\partial R}{\partial \phi } \quad \text { on } r=R(\phi ,t), \end{aligned}$$
(37)

where u and w are the velocity components such that \(\varvec{q}= u\varvec{e}_r + w\varvec{e}_{\phi }\). As we are looking for a steady-state solution, we want to find an interface \(R(\phi ,t) \equiv R(\phi )\) that does not depend on time. We assume the approximate asymptotic form:

$$\begin{aligned} \Psi =\frac{F}{4\pi r}\frac{\cos \phi }{\sin \phi }+\frac{r\sin \phi }{2}, \end{aligned}$$
(38)

where the first term represents the outflow of fluid from the point source as in (16) and the second term represents the downward acceleration of gravity. It implies that

$$\begin{aligned} u=\frac{F}{4\pi r^2}-\cos \phi \quad \text { and } w=\sin \phi . \end{aligned}$$
(39)

Thus, far from the source at the bottom of the plume (i.e. as \(r\rightarrow \infty \) and \(\phi \rightarrow \pi \)), the velocity of the descending plume approaches \(\varvec{q}=1\varvec{e}_r\) in these dimensionless variables.

Substituting this solution for \(\Psi \) into the kinematic boundary condition and letting \(\partial R/\partial t=0\), we find that

$$\begin{aligned} \frac{F}{4\pi R^2}-\cos \phi -\frac{\sin \phi }{R}\frac{\text {d} R}{\text {d} \phi }=0 \quad \text { on } r=R(\phi ). \end{aligned}$$
(40)

This is a first-order differential equation for \(R(\phi )\) which we can solve to find

$$\begin{aligned} R(\phi )=\frac{1}{\sin \phi }\sqrt{\gamma -\frac{F}{2\pi }\cos \phi }. \end{aligned}$$
(41)

where \(\gamma \) is a constant that is yet to be determined. We choose \(\gamma \) by requiring \(R(\phi )\) to be finite at the top of the plume where \(\phi =0\) and as such, choose \(\gamma =F/2\pi \).

Therefore, as time approaches infinity, we find that the asymptotic interface becomes

$$\begin{aligned} R(\phi )=\sqrt{\frac{F}{4\pi }}\frac{1}{\cos (\phi /2)}. \end{aligned}$$
(42)

In Sect. 5 below, we compare this asymptotic solution to the results of our numerical solution. We also use it to guide our choice of \(r_{init}\), the radius of the initial spherical region inside which \(C=1\) at \(t=0\). From (42), we can show that far from the source (i.e. as \(\phi \rightarrow \pi \) and \(r \rightarrow \infty \)) the radius of the plume approaches \(\sqrt{F/\pi }\).

For the results shown in this paper, we have set \(r_{init}\) as the smaller of one and \(0.45\sqrt{F/\pi }\), both of which are illustrated in Fig. 2. We have done this to balance between avoiding an initial condition that is larger than the asymptotic plume shape and also avoiding an initial condition that fills too much of the computational domain.

Fig. 2
figure 2

Plots of the initial concentration profile as defined in (34) for \(r_{init}=1\) on the left, and \(r_{init}=0.45\sqrt{F/\pi }\) for \(F=5\) on the right. The profile has been reconstructed from the Fourier representation (22), and for both plots, we have used \(M=N=81\) Fourier modes over the domain \(0.3< r < 10\) with a Lanczos smoothing parameter of \(\epsilon =0.1\). In both plots, evidence of Gibbs’ phenomenon [27] is visible as small wavelets near the jump discontinuity

5 Results

In this section, we present a number of numerical results for a variety of different parameter values. Recall that our three-dimensionless parameters in (10)–(12) are a density ratio D, a Froude number F, and a dimensionless diffusion coefficient \(\beta \). We have used \(D=1.05\) for all results shown in this paper, which is well within the range for the Boussinesq approximation to hold true. We will present results for \(F=5,50\) and 100 and \(\beta =0.01\) and 0.0001, and we have chosen these to be consistent with the dimensional parameters as follows:

  • The dynamic viscosity, \(\mu \), of the fluid depends on the temperature of the given fluid; however, as some examples, at \(20^\circ \) C water has a dynamic viscosity of about 0.001 Pa s [6, p. 35] and a 60% aqueous solution of sulfuric acid has a dynamic viscosity of about 0.0059 Pa s [30, pP. 5–132]. We have considered both water and also sulfuric acid for its relevance to in situ mining [2, 31].

  • The permeability, k, of the porous medium might range from around \(10^{-19}\text {m}^2\) for unweathered clay to \(10^{-11}\text {m}^2\) for peat [6, p. 136].

  • The porosity, n, of the medium is a dimensionless measure of the void space so can only take values between zero and one. Typical values of the porosity of soils similar to those considered above are around 0.3 to 0.8 [6, p. 46].

  • A typical diffusion coefficient, \(\mathcal {D}\), in an aqueous solution is in the order of \(10^{-10}\text {m}^2\text {/s}\) to \(10^{-9}\text {m}^2\text {/s}\) [30].

  • For the flow rate, Q, of the fluid out of the injection point we considered volumetric flow rates in the range of \(10^{-6}\text {m}^3\text {/s}\) to \(1 \text { m}^3\text {/s}\).

  • The initial radius of the spherical region that the heavier fluid saturates is given by a. We considered values of a in the range from 0.01 m to 0.5 m.

The above dimensional parameters give rise to a large range of values for F and \(\beta \), and given the constraints of time and computing power, we have only found numerical solutions for a subset of sensible values. However, the results shown in this paper are consistent with the physically realistic dimensional parameters as described above.

Fig. 3
figure 3

Colour maps of the concentration of the solute C for the Boussinesq solution at the dimensionless time \(t=6\) using Froude number \(F=50\), density ratio \(D=1.05\), and dimensionless diffusion coefficient \(\beta =0.0001\). The solution on the left was computed using \(M=N=31\) Fourier modes with \(155 \times 155\) grid points over the computational domain \(0.3< r < 10\). The solution in the middle was computed using \(M=N=61\) Fourier modes with \(305 \times 305\) grid points over the same domain and the solution on the right was computed using \(M=N=81\) Fourier modes with \(405 \times 405\) grid points again, over the same domain

In order to establish the convergence of the numerical solution, it is important to demonstrate that the numerical results are independent of the numbers M and N of Fourier modes in our series representations (22), (25). In Fig. 3, we have compared colour maps of the concentration where we have used the same parameter values in all, except for the number of modes and mesh points used. The picture on the left in Fig. 3 was computed using \(M=N=31\) Fourier modes with \(155 \times 155\) grid points over the computational domain. Although evidence of Gibbs’ phenomenon can be seen over the whole domain, the shape of the descended plume can still be sufficiently observed. In comparison, the middle diagram of Fig. 3 was computed using \(M=N=61\) with \(305 \times 305\) grid points over the computational domain and shows a more converged numerical result. The shape of the plume is now much sharper and although still present, oscillations due to Gibbs’ phenomenon are greatly reduced. Lastly, the right-most picture in Fig. 3 was computed using \(M=N=81\) Fourier modes with \(405 \times 405\) grid point and shows a very converged numerical result with oscillations associated with Gibbs’ phenomenon even further reduced. Nevertheless, its plume shape is nearly indistinguishable from the results with 61 coefficients, showing that convergence has occurred with 81 coefficients. This is consistent with the convergence analysis by Allwright et al. [32]. We note that for Fig. 3 and subsequent figures in this paper, we have shown only a portion of the computational domain such that \(x \in [-6,6]\) and \(y \in [-10,5]\). This is the region in which the higher density fluid descends and is therefore the region of most interest.

Figure 4 shows a comparison between two solutions computed using Froude number \(F=50\), diffusion coefficient \(\beta =0.01\), and density ratio \(D=1.05\) at time \(t=6\) with different inner computational boundaries. The solution on the left was computed over the computational domain from \(r=\alpha =0.3\) to \(r=R_{\infty }=10\) whereas the solution on the right was computed from \(r=\alpha =0.9\) to the same \(r=R_{\infty }=10\). The larger inner boundary means that there is less of a difference between the inner and outer boundaries which makes the solution more numerically stable in respect to the calculation of the roots of the basis functions (23); however, in practice, there is not much difference between the two solutions. Importantly, the shape of the plume is unchanged.

Fig. 4
figure 4

Colour maps of the concentration of the solute C for the Boussinesq solution at the dimensionless time \(t=6\). The solutions were computed using Froude number \(F=50\), density ratio \(D=1.05\), and dimensionless diffusion coefficient \(\beta =0.01\) using \(M=N=81\) Fourier modes with \(405 \times 405\) grid points. The solution on the left was solved over the computational domain \(0.3< r < 10\), whereas the solution on the right has a larger inner boundary, specifically, its domain is \(0.9< r < 10\)

Fig. 5
figure 5

Colour maps of the concentration of the solute C for the Boussinesq solution at the dimensionless times \(t=2.75, 5.5\), and 8.25. The solutions were computed using Froude number \(F=5\), density ratio \(D=1.05\), and use \(M=N=81\) Fourier modes with \(405 \times 405\) grid points over the computational domain \(0.3< r < 10\). The solution at the top was computed using a dimensionless diffusion coefficient of \(\beta =0.01\) whereas the solution on the bottom was computed using \(\beta =0.0001\). The long-time solution has been plotted with a thick black-dashed line over the \(t=9\) plots

Solutions using Froude number \(F=5\) are illustrated in Fig. 5 at the three dimensionless times \(t=2.75,5.5\) and 8.25. They show the colour maps of the concentration C that were computed from (22) using \(M=N=81\) Fourier modes with \(405 \times 405\) grid points over the computational domain (note that only a subset of the domain is shown in the plots). The computational boundaries were set at \(\alpha =0.3\) and \(R_{\infty }=10\) and the density ratio is \(D=1.05\). The top row of plots has a diffusion coefficient of \(\beta =0.01\) and the bottom row uses \(\beta =0.0001\). At \(t=8.25\), we have also overlaid the numerical solutions with the large-time steady-state solution (42) as indicated by the thick black-dashed line. This is independent of \(\beta \) and so is the same for both top and bottom solutions. It can be seen that the steady-state solution is in close agreement with the numerical solutions for both values of \(\beta \). In both \(t=5.5\) plots, some disturbance is visible above the top of the plume; by \(t=8.25\), it can be seen that this disturbance has moved inside of the top part of plume. Nevertheless, it does not appear to have impacted the overall shape of the plume. In addition, at this time, the plume has almost reached the outside edge of the computational domain, thus, running our solution much further past this time has no practical motivation. Initially, at time \(t=0\), the heavier fluid occupies an initial sphere of radius \(0.45\sqrt{5/\pi }\) as shown in the plot on the right in Fig. 2, noting that the heavier fluid is in regions where \(C=1\).

At the earliest time \(t=2.75\) shown in Fig. 5, the plume widens slightly near its top in both pictures, to form an approximately conical shape. This is caused by the injection of fluid through the finite-radius hole shown, but may also be due to some entrainment of the surrounding stationary fluid in the wetted rock; this is suggested by the paper of Wooding [9] even though the conditions required for that approximation to be valid do not hold here. At later times, however, the plume develops a constant diameter, consistent with the analysis of Slim [13]. Figure 5 shows that as time progresses, the plume then descends under the effects of gravity and fluid injection at the source (9), and given how closely the numerical plume shape follows the large-time asymptotic solution (42) it suggests that both gravity and the source term are the dominant features of the flow, in the simple combination suggested by (38), for large time. For this relatively low injection rate, measured by the Froude number (11), the plume forms a narrow structure, in excellent agreement with the approximation (42).

Fig. 6
figure 6

Colour maps of the concentration of the solute C for the Boussinesq solution at the dimensionless times \(t=2.25, 4.5\), and 6.75. The solutions were computed using Froude number \(F=50\), density ratio \(D=1.05\), and use \(M=N=81\) Fourier modes with \(405 \times 405\) grid points over the computational domain \(0.3< r < 10\). The solution at the top was computed using a dimensionless diffusion coefficient of \(\beta =0.01\) whereas the solution on the bottom was computed using \(\beta =0.0001\). The long-time solution has been plotted with a thick black-dashed line over the \(t=6.75\) plots

Fig. 7
figure 7

Colour maps of the concentration of the solute C for the Boussinesq solution at the dimensionless times \(t=2, 4\), and 6. The solutions were computed using Froude number \(F=100\), density ratio \(D=1.05\), and use \(M=N=81\) Fourier modes with \(405 \times 405\) grid points over the computational domain \(0.3< r < 10\). The solution at the top was computed using a dimensionless diffusion coefficient of \(\beta =0.01\) whereas the solution on the bottom was computed using \(\beta =0.0001\). The long-time solution has been plotted with a thick black-dashed line over the \(t=6\) plots

In Figs. 6 and 7, we have increased the Froude number to \(F=50\) and \(F=100\), respectively, but have again shown colour maps of the concentration C that were computed from (22) using \(M=N=81\) Fourier modes with \(405 \times 405\) grid points over the same computational domain. The top row of plots in each figure has a diffusion coefficient of \(\beta =0.01\) and the bottom row uses \(\beta =0.0001\). At the last dimensionless time shown for each solution, we have also overlaid the colour maps with the large-time steady-state solution (42) as indicated by the thick black-dashed lines. Again, we see good agreement between the numerical solutions and the large-time asymptotic solutions. For all the solutions in Figs. 6 and 7, initially, at time \(t=0\), the heavier fluid occupies an initial sphere of unit radius as shown in the plot on the left in Fig. 2. We note that the higher the Froude number, the sooner the plume reaches the bottom of the computational domain. This is unsurprising as a larger Froude number (11) corresponds to a larger flow rate Q of the injected fluid (assuming all other parameters are kept constant) meaning that the fluid is entering the system and falling at a faster rate. In addition, the width of the plume widens as the Froude number increases, as suggested by the asymptotic solution (42).

6 Conclusions

In this paper, we have studied the injection of fluid into a porous medium in three-dimensional geometry. We have presented an asymptotic solution, valid for large times, and numerical results using a spectral method. The agreement between the two is very good for later times for all parameter sets we have considered. As the injection rate is increased (representing increasing Froude numbers), the plume that forms becomes wider, and also falls at a faster rate. For plumes with a larger dimensionless diffusion coefficient, the narrow interfacial zone between the heavier and lighter fluids widens and is less sharp. For future work, we may be able to generalize the spectral formulation such that it is able to cope with the presence of multiple singular injection points and extraction points as well.