1 Introduction

Solute transport in homogeneous media is well reproduced by the advection–dispersion equation (ADE). However, this is not the case in real aquifers because they are heterogeneous (Le Borgne et al. 2008a, b; Gjetvaj et al. 2015; Willmann et al. 2008), which leads to a commonly observed nonequilibrium (Alcolea et al., 2008; Vogel et al. 2006). Observed transport is termed anomalous (i.e., non-Fickian). Anomalous transport is evidenced by the scale dependence of dispersivity (Lallemand-Barres and Peaudecerf 1978), or by tailing in concentration breakthrough curves (Valocchi 1985; Carrera 1993). But beyond conservative transport, accurate representation of anomalous transport is critical for simulating chemical reactions (Battiato et al. 2009; Sadhukhan et al. 2014; Scheibe et al. 2015; Soler-Sagarra et al. 2016; Tartakovsky et al. 2009). The main limitation of the ADE lies on not distinguishing between dispersion (solute spreading) and mixing (solute diffusion and dilution). The two processes are linked, but they are different (Dentz and Carrera 2007). In contrast to dispersion, mixing is a direct cause of chemical reactions (Cirpka and Valocchi 2007; Rezaei et al. 2005; De Simoni et al. 2005, 2007; Soler-Sagarra et al. 2022; Tartakovsky et al. 2008; Cirpka 2002; Herrera et al. 2017). The ADE employs Fick’s law (Fick 1855) to characterize both processes and must, therefore, be considered inadequate for reactive transport (Carrera et al. 2022). A new formulation is needed to reproduce advection, dispersion and mixing (de Dreuzy et al. 2012; de Dreuzy and Carrera 2016).

A large number of particle-based methods have been proposed as alternatives to the ADE (Benson and Meerschaert 2009; Bijeljic and Blunt 2006; Le Borgne et al. 2008a; Delay et al. 2005; Lester et al. 2014; Painter and Cvetkovic 2005; Russian et al. 2016; Schmidt et al. 2017; Sole-Mari et al. 2020). All of them are relevant to anomalous transport. But, while they have yielded new insights on transport, none of them considers mixing explicitly. An essential such insight is that velocity transitions after every step can be viewed as a correlated random process. This process is Markovian when transitions are made not after a fixed time step, but after particles have covered a fixed spatial distance (Le Borgne et al. 2008b). The fact that velocities may change after a fixed spatial step is consistent with a fixed heterogeneity structure. We conjecture that this is a good basis for alternative transport formulations.

The difficulty in representing mixing lies in its close relationship with spreading. Velocity variations produce stretching of lamellas, which enhances mixing by increasing the contact area between different waters (Le Borgne et al. 2015). The fact that velocity variations occur at all scales and that they control mixing suggest using velocity as a new dimension of the state variable (like time and space), which leads to a phase space formulation. That is, concentration at any representative volume will be given by a velocity-dependent distribution representing not so much uncertainty as actual variability (e.g., concentration at the leading edge of a plume will be larger at high-velocity paths than at low-velocity paths).

The success of Markovian formulations further suggests representing velocity variability as a Markov process. Markovian processes are typically represented by means of a transition matrix \({\varvec{M}}_{{\varvec{p}}}^{{{\varvec{vs}}}}\) (or transition probability density for continuous representations of velocity), which expresses the probability, p, of a particle to change the velocity state v given constant steps in space phase s (De Anna et al. 2013; Kang et al. 2011, 2014, 2015, 2017). Transitions may occur either because of heterogeneity along a flow line, which do not produce mixing, or because of water particles diffusion between adjacent flow tubes, which is the mixing mechanism associated with plume stretching. A proper representation of mixing should distinguish these two types of transitions.

In this paper, we propose a phase space formulation for transport that acknowledges velocity transitions driven by both heterogeneity along flowlines and by diffusion across. The solution method is based on the Water Mixing Approach (WMA) (Soler-Sagarra et al. 2022), because our ultimate motivation is reactive transport (RT).

2 Governing Equations

The ADE is the most widely used formulation for transport. The ADE expresses the solute mass balance when transport is driven by advection and dispersion.

$$ \phi \frac{\partial c}{{\partial t}} = - \phi v\nabla c + \nabla \cdot \left( {D\nabla c} \right) + \phi r $$
(1)

where \(\phi\) [–] is porosity, c = c(x, t) is concentration [M/L3], \(t\) [T] is time, v [L/T] is velocity and r [M/L3/T] is the sink/source term per unit volume of water, possibly including reactive terms. Dispersion (second term in the right-hand side, RHS, of Eq. (1)) is defined by means of Fick’s law, where D [L2/T] is the hydrodynamic dispersion tensor. Soler-Sagarra et al. (2022) reinterpreted the dispersion flux in this equation as a bidirectional exchange of waters and obtained an equivalent form of the ADE as a Water Mixing Approach (WMA). Using the concept of water mixing is appropriate when the different species have similar physical parameters because it reduces RT to reactive mixing calculations. The WMA is formulated as

$$ \phi \frac{\partial c}{{\partial t}} = - \phi v\nabla c + \nabla \cdot \left( {\overline{{q_{D} c}} } \right) + \phi r $$
(2)

where the term \(\overline{{q_{D} c}}\) represents solute exchange driven by water dispersion and mixing. That is, \(q_{D}\) [L3/L2/T] represents water flux exchange with respect to the mean water flux, which is accounted for in the advection term. Soler-Sagarra et al. (2022) discuss in detail the meaning of \(\overline{{q_{D} c}}\). The challenge is how to write this exchange term so that it represents separately dispersion and mixing.

Kang et al. (2017) proposed a phase space formulation for heterogeneous domains to find an alternative to ADE. Phase space formulations express state variables not only as dependent on time and space, but also on velocity. The formulation was originally presented for pore-scale models using particle probabilities, p. However, it can be easily extended to Darcy scale and written it in terms of concentrations, c = c(x, v, t) [M/L3] by using basic definitions to write \(p = c\phi /M\), where M is the total solute mass. With these definitions, Kang et al. (2017) can be rewritten as

$$ \frac{\partial c}{{\partial t}} = - v\nabla c - \frac{v}{{\overline{l}}}c + \mathop \int \limits_{v^{\prime}}^{{}} g^{vs} \left( {v|v^{\prime}} \right)\frac{v}{{\overline{l}}}c^{\prime}{\text{d}}v^{\prime} + r $$
(3)

where \(\overline{l}\) [L] is the characteristic length, \(g^{vs}\) [T/L] is the transition probability density of jumping from \(v^{\prime }\) to v after a \(\overline{l}\) space step and \(c^{\prime } = c(x,v^{\prime } ,t)\) the concentration at \(v^{\prime }\). Thus, the formulation implies a distribution of (velocity-dependent) concentrations at every location and time. Equation (3) can be viewed as a mass balance equation, where the first term in the RHS expresses advective changes, the last term includes sink and sources, and the second and third terms represent mass losses and gains, respectively, due to velocity transitions (i.e., losses due to particles that transit from \(v\) to another velocity and the reverse gains). This way, dispersion is explicitly represented in a natural way. The problem with this representation is that it does not distinguish between diffusion transitions (purple arrow in Fig. 1) and advection transitions (green arrow in Fig. 1). This is inappropriate since it does not allow treating mixing and dispersion as separate processes. To overcome this limitation, we propose to (a) restrict transitions caused by heterogeneity to advection transitions (i.e., changes in velocity along streamlines, like defined by green arrow in Fig. 1) which express dispersion explicitly, and (b) simulate diffusion separately. Furthermore, we use the WMA formulation proposed by (Soler-Sagarra et al. 2022) to define the mixing process, so as to facilitate generalization to reactive transport.

Fig. 1
figure 1

Scheme of particle transport processes through continuum heterogeneous domain. The left image is a computed velocity field. The right-top image displays the advection path of two particles. The right-bottom image shows the diffusion possibilities of a single particle

It is important to notice that \(\overline{{q_{D} c}}\) exchanges in Eq. (2) are now restricted to molecular diffusion exchanges, because the effect of velocity fluctuations is already included in Eq. (3)). Treating these exchanges as water exchanges may sound confusing since diffusion is commonly associated with solute fluxes, rather than water exchanges. In reality, water is exchanged by diffusion at a rate comparable to that of solutes (Harris and Woolf 1980). Furthermore, without entering into this debate (see Soler-Sagarra et al. (2022) for details), the formulation of Eq. (2) is equivalent to Fickian diffusion if \(q_{D} = \phi D_{w} /L_{D}\), where \(D_{w}\) [L2/T] and \(L_{D}\) [L] are water molecular diffusion coefficient and the characteristic diffusion scale, respectively. We are writing Eq. (3) per unit volume of water, which is more convenient than per unit volume of medium (as in Eq. (2)). Therefore, we will write these exchanges as \(\overline{{v_{Dm} c}}\), where the subscript emphasizes that we only include diffusive exchanges.

The new formulation is obtained by restricting Eq. (3) to advective transitions and Eq. (2) as to diffusion term

$$ \frac{\partial c}{{\partial t}} = - v\nabla c - \frac{v}{{\overline{l}}}c + \mathop \int \limits_{{v^{\prime}}}^{{}} g^{vs} \left( {v{|}v^{\prime}} \right)\frac{v}{{\overline{l}}}c^{\prime}{\text{d}}v^{\prime} + \nabla \cdot \left( {\overline{{v_{Dm} c}} } \right) + r $$
(4)

Equation (4) is not a complete formulation yet. Velocity transitions occur due to advection and diffusion (Fig. 1). Since we are still restricting \(g^{vs}\) to characterize velocity transitions along streamlines, we need a new transition term for velocity changes driven by diffusion (purple arrow in Fig. 1). Advection changes characterized by \(g^{vs}\) are Markovian in space (Le Borgne et al. 2008b), but diffusion driven exchanges should be Markovian in time. The two transitions must be described independently. Diffusion transitions require adding two terms to (3), which yields

$$ \begin{aligned} \frac{\partial c}{{\partial t}} & = - v\nabla c - \frac{v}{{\overline{l}}}c + \mathop \int \limits_{{v^{\prime}}}^{{}} g^{vs} \left( {v{|}v^{\prime}} \right)\frac{v}{{\overline{l}}}c^{\prime}{\text{d}}v^{\prime} + \nabla \cdot \left( {\overline{{v_{D} c}} } \right) \\ & \quad + \,\mathop \int \limits_{v^{\prime}}^{{}} f^{vt} \left( {v{|}v^{\prime}} \right)c^{\prime}dv^{\prime} - \mathop \int \limits_{v^{\prime}}^{{}} f^{vt} \left( {v^{\prime}{|}v} \right)c{\text{d}}v^{\prime} + r \\ \end{aligned} $$
(5)

where \(f^{vt} \left( {v{|}v^{\prime}} \right)\) [T/L/T] is the probability density of the rate of mixing transitions between velocity states. The fourth term on the RHS define the diffusion process in space domain (orange arrow in Fig. 1), while the fifth and sixth expresses the diffusive mass balance in velocity domain (purple arrow in Fig. 1). Since we are assuming diffusion to be independent of the solute, then \(f^{vt}\) is also solute independent, so that this equation is a WMA equation. Therefore, we term this formulation Multi-Advective Water Mixing Approach (MAWMA). Note that we consider the requirements highlighted by De Dreuzy and Carrera (2016): adequate separation of advection, diffusion and dispersion.

Assessing the validity of the MAWMA, Eq. (5), could be arduous. Given that the novel processes presented are the fifth and sixth terms on the RHS, we make three simplifications for testing:

  1. (a)

    Flow is assumed stratified. This implies that no velocity transition occurs due to advection, which leads to neglecting the second and third terms on the RHS of the Eq. (5). We further assume that all strata carry the same flow rate (i.e., high-velocity strata are narrower than low-velocity strata) to simplify space and velocity discretization (Fig. 2b)

  2. (b)

    Diffusion is only considered transverse to the main flow direction. Adding this to the stratified flow leads to velocity changes because of diffusion (Bolster et al. 2011; Dentz and Carrera 2007; Taylor 1953). The fourth term of the RHS may therefore be ignored. Transverse mixing has been proven to be of paramount importance when chemical reactions are involved (Werth, et al. 2006)

  3. (c)

    A Lagrangian formulation is adopted for advection by using material derivative \(d\cdot/dt\) to minimize numerical dispersion and mixing (Batlle et al. 2002; Bell and Binning 2004; Cirpka et al. 1999; Ramasomanana et al. 2012; Soler-Sagarra et al. 2022; Zhang et al. 2007).

Fig. 2
figure 2

Scheme of stratified models using three velocity classes: a Random Walk Particle b Isochronal Water method using Water Mixing Approach formulation and c Water Parcels method using Multi-Advective Water Mixing Approach formulation

These three simplifications allow us to rewrite Eq. (5) as

$$ \frac{{{\text{d}}c}}{{{\text{d}}t}} = \mathop \int \limits_{v^{\prime}}^{{}} f^{vt} \left( {v|v^{\prime}} \right)c^{\prime}{\text{d}}v^{\prime} - \mathop \int \limits_{v^{\prime}}^{{}} f^{vt} \left( {v^{\prime}|v} \right)c{\text{d}}v^{\prime} + r $$
(6)

Time, space and velocity should be discretized and integrated in Eq. (6).

3 Methodology

This section describes the method to solve Eq. (6) and to test the solution by comparison with existing methods. We first describe how to discretize velocity and how to build an isochronal mesh. Then, we describe the RW and Isochronal Water (IW) methods, which are used for comparison purposes. We finally describe the proposed solution approach and how to compute the velocity transition matrix \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{vt}}}}\) for each method that will be used by the Water Parcel (WP) method based on MAWMA.

3.1 Water Velocity Discretization

Velocity in the domain may be discretized adopting Eulerian or Lagrangian distribution. The Eulerian distribution yields the probability density function (pdfE) of velocity sampled randomly in space. Discretizing pdfE with equal Eulerian probability velocity classes yields classes with the same water volume. The Lagrangian distribution pdfL is obtained by sampling the velocity equidistantly along streamlines (s-Lagrangian velocities according to Dentz et al. (2016)). Even in a stationary flux field, the pdfE and pdfL might be dynamic for a set of solute particles that are transported (Puyguiraud et al. 2019). However, in the Water Mixing concept, the water is transported instead of solute. As a result, pdfE and pdfL are stationaries in a stationary flow field. Discretizing pdfL determines velocity classes with the same flux (i.e., same injection probability, see Fig. 2c). The pdfL is related to pdfE as (Dentz et al. 2016):

$$ {\text{pdf}}_{{\text{L}}} \left( v \right) = \frac{{v\,\cdot\,{\text{pdf}}_{{\text{E}}} \left( v \right)}}{{v_{{{\text{mean}}}} }} $$
(7)

where \(v_{{{\text{mean}}}}\) is the mean of the pdfE. Discretizing velocities in classes with the same flux implies that low velocities are more probable than high velocities in the domain (Gotovac et al. 2009), which is realistic but contrasts sharply with Eulerian equi-probable discretization. Lagrangian discretization is the appropriate one in our case because Eq. (6) is written in Lagrangian form. We discretize velocities in Nv classes, whose boundaries are:

$$ v_{m + 1/2} = {\text{cdf}}_{L}^{ - 1} \left( {\frac{m}{{N_{v} }}} \right)\quad \forall m = 1, \ldots ,N_{v} $$
(8)
$$ v_{m - 1/2} = {\text{cdf}}_{{\text{L}}}^{ - 1} \left( {\frac{m - 1}{{N_{v} }}} \right)\quad \forall m = 1, \ldots ,N_{v} $$
(9)

where \({\text{cdf}}_{{\text{L}}}^{ - 1}\) is the inverse of the Lagrangian cumulative distribution function. Once the boundaries are set, a representative class velocity \(v_{m}\) is calculated as the mean of this interval as:

$$ v_{m} = \frac{{\mathop \int \nolimits_{{v_{m - 1/2} }}^{{v_{m + 1/2} }} v\,\cdot\,{\text{pdf}}_{{\text{L}}} \left( v \right){\text{d}}v}}{{\mathop \int \nolimits_{{v_{m - 1/2} }}^{{v_{m + 1/2} }} {\text{pdf}}_{{\text{L}}} \left( v \right){\text{d}}v}} = N_{v} \mathop \int \limits_{{v_{m - 1/2} }}^{{v_{m + 1/2} }} v\,\cdot\,{\text{pdf}}_{{\text{L}}} \left( v \right){\text{d}}v $$
(10)

The probability \(p_{m}\) of the velocity class m in the domain (i.e., volumetric fraction of domain occupied by the class) is:

$$ p_{m} \left( {v_{m} } \right) = {\text{cdf}}_{{\text{E}}} \left( {v_{m + 1/2} } \right) - {\text{cdf}}_{{\text{E}}} \left( {v_{m - 1/2} } \right) $$
(11)

Note that \(p_{m}\) is inversely proportional to \(v_{m}\) because the classes were chosen with identical Lagrangian probability, whereas the Eulerian pdf is inversely proportional to velocity [Eq. (7)].

3.2 Isochronal Mesh

The term isochronal mesh stands for a streamline-oriented mesh that advects the entire volume of water in a cell (we term it parcel) to the cell downstream within the stream tube. The stream tubes widths are proportional to the velocity classes probabilities, \(p_{m}\). The length ∆xm of the cells in the stream tube associated with velocity class m is calculated as:

$$ \Delta x_{m} = v_{m} \cdot\Delta t $$
(12)

where \(\Delta t\) is the time step. Note that the mesh is built once the simulation time step is known unlike most meshes. Figure 2b shows a scheme of the isochronal mesh. The velocity classes are equally flux because a single stream tube is associated with each class. Moreover, all the water parcel of this isochronal mesh has the same volume because as the probability pm is inversely proportional to its velocity vm (see Fig. 2b).

3.3 Random Walk Method

A number of particles Np are injected in the domain in a time step \(\Delta t\). The particles are flux weighted distributed along the domain width a. The solute mass mp associated with each particle is calculated as:

$$ m_{p} = \frac{{c_{{{\text{inj}}}} \,\cdot\,v_{{{\text{mean}}}} \,\cdot\,\Delta t\,\cdot\,a\,\cdot\,\phi }}{{N_{p} }} $$
(13)

where \(c_{{{\text{inj}}}}\) is the concentration of injection. Note that the numerator in the right-hand side of Eq. (13) is the total mass injected during a time step. Each particle is advected with the analytical velocity v(y), and their position coordinates (xp, yp) at the end of a time steps k + 1 are calculated as:

$$ x_{p}^{k + 1} = x_{p}^{k} + v\left( {y_{p}^{k} } \right)\cdot\Delta t $$
(14)
$$ y_{p}^{k + 1} = y_{p}^{k} + \sqrt {2D\Delta t} \cdot\xi \left( t \right) $$
(15)

where \(\xi \left( t \right)\sim N\left( {0,1} \right)\) is a white noise with a Gaussian distribution.

The transition matrix \({\varvec{M}}_{{\varvec{p}}}^{{{\varvec{vt}}}}\) can be computed by counting the velocity class transitions. For every particle and time step, a unit is added to position (l, m) of \({\varvec{M}}_{{\varvec{p}}}^{{{\varvec{vt}}}}\), where the column m is the velocity class of the position \(y_{p}^{k}\) and the row l is the velocity class of \(y_{p}^{k + 1}\). When all transitions have been made, the matrix is scaled by columns. That is, every (l, m) component is divided the sum of column m, so that it represents the probability of a particle to end the time step in class l if it started in class m. This \({\varvec{M}}_{{\varvec{p}}}^{{{\varvec{vt}}}}\) matrix differs from the classic transition matrix \({\varvec{M}}_{{\varvec{p}}}^{{{\varvec{vs}}}}\) (De Anna et al. 2013; Le Borgne et al. 2008b; Kang et al. 2011, 2014, 2015, 2017) because Markovianity is applied in time t instead of space s. This choice reflects that \({\varvec{M}}_{{\varvec{p}}}^{{{\varvec{vt}}}}\) accounts for diffusion transitions, which are naturally Eulerian. As we will see in Sect. 3.5, the WP method uses a \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{vt}}}}\) matrix, which refers to the exchange of waters instead of particles. If all cells contain the same water volume, the two matrices are identical. Soler-Sagarra et al. (2021) discuss transition matrix algebra, including how to obtain \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{vt}}}}\) from \({\varvec{M}}_{{\varvec{p}}}^{{{\varvec{vt}}}}\).

To calculate concentrations, we use the isochronal mesh described in Sect. 3.2. The concentration of a cell i at time k is given by

$$ c_{i}^{k} = \frac{{m_{p} \,\cdot\,N_{pi} }}{{V_{w} }} $$
(16)

where Npi is the number of particles inside the cell and Vw is its water volume.

3.4 Isochronal Water Model (WMA)

The isochronal structured water (IW) method is based on the Lagrangian form of the WMA (Eq. (2) with the advection term moved to the left-hand side so as to get the material derivative) and uses the isochronal mesh detailed in Sect. 3.2. The mesh is discretized in cells with the same water volume (parcel). Once the spatial discretization is set, Eq. (2) can be written in matrix form like:

$$ {\varvec{S}}\frac{{{\varvec{c}}_{{}}^{k + 1} - {\varvec{c}}_{A}^{k} }}{\Delta t} = {\uptheta }{\varvec{Pc}}_{{}}^{k + 1} + \left( {1 - {\uptheta }} \right){\varvec{Pc}}_{A}^{k} $$
(17)

where S is the storage matrix, \({\varvec{c}}_{A}^{k}\) is the vector of concentrations at all parcels after advection, \({\uptheta }\) is the time weight parameter (\(0 \le {\uptheta } \le 1\)), and P [1/T] is the transition rate matrix that in Eq. (2) accounts for both mixing and spreading. However, here it only accounts for mixing (diffusion) because of the stratified flow conditions. The concentration can be expressed as:

$$ {\varvec{c}}_{{}}^{k + 1} = {\varvec{M}}_{{\varvec{w}}}^{{{\varvec{st}}}} {\varvec{c}}_{{\varvec{A}}}^{k} $$
(18)

where \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{st}}}} = \left( {{\varvec{S}} - {\uptheta }\Delta {\text{t}}{\varvec{P}}} \right)^{ - 1} \left( {{\varvec{S}} + \left( {1 - {\uptheta }} \right)\Delta {\text{t}}{\varvec{P}}} \right)\) is the transition matrix of water volumes in space s at time phase t. The vector \({\varvec{c}}_{A}^{k}\) is obtained for every cell i, considering the isochronal property of the mesh which advects the entire parcel of the upstream cell i-, as:

$$ {\varvec{c}}_{A,i}^{k} = {\varvec{c}}_{i - }^{k} $$
(19)

Note that if all species have the same transport parameters, Eqs. (18) and (19) can be viewed as the transport of water parcels instead of individual solutes and the concentrations would be attributes of these parcels. Soler-Sagarra et al. (2022) demonstrate the immediate extension from this scheme to a reactive transport method.

To obtain the transition matrix \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{vt}}}}\) that WP method uses, Eqs. (17) and (18) are performed in velocity phase v instead of space phase s. The later implies that the diagonal of S contains the probability of each velocity class and P the transition rate between classes. In the stratified case, it can be viewed as any entire stream tube of the Fig. 2b is considered as a single element.

3.5 Water Parcel Model (MAWMA)

We now describe the Water Parcel (WP) method used to solve Eq. (6). Other methods might also be used. The spatial domain is discretized in parcels (Fig. 2c) with the same water volume as the IW method (Fig. 2b). The parcel discretization covers the entire water domain, in saturated conditions (as it is the case). Like in IW, the concentration is only considered an attribute of each parcel. Each water parcel is associated with a centroid that determines its position in both x axis and velocity state (see Fig. 2c). Centroids are injected and displaced through the domain like a single solute particle.

The velocity state of each parcel is assigned randomly after injection (as discussed in Sect. 3.1, all classes are equally probable) and leads to an unstructured mesh unlike IW (see Fig. 2b, c). We integrate along the y coordinate for simplicity and for demonstration purposes. That is, we perform a dimension reduction, so that concentration in Eq. (6) depends solely on x and v. As shown in Fig. 2, this simplification might look trivial as it suggests that we are substituting the y coordinate by v. Note, however, that we assume that we do not know the vertical structure of velocity, but only its velocity distribution and transition probabilities. Figure 2c shows the parcel shape dependence on velocity state. As suggested by the tub lines of IW (see Fig. 2b), the longitudinal axis of our water parcels is proportional to their velocities, while their width is inversely proportional (see Fig. 2c). Another explanation is that the distance traveled Δx is proportional to the velocity v at the same time step Δt (explained in Sect. 3.4). As a consequence, the water parcels with low velocity tend to cram longitudinally (i.e., number of low-velocity water parcels per unit length is inversely proportional to velocity). This ensures an adequate representation of the entire distribution of velocities.

The simulation proceeds by integrating Eq. (6) in time steps. Therefore, the question is how to reproduce mixing between the parcels (i.e., the first two terms in the RHS). We use the finite volume method. The discretized form of (6) for every parcel i in velocity class l is

$$ V_{{w_{i} }} \frac{{c_{i}^{k + 1} - c_{i}^{k} }}{\Delta t} = \mathop \sum \limits_{m \ne l}^{{N_{v} }} \mathop \sum \limits_{j}^{{N_{mi} }} a_{ij} F_{lm}^{vt} c_{j}^{k} - \mathop \sum \limits_{m \ne l}^{{N_{v} }} \mathop \sum \limits_{j}^{{N_{mi} }} a_{ji} F_{ml}^{vt} c_{i}^{k} , \quad i \in I_{l} $$
(20)

where Nmi is the number of parcels of velocity class m connected to parcel i. \(F_{lm}^{vt}\) is the volume of water exchanged between velocity classes l and m per unit time. k is time steps number and \(I_{l}\) is the domain associated with the velocity class l. Finally, \(a_{ij}\) is the fraction of this flux that will be exchanged between parcels i and j which could be either equi-distributed or weighted by contact area. The latter is assumed here. As in WMA, this is an exchange process, which implies that \(F_{lm}^{vt} = F_{ml}^{vt}\) and aij = aji. The expression of a concentration in time step k + 1 can be obtained.

$$ c_{i}^{k + 1} = c_{i}^{k} - \Delta t\mathop{\sum \limits_{}^{N_{v}}}\limits_{m \ne l} \mathop \sum \limits_{j}^{{N_{mi} }} a_{ij} F_{lm}^{vt} c_{i}^{k} + \Delta t\mathop {\sum \limits_{}^{N_{v}}}\limits_ {m \ne l} \mathop \sum \limits_{j}^{{N_{mi} }} a_{ji} F_{ml}^{vt} c_{j}^{k} , \quad i \in I_{l} $$
(21)

Two remarks can be made regarding this expression: (a) \(\lambda_{lm} = \Delta t\,\cdot\,F_{lm}^{vt} /V_{wl}\) is a water mass mixing ratio, similar to the one of Soler-Sagarra et al. (2022) but applied to exchanges of velocity class. \(\lambda_{lm}\) is term at the lm-th position of the water transition matrix \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{vt}}}}\) obtained in Sects. 3.3 or 3.4; (b) the self-water mixing ratio of the l velocity must satisfy \(\lambda_{ll} = 1 - \mathop {\sum\nolimits_{m}^{{N_{v} }} {\lambda_{lm} } }\limits_{m \ne l}\) with the result that \(\sum\nolimits_{m}^{Nv} {\lambda_{lm} } = 1\); (c) several methods can be used to compute water transition matrix \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{vt}}}}\). The one in Sect. 3.4 is only valid for stratified flow, but the ones here (Eq. (21)) and by counting diffusion transitions in a RW (Sect. 3.3) are general. Regardless of how the mixing ratios are computed, the proposed method leads to a water mixing equation.

$$ c_{i}^{k + 1} = \lambda_{ii} c_{i}^{k} + \mathop {\sum \limits_{m}^{N_{v}}} \limits_{m \ne l} \mathop \sum \limits_{j}^{{N_{mi} }} \lambda_{ij}^{{}} c_{j}^{k} $$
(22)

Note that the mixing of parcels depends on their velocity class. However, the unstructured mesh does not ensure mass conservation in the mixing process such as \(\lambda_{ij} = \lambda_{ji}\), which diminishes exchanges of water volume. This is why mass conservation is imposed after a first calculation of lambdas by defining \(\lambda_{ij} = \lambda_{ji} = \max \left\{ {\lambda_{ij} ,\lambda_{ji} } \right\}\).

Although chemical reactions are not the objective of this work, they are the ultimate goal of our research. By using the water mass mixing ratio formulation, the link with chemical processes is immediate (Soler-Sagarra et al. 2022).

The proposed WP method uses the transition matrix \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{vt}}}}\) for just diffusion. Le Borgne et al. (2008b) demonstrated Markovianity in space using a similar transition matrix, \({\varvec{M}}_{{\varvec{p}}}^{{{\varvec{st}}}}\), which accounted for both advection and diffusion. Since diffusion is Markovian in time, the question can be raised if their conclusion was an artefact of small diffusion or \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{vt}}}}\) is also Markovian in space, which needs to be tested. The computation of these matrices is quite intensive. We can only hope that they can eventually be parametrized as a function of geological understanding and flow regime. But this requires much work beyond fully ascertaining the validity of the proposed method.

4 Applications

The efficiency of the MAWMA formulation, solved with the WP method described in Sect. 3.5, is tested by comparison with the RW and IW methods, described in Sects. 3.3 and 3.4, respectively. Comparisons are made in terms of mixing and spreading indicators in Sect. 4.1, where we also test whether WP results are sensitive to the way matrix \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{vt}}}}\) was computed (from RW or IW). In Sect. 4.2, the Markovianity in space is tested by comparing the RW method with a Markov chain model. For comparisons, we consider the stratified velocity distribution v in parallel planes (planar Poiseuille flow)

$$ v = \left( {3/2} \right)v_{{{\text{mean}}}} \left( {1 - \left( {1 - y/a} \right)^{2} } \right) $$
(23)

where vmean is the mean velocity of the distribution, y is the vertical position and a is the half distance between the planes. Owing to the horizontal symmetry of the case, we only model the half domain y = {0, a} (Fig. 2). We focus on the time evolution, especially at times earlier than the dispersion time scale τD, which denotes the typical time for the macrodispersive spreading of the solute.

$$ \tau_{D} = \frac{{a^{2} }}{{D_{w} }} $$
(24)

Moreover, we considered a continuous injection of solute instead of an instantaneous injection used by other authors (Bolster et al. 2011; Dentz and Carrera 2007). Simulation details are shown in Table 1. The WP was simulated using the KRATOS framework (Dadvand et al. 2010). The RW simulations were performed as proposed by Dentz and Carrera (2007), using a flux weighted injection at every time step.

Table 1 Transport problem parameters and simulation details

4.1 Statistical Indicators of Mixing and Spreading

Mixing and spreading must be tested. Mixing can be assessed by the global mixing rate (i.e., average value of the mixing factor, \(\nabla^{t} cD\nabla c\)). However, Le Borgne et al. (2010) proposed a far simpler and more robust and stable quantification by means of the scalar dissipation rate (Pope 2000), which measures the time derivative of the concentration variance, but requires no solute flux at the boundaries. We extend in here (Appendix A) the continuous injection case,

$$ \chi \left( t \right) = \mathop \int \limits_{\Gamma }^{{}} c\phi v\left( {c_{{{\text{inj}}}} - {\raise0.7ex\hbox{$c$} \!\mathord{\left/ {\vphantom {c 2}}\right.\kern-\nulldelimiterspace} \!\lower0.7ex\hbox{$2$}}} \right){\text{d}}\Gamma - \frac{1}{2}\mathop \int \limits_{\Omega }^{{}} \phi \frac{{\partial \left( {c^{2} } \right)}}{\partial t}{\text{d}}\Omega $$
(25)

where Ω is the simulation domain, Γ is its boundary and cinj is the injection concentration. The global mixing rates computed with the three models are plotted in Fig. 3a. Only a slight mismatch is observed at the earliest times. Some oscillations are observed at early times for the RW and WP solutions. These oscillations may be attributed to the fact that concentrations are calculated from the particle positions (Fig. 2a) in the IW mesh (Fig. 2b). Despite oscillations, the same overall behavior is displayed by all the models.

Fig. 3
figure 3

a Scalar dissipation rate and b apparent dispersion for continuum injection. Dashed black line and yellow line display the analytical solution of the apparent dispersion (Haber and Mauris 1988) and the asymptotic dispersion (Aris 1956), respectively

The global mixing rate typically displays a diminishing monotonous behavior for Dirac delta injections (Bolster et al. 2011; Le Borgne et al. 2010). In our case, we observe an initial increase, resulting in a bell shape which peaks at 0.1 \(\tau_{D}\). Thus, two regimes are distinguished. At early time, mixing is enhanced in response to the increase in longitudinal dispersion, which stretches the contact area between the invading and the resident waters. This stretching phenomenon has already been observed in instantaneous injection (Le Borgne et al. 2013, 2014, 2015). However, it is the continuous injection what causes the dissipation rate to increase. After the peak, mixing decreases as the front approximates macrodispersion regime because the concentration becomes smooth. A similar behavior can be observed for finite size initial conditions (Kapoor and Kitanidis 1998).

As for dispersion, the adopted continuous injection makes it inappropriate the traditional definition (rate of growth of the second spatial moment). Therefore, we computed the spatial variance of the concentration gradient distribution instead of the concentration distribution. Other methods could have been used including a fit to the 1D analytical solution or correcting the spatial second moment with the uniform injection. We integrate vertically the concentration to obtain its correlation with the x coordinate. The (apparent) dispersion Dapp is

$$ D_{{{\text{app}}}} \left( t \right) = \frac{1}{2}\frac{{\partial \left( {\sigma_{\nabla c}^{2} } \right)}}{\partial t} $$
(26)

where \(\sigma_{\nabla c}^{2}\) is the variance of the vertically integrated concentration gradient. The analytical solution of the temporal dispersion evolution Da (Haber and Mauris 1988) and its asymptotic value Dasy (Aris 1956) are also computed.

$$ D_{{{\text{asy}}}} = \frac{4}{210}\frac{{a^{2} v^{2} }}{{D_{w} }} $$
(27)
$$ D^{a} \left( t \right) = \frac{2}{105}v^{2} \tau_{D} - 18v^{2} \tau_{D} \mathop \sum \limits_{n = 1}^{\infty } \left( {n\pi } \right)^{ - 6} \times {\text{exp}}\left( { - \left( {n\pi } \right)^{2} \frac{t}{{\tau_{D} }}} \right) $$
(28)

The results are plotted in Fig. 3b. Although the WP dispersion oscillates (owing to the unstructured character of the mesh) a satisfactory agreement is again observed. As in the dissipation rate, at least two different regimes of the solute distribution may be distinguished: (a) a linear increase in the variance is observed. This confirms the stretching phenomenon described above; (b) an asymptotic macrodispersion regime is attained close to \(0.1\tau_{D}\). The transition regime roughly coincides with the scalar dissipation rate, suggesting a link between both behaviors. Indeed, spreading enhances mixing in the earlier regime. In the later regime, solute plume extension is limited since sufficient mixing occurs.

4.2 Markovianity in Space

Although solute only changes its velocity class because of the mixing process (which is Markovian in time), we can calculate the transition matrix in space \({\varvec{M}}_{{\varvec{p}}}^{{{\varvec{vt}}}}\) (Le Borgne et al. 2008b) from the particle RW model. We believe that they are also Markovian in space, which is consistent with (Le Borgne et al. 2008b). We tested the Markovianity by comparing the transition probabilities with the ones obtained from a Markov chain model. The transition model must satisfy the Chapman–Kolmogorov equation (Risken 1996), which reads for the transition matrices M(x) of a discrete Markov chain such as

$$ {\varvec{M}}\left( {x + \Delta x} \right) = {\varvec{M}}\left( x \right){\varvec{M}}\left( {\Delta x} \right) $$
(29)

with x, Δx > 0. The latter implies

$$ {\varvec{M}}\left( {nx} \right) = {\varvec{M}}^{n} \left( x \right) $$
(30)

Although the agreement is not exact (Fig. 4), the particles satisfactorily reproduce the Markov chain results. We can therefore conclude that mixing is Markovian not only in time, but also in space. This result suggests that we can calculate transport using time steps simulations, which are more adequate to model mixing.

Fig. 4
figure 4

Comparison of Particle Random Walk model and Markov model in distance for the return probability. The Markov model is defined for spatial increment of x = 0.02

5 Conclusions

We present a new formulation for solute transport in heterogeneous cases, termed MAWMA. The formulation aims to reproduce diffusive mixing and dispersion. The formulation is an extension of WMA by making the transport state dependent on velocity as well as on time and space.

Water parcel models were employed for numerical solution of the proposed equation. Each parcel was associated with its centroid, which defines its velocity and position at a given time. We tested the velocity transition produced by mixing applying a water transition matrix in time \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{vt}}}}\). This differs from the solute transition matrix in space \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{vs}}}}\) used in the correlated CTRW model.

The formulation was tested on a Poiseuille’s stratified flow case. MAWMA was compared to WMA and Random Walk methods in terms of global mixing and dispersion. A good agreement was observed. Moreover, mixing shows Markovianity in space even when it is modeled with constant time steps. The results suggest that MAWMA will perform well for high heterogeneity cases using a matrix \({\varvec{M}}_{{\varvec{w}}}^{{{\varvec{st}}}}\) for advection transitions.