Geofluids
Volume 2018 (2018), Article ID 9260603, 8 pages
https://doi.org/10.1155/2018/9260603

Research Article

Upscaling Strategies of Porosity-Permeability Correlations in Reacting Environments from Pore-Scale Simulations

Nikolaos I. Prasianakis,¹ Michael Gatschet,1,2 Aida Abbasi,¹ and Sergey V. Churakov1,2

¹Laboratory for Waste Management LES, Nuclear Energy and Safety Department, Paul Scherrer Institute, 5232 Villigen, Switzerland
²Institute of Geological Sciences, University of Bern, 3012 Bern, Switzerland

Correspondence should be addressed to Nikolaos I. Prasianakis; nikolaos.prasianakis@psi.ch

Received 2 February 2018; Accepted 29 April 2018; Published 19 June 2018

Academic Editor: Ilenia Battiato

Copyright © 2018 Nikolaos I. Prasianakis et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract.

In geochemically reacting environments, the mineral dissolution and precipitation alters the structural and transport properties of the media of interest. The chemical and structural heterogeneities of the porous media affect the temporal evolution of the permeability with respect to porosity. Such correlations follow a nonlinear trend, which is difficult to estimate a priori and without knowledge of the microstructure itself, especially under the presence of strong chemical gradients. Macroscopic field-scale codes require such an input, and in the absence of exact descriptions, simplified correlations are used. After highlighting the diversity of microstructural evolution paths, due to dissolution, we discuss possible upscaling strategies.

1. Introduction

Precipitation and dissolution reactions in porous media dominate and control a large number of geochemical processes and industrial applications. The precipitation and dissolution of minerals from aqueous solutions alters the pore space and its connectivity. This has a strong effect on the mass convection and diffusion through the porous medium. When a mineral precipitates/dissolves at the reactive porous surface, the overall porosity decreases/increases, leading to a subsequent decrease/increase in permeability and effective diffusivity. At the same time, the connectivity of the pores can also change in a way to block or to facilitate the mass diffusion processes.

Reactive transport modelling at the field scale is usually based on a macroscopic finite element or a finite volume discretization scheme [1]. In such descriptions, the computational domain is divided into small elements/volumes, the so-called voxels. The voxels are typically several orders of magnitude larger than the typical pore diameter, and as a consequence, all chemical and transport properties within such volumes are homogenized and smoothed out. The pore space and its transport properties are therefore represented using macroscopic parameters, such as the porosity, the tortuosity, the diffusivity, and the permeability. In such a description, the small scale geometrical characteristics and the heterogeneities of the porous materials are neglected. Such an assumption allows making accurate numerical predictions in the case of relatively mild chemical gradients, as well as in the case where chemical reactions can be approximated by equilibrium values. However, when strong chemical gradients are present with simultaneous dissolution and precipitation reactions, the pure macroscopic reactive transport codes fail to make accurate predictions of the evolution of the system.

Dissolution and precipitation reactions change the pore space and the resulting material properties, in a nonlinear way, and therefore have a strong feedback in the transport properties of the porous medium. The lack of explicit pore structure description and of appropriate material-specific correlations is responsible, for example, for the numerical artefact, relevant to the dependency of the resulting clogging times on the spatial grid discretization [1–5]. An improvement to the numerical predictions can be achieved (a) by coupling pore-level solvers to the macroscopic ones in a multiscale simulator [6–8] or (b) by providing the necessary microscopic feedback in terms of appropriate correlations or tabulated values, which can be defined from pore-level simulations (upscaling of results). Pore-level methods allow the simulation of the advection-diffusion-reaction processes at the pore space, where surface charges and reactive surface areas can be explicitly considered. Representative structures can be generated via computer models or can be obtained via X-ray or other microtomography techniques. When combined with appropriate kinetic and thermodynamic solvers that act at the submicrometer level, it is possible to reproduce accurately the experimental observations.

Depending on the level of abstraction, different pore-level methodologies exist. The more detailed ones solve the relevant flow equations or some approximation depending on the flow regime and the flow physics that are involved, in realistic geometries. Such methods are the lattice Boltzmann method [9–13], the methods based on particle hydrodynamics [14, 15], as well as the standard finite volume methods when applied in complex geometries with moving boundaries [16–18]. Lattice Boltzmann models can resolve transport processes in realistic complex geometries, involving complex interactions between species and phases, but are more computational intensive compared to pore network models. A significant advantage of the lattice Boltzmann methodology is the minimum effort to discretize the realistic computational domain, as well as the efficient continuous solid structure update per time step. Such an example is the evolution of a system when simultaneous dissolution and precipitation processes are competing and drive the evolution of the system [11, 19]. Efficient parallelization though allows running simulations with many billion degrees of freedom in relatively small computer clusters, especially when GPGPUs are used [20, 21]. We note that the numerical extraction of microscopic properties using realistic geometries has the potential to provide useful input to the effective medium theories, which are used to upscale porous medium flows [22]

In this paper, we construct pore geometries with target porosity and initial permeability following a methodology similar to [23, 24]. The target permeability is selected in a way to represent limestone rock samples commonly found in hydrocarbon reservoirs or in geothermal fields. The implemented chemical reaction is representing the calcite dissolution under the presence of acid, a common process used in the field stimulation, in order to enhance the permeability of the formation. The evolution of selected geometries is examined using the lattice Boltzmann framework, and permeability-porosity correlations are numerically extracted. Upscaling strategies that allow passing information to the macroscopic solvers and therefore bridge pore level and macroscopic scales, are discussed based on the output of the simulations.

2. Reactive Transport Modelling

2.1. Pore-Level Modelling

For the simulation presented in the next sections, the lattice Boltzmann methodology is implemented. This method is a special discretization of the Boltzmann equation. The elementary variables are the so-called populations or velocity probability distribution functions . At every distribution function corresponds to a discrete velocity vector [25–27]. Different discretization schemes lead to different numbers of discrete velocities, which results in several lattice models [28, 29]. For two-dimensional simulations, the standard D2Q9 square lattice with 9 discrete velocities is usually implemented due to its simplicity and robustness in complex geometry domains (see Figure 1).

Figure 1: The two-dimensional 9-velocity lattice (D2Q9).

For the modelling of the advection-diffusion and precipitation processes, a multicomponent LB model is used as described in [19]. For the sake of completeness, we briefly present it also here. The model is composed of a basis fluid medium that recovers the Navier-Stokes equations at the macroscopic limit, plus a passive scalar-coupled population set that simulates the diffusion of ions. The isothermal-guided equilibrium nine-velocity model (D2Q9 lattice) of Prasianakis et al. [30] is selected as the basis model. The discrete velocities of populations for –8 are for , and (0, ±1) for –4, and for –8 [29].

The following population moments correspond to the density of the solution and the momentum in the direction :

The guided equilibrium populations are given in a closed form, where :

The Boltzmann BGK equation is solved: , where is the relaxation parameter, and is the resulting macroscopic dynamic viscosity. BGK stands for the Bhatnagar-Gross-Krook collision model as depicted in the right hand side of the aforementioned equation and describes the relaxation of populations to their equilibrium state with a single relaxation time . Implementation of the BGK model for porous medium flows needs specific care, since under specific circumstances, high slip velocities might arise at the solid-fluid interface. This could affect the numerical measurements of permeability and the evolution of the geometries due to reactions. A detailed study on this issue has been presented in [31]. Here, we operate the model in conditions as described in the aforementioned reference. For the advection-diffusion-reaction equations of the reactive species, a D2Q9 model is also implemented.

The equilibrium populations for the reactive species are given:

where is the concentration of the considered ions, and is obtained from the basis model. The relevant population moment that corresponds to the concentration is

2.2. Computer-Generated Stochastic Porous Media

Characteristic material microstructures can be resolved and digitalized, using a variety of experimental techniques that span from X-ray tomographic techniques to the combination of FIB-SEM microscopy. At the same time, there is a lot of effort in the algorithmic stochastic reconstruction of porous geometries (clays, membranes, etc.) that respect certain structural and statistical properties. In Figure 2, two such examples are shown. Figure 2(a) is obtained using the methodology of Tyagi et al. [32]. This pore map is constructed such that it matches the targeted rock’s mineralogical components and its macroscopic properties such as porosity, grain, and pore size distributions. This methodology allows generating anisotropic structures, which are composed of different grain types. The map in Figure 2(a) represents a clay material, where grains and interlayers within the grains are present.

(a)

(b)

Figure 2: Digitally reconstructed pore maps. (a) Clay-type structure using lattice Monte Carlo methodology. (b) Generic porous medium based on Voronoi tessellation.

The pore map in Figure 2(b) was created by following the methodology of [23, 24]. A Voronoi tessellation of randomly distributed points on a plane is used as a template. Subsequently, the edges of the tessellation are used as guides to open the pore space, resulting in fully connected porosity. Here, we increase the degree of heterogeneity by varying the channel size and by distributing variable size spherical pores at the junctions of the pore channels. We construct our pore maps based on the latter methodology due to its simplicity and in order to work with a generic porous medium.

2.3. Description of the Reactive System and Boundary Conditions

The evolution of a porous geometry, due to mineral reactions, depends strongly on the aqueous mixture species concentrations and the flow regime. The quantification of these conditions is aided from dimensional analysis. The nondimensional numbers that are used to characterize geochemical reactive flows at low Reynolds number (Darcy regime) are the Péclet number: and the Damköhler number: , where is the mass diffusivity, is the convective flow velocity, in this work is the acid concentration at inlet, and is the characteristic linear dimension of the system of interest. Whenever mentioned in this text, the Pe and Da values correspond to the initial conditions of the flow setup.

The solid domain of the generated microstructures represents pure calcite. In the connected void space, a water solution is allowed to advect, diffuse, and react at the solid interface.

The reactant enters the domain from the left boundary with a uniform flow rate. The top and bottom boundary conditions are treated as periodic, while the right boundary as a zero gradient boundary.

For simplification, we here consider a single-step heterogeneous reaction of the dissolution of calcite applicable for low pH conditions: H⁺ + CaCO₃ ➔ Ca²⁺ + HCO⁻₃.

The reaction constant is  mol/m² s [33, 34], and the reaction rate is a first-order reaction , where αH+ is the activity of H⁺ in the solution. The diffusion coefficient is  m²/s, and the kinematic viscosity of the fluid  m²/s.

3. Results and Discussion

3.1. Permeability of Computer-Generated Structures

Several pore map realizations have been generated using the same set of rules (distribution of channel width and distribution of spherical pore sizes), differing only in the number of original random seed points. The two-dimensional domain size was selected to be square and is discretized by a 1500 × 1500 computational grid, whose total size corresponds to a 100 μm × 100 μm domain. This allows constructing random pore maps with variable target porosities that range from  = 0.1 to 0.9. The permeability ( (m²)) of the generated structures was numerically measured by flow simulations similar to [31]. The results are plotted in the log-linear plot of Figure 3. The permeability correlates positively with the porosity. In the framework of macroscopic reactive transport codes, the microstructural information is implicitly considered using permeability-porosity correlations. In reactive environments, for example, when dissolution or precipitation processes take place, the porosity increases or decreases at a pace dictated by the flow and the chemical kinetics. In the case where the generated geometries are representing a real material, a first approximation, due to the lack of mechanistic understanding, would be to update the porosity according to the thermodynamics or kinetics. Subsequently, the permeability of the respective voxel would be updated following the permeability-porosity trend of the pristine structures (black circles in Figure 3). As it will be shown in the next section, such an approximation would not be accurate for reactive transport calculations in the presence of strong chemical gradients.

Figure 3: Permeability-porosity trends for several scenarios. Black-filled circles connected with a black line correspond to the permeability versus the porosity of the computer-generated unreacted samples. Blue () and red () curves correspond to the distinct permeability-porosity temporal evolution paths under different reactive transport conditions (circles: high Pe-high Da, crosses: moderate Pe-high Da).

3.2. Evolution of Permeability in Reactive Environments

The use of the lattice Boltzmann framework to study the evolution of pore structures in reactive environments provides process understanding of the underlying mechanisms ([10, 12, and references within, 9, 19, 35]). The effect of different transport and chemical conditions has been studied by several authors [10, 36]. Depending on the chemical conditions and the flow properties, the evolving geometries due to dissolution follow distinct paths. The change in pore topology and connectivity will have an effect on permeability. Different regimes have been identified and have been categorized in phase diagrams based on the characteristic nondimensional numbers that describe the reactive environment. For high Pe and Da numbers, the cross sections of the preferential flow paths increase fast, due to the strong supply of reactants (Pe) and the fast reaction rates (Da). Soon, the so-called wormholes start to appear resulting in the fast increase of the permeability versus the porosity of the reacting structure. At the other end, permeability increases at the slowest pace, when Pe is moderate and Da is high. The reason for that is the fast depletion of reactants at the incoming boundaries leading to face dissolution [12]. This categorization is verified also here.

We selected two different geometries stemming from the analysis of the previous section, with initial pristine porosity of (see Figure 4, top row) and (see Figure 4, bottom row). The evolution of each of the two pore realizations was examined under two different flow conditions. In the first case, HCl acid 0.001 M (pH = 3) was injected from the left boundary resulting in and . This case evolved as face dissolution. In the second case, HCL acid 0.01 M (pH = 2) was injected at higher rates resulting in higher and . These conditions lead to the formation of wormholes. The evolution of the latter cases is shown in Figure 4. After specific time intervals, the evolved structures were extracted, and their permeability was measured in a similar manner as done in the previous section. The resulting permeabilities that represent the evolved pore structures are plotted in Figure 3. Blue lines and symbols represent the evolution of the structure, and red lines and symbols represent the evolution of the one.

Figure 4: (a) Initial pristine pore structures with porosity 0.25 (top) and 0.39 (bottom), black is solid, gray is void. From (a) to (b), temporal evolution for the high -high boundary condition leading to the creation of wormholes. Contour gradient of the reactant concentration is plotted.

3.3. Extracting Correlations from Pore-Level Simulations and Upscaling Strategies

The pore-level simulations provide the basic understanding of the underlying mechanisms, which dictate the structural evolution of porous media in reactive conditions. At the same time, it is possible to provide the necessary input to the macroscopic algorithms via upscaling of the results. This can be simply done by replacing, for example, the permeability-porosity correlations that are modelled in a macroscopic code, with more precise and case-specific correlations. To that end, there are mainly three different approaches. First, the result can be transmitted in the form of power law or Kozeny-Carman type of function as . Second, tabulated values can be provided instead of a power law, such that during the macroscopic simulations, specific values can be calculated, after interpolating between successive points. Third, the macroscopic code could call on demand the pore-level solver, to deliver the prediction of evolution in a fully coupled multiscale manner.

The permeability porosity correlations that describe the evolution of the structures in the presence of velocity and chemical gradients have been extracted after fitting known type of relationships. As a first remark, it should be mentioned that it was not possible to fit the results using as a model of Kozeny-Carman-type function. This was especially true for the case of high Pe-Da (wormholes). The most appropriate and simple type of model was found to be the , where and are the fitting parameters. The results are shown in Figure 5 for the pore map (see Videos S1 and S2 in the Supplementary Materials, which depicts the temporal evolution of the porous medium and the respective mass transport).

Figure 5: Fitted permeability porosity correlations, describing the evolution of permeability of the pore structure , for two different reactive and flow conditions. Open red circles correspond to the evolution under high Pe-high Da conditions and have been fitted using two correlation functions (black lines). Red solid line and crosses depict the low Pe-high Da case. Black circles represent the permeability of the pristine structures.

The scaling with respect to the porosity was found to be of the order for the moderate Pe case. The high Pe-Da results could not be fitted using only one function of that type due to the existence of two distinct evolution regimes. Evolution starts with a relatively weak scaling, where (for 0.39< ε <0.45) and corresponds to the wormhole formation, and continues with a strong scaling regime where (for 0.45< ε <0.5) and corresponds to the point where the flow is accelerated due to the growing of the major wormholes. For the upscaling of these results, specific care has to be taken that the simulation domains are indeed representative element volumes (REV). This is especially important in the case where wormholes are formed. Running several simulations in larger and smaller geometries can clarify the interaction between different wormholes.

At the moment, it is seems that such a fitting cannot be fully automated in the classical sense. The existence of (a) very small numbers among the fitted parameters and (b) different scaling regimes, will always be a source of error when transferring such functionals to macroscopic codes. Nevertheless, if done with care, this kind of microscopic feedback has the potential to substantially improve the modelling perspectives, provided that digitalized characteristic microstructures are available. By passing, we note that the two geometries ( and ) seem to evolve in a similar way under similar conditions (see Figure 3). The comparison between the blue and the red set of curves in Figure 3 goes beyond the scope of this paper. For the extraction of safe conclusions, it would be needed to test several geometries in reactive environments, and proceed with statistical analysis of the results.

The second approach would be to tabulate the a priori executed pore-level simulation results and provide these tables as input to a macroscopic code. Exact values for specific cases can be determined via interpolation schemes. This would not require a fitting process and shall be efficient as soon as a minimum number of information (size and accuracy of tables) has to be passed to the next level of description. We note that for complex chemically reactive systems, this option would require the precalculation of a large number of different scenarios. The subsequent storage of the resulting information with very high accuracy could become impractical.

The third option would be to fully couple the pore-level codes with macroscopic codes in a multiscale manner. Executing several pore-level simulations for every voxel, in order to extract the microscopic physics, would defeat the purpose of pore-level simulations. At the same time, it would result in an extremely slow simulation. Nevertheless, novel much promising machine learning techniques started recently to appear as, for example, in [37]. In that paper, the authors demonstrate a technique to accelerate the solution of chemical equilibrium equations, by using previous equilibrium calculations of similar input conditions. Such algorithms, when applied to the problem described in this paper, can identify voxels with similar input and save the most representative cases, for use in future calculations. This would accelerate a fully coupled multiscale code.

4. Conclusions

The evolution of permeability with respect to porosity in reactive environments is of great importance in geochemical reactive transport modelling and subsequent predictions. Within the porous structure, the mineral dissolution and precipitation processes alter the pore topology in a strongly nonlinear way. In this paper, we have constructed calcite microstructures in a stochastic way and have traced their temporal evolution in the presence of an acid. Permeability-porosity correlations have been extracted for each of the different evolution paths. Using this paradigm, we discussed possible upscale strategies and the numerical bridging between pore level understanding and macroscopic modelling. We conclude that such approaches are viable under the condition of fully automating the communication between the solvers.

Data Availability

Data can be requested from the authors, and all information necessary to reproduce results are mentioned within the article.

Conflicts of Interest

The authors declare that there is no conflict of interest regarding the publication of this paper.

Acknowledgments

Useful discussions with T. Gimmi, G. Kosakowski, D. Kulik, and W. Pfingsten on upscaling procedures are kindly acknowledged. This work was partially supported from the Swiss National Cooperative for the Disposal of Radioactive Waste (Nagra) and the Swiss National Science Foundation (SNSF) Project no. 200021_172618. Simulations were run at Swiss National Supercomputing Center, CSCS under the projects “psi12” and “psi13”.

Supplementary Materials

Video S1: temporal evolution of the pore map in the case of moderate Pe-high Da flow (face dissolution). Video S2: temporal evolution of the pore map in the case of high Pe-high Da flow (wormhole formation). (Supplementary Materials)

References

M. Xie, K. U. Mayer, F. Claret et al., “Implementation and evaluation of permeability-porosity and tortuosity-porosity relationships linked to mineral dissolution-precipitation,” Computational Geosciences, vol. 19, no. 3, pp. 655–671, 2015.

M. Hayek, G. Kosakowski, and S. Churakov, “Exact analytical solutions for a diffusion problem coupled with a precipitation-dissolution reaction and feedback of porosity change,” Water Resources Research, vol. 47, no. 7, 2011.

M. Hayek, G. Kosakowski, A. Jakob, and S. V. Churakov, “A class of analytical solutions for multidimensional multispecies diffusive transport coupled with precipitation-dissolution reactions and porosity changes,” Water Resources Research, vol. 48, no. 3, 2012.

V. Lagneau and J. van Der Lee, “Operator-splitting-based reactive transport models in strong feedback of porosity change: the contribution of analytical solutions for accuracy validation and estimator improvement,” Journal of Contaminant Hydrology, vol. 112, no. 1-4, pp. 118–129, 2010.

N. C. M. Marty, C. Tournassat, A. Burnol, E. Giffaut, and E. C. Gaucher, “Influence of reaction kinetics and mesh refinement on the numerical modelling of concrete/clay interactions,” Journal of Hydrology, vol. 364, no. 1-2, pp. 58–72, 2009.

D. A. Barajas-Solano and A. M. Tartakovsky, “Hybrid multiscale finite volume method for advection-diffusion equations subject to heterogeneous reactive boundary conditions,” Multiscale Modeling & Simulation, vol. 14, no. 4, pp. 1341–1376, 2016.

I. Battiato, D. M. Tartakovsky, A. M. Tartakovsky, and T. D. Scheibe, “Hybrid models of reactive transport in porous and fractured media,” Advances in Water Resources, vol. 34, no. 9, pp. 1140–1150, 2011.

M. Yousefzadeh and I. Battiato, “Physics-based hybrid method for multiscale transport in porous media,” Journal of Computational Physics, vol. 344, pp. 320–338, 2017.

C. Huber, B. Shafei, and A. Parmigiani, “A new pore-scale model for linear and non-linear heterogeneous dissolution and precipitation,” Geochimica et Cosmochimica Acta, vol. 124, pp. 109–130, 2014.

Q. Kang, L. Chen, A. J. Valocchi, and H. S. Viswanathan, “Pore-scale study of dissolution-induced changes in permeability and porosity of porous media,” Journal of Hydrology, vol. 517, pp. 1049–1055, 2014.

Q. Kang, P. C. Lichtner, and D. Zhang, “Lattice Boltzmann pore-scale model for multicomponent reactive transport in porous media,” Journal of Geophysical Research: Solid Earth, vol. 111, no. B5, 2006.

Q. Kang, D. Zhang, S. Chen, and X. He, “Lattice Boltzmann simulation of chemical dissolution in porous media,” Physical Review E, vol. 65, no. 3, 2002.

A. Parmigiani, C. Huber, O. Bachmann, and B. Chopard, “Pore-scale mass and reactant transport in multiphase porous media flows,” Journal of Fluid Mechanics, vol. 686, pp. 40–76, 2011.

R. Chatelin and P. Poncet, “A hybrid grid-particle method for moving bodies in 3D stokes flow with variable viscosity,” SIAM Journal on Scientific Computing, vol. 35, no. 4, pp. B925–B949, 2013.

A. M. Tartakovsky, P. Meakin, T. D. Scheibe, and B. D. Wood, “A smoothed particle hydrodynamics model for reactive transport and mineral precipitation in porous and fractured porous media,” Water Resources Research, vol. 43, no. 5, 2007.

S. Molins, D. Trebotich, C. I. Steefel, and C. Shen, “An investigation of the effect of pore scale flow on average geochemical reaction rates using direct numerical simulation,” Water Resources Research, vol. 48, no. 3, 2012.

C. Soulaine and H. A. Tchelepi, “Micro-continuum approach for pore-scale simulation of subsurface processes,” Transport in Porous Media, vol. 113, no. 3, pp. 431–456, 2016.

D. Trebotich, M. F. Adams, S. Molins, C. I. Steefel, and C. Shen, “High-resolution simulation of pore-scale reactive transport processes associated with carbon sequestration,” Computing in Science & Engineering, vol. 16, no. 6, pp. 22–31, 2014.

N. I. Prasianakis, E. Curti, G. Kosakowski, J. Poonoosamy, and S. V. Churakov, “Deciphering pore-level precipitation mechanisms,” Scientific Reports, vol. 7, no. 1, article 13765, 2017.

M. Januszewski and M. Kostur, “Sailfish: a flexible multi-GPU implementation of the lattice Boltzmann method,” Computer Physics Communications, vol. 185, no. 9, pp. 2350–2368, 2014.

M. A. Safi, N. I. Prasianakis, J. Mantzaras, A. Lamibrac, and F. N. Büchi, “Experimental and pore-level numerical investigation of water evaporation in gas diffusion layers of polymer electrolyte fuel cells,” International Journal of Heat and Mass Transfer, vol. 115, pp. 238–249, 2017.

C. Bringedal, I. Berre, I. S. Pop, and F. A. Radu, “Upscaling of non-isothermal reactive porous media flow with changing porosity,” Transport in Porous Media, vol. 114, no. 2, pp. 371–393, 2016.

M. S. Newman and X. Yin, “Lattice Boltzmann simulation of non-Darcy flow in stochastically generated 2D porous media geometries,” SPE Journal, vol. 18, no. 1, pp. 12–26, 2013.

F. Xiao and X. Yin, “Geometry models of porous media based on Voronoi tessellations and their porosity–permeability relations,” Computers & Mathematics with Applications, vol. 72, no. 2, pp. 328–348, 2016.

U. Frisch, D. d'Humieres, B. Hasslacher, P. Lallemand, Y. Pomeau, and J. P. Rivet, “Lattice gas hydrodynamics in two and three dimensions,” Tech. Rep., LA-UR-87-2524; CONF-8610281-2, Los Alamos National Lab.; Observatoire de Nice; Ecole Normale Superieure, Los Alamos, NM, USA; Paris, France, 1986.

S. Succi, The Lattice Boltzmann Equation: For Fluid Dynamics and beyond, Oxford University Press, 2001.

S. Succi, E. Foti, and F. Higuera, “Three-dimensional flows in complex geometries with the lattice Boltzmann method,” Europhysics Letters (EPL), vol. 10, no. 5, pp. 433–438, 1989.

F. J. Higuera, S. Succi, and R. Benzi, “Lattice gas dynamics with enhanced collisions,” Europhysics Letters (EPL), vol. 9, no. 4, pp. 345–349, 1989.

Y. H. Qian, D. d'Humières, and P. Lallemand, “Lattice BGK models for Navier-Stokes equation,” Europhysics Letters (EPL), vol. 17, no. 6, pp. 479–484, 1992.

N. I. Prasianakis, I. V. Karlin, J. Mantzaras, and K. B. Boulouchos, “Lattice Boltzmann method with restored Galilean invariance,” Physical Review E, vol. 79, no. 6, 2009.

N. I. Prasianakis, T. Rosén, J. Kang, J. Eller, J. Mantzaras, and F. N. Büichi, “Simulation of 3D porous media flows with application to polymer electrolyte fuel cells,” Communications in Computational Physics, vol. 13, no. 3, pp. 851–866, 2013.

M. Tyagi, T. Gimmi, and S. V. Churakov, “Multi-scale micro-structure generation strategy for up-scaling transport in clays,” Advances in Water Resources, vol. 59, pp. 181–195, 2013.

L. Chou, R. M. Garrels, and R. Wollast, “Comparative study of the kinetics and mechanisms of dissolution of carbonate minerals,” Chemical Geology, vol. 78, no. 3-4, pp. 269–282, 1989.

L. N. Plummer, T. M. L. Wigley, and D. L. Parkhurst, “The kinetics of calcite dissolution in CO₂-water systems at 5 degrees to 60 degrees C and 0.0 to 1.0 atm CO₂,” American Journal of Science, vol. 278, no. 2, pp. 179–216, 1978.

A. Parmigiani, S. Faroughi, C. Huber, O. Bachmann, and Y. Su, “Bubble accumulation and its role in the evolution of magma reservoirs in the upper crust,” Nature, vol. 532, no. 7600, pp. 492–495, 2016.

I. Battiato and D. M. Tartakovsky, “Applicability regimes for macroscopic models of reactive transport in porous media,” Journal of Contaminant Hydrology, vol. 120-121, pp. 18–26, 2011.

A. M. M. Leal, D. A. Kulik, and M. O. Saar, “Ultra-fast reactive transport simulations when chemical reactions meet machine learning: chemical equilibrium,” 2017, https://arxiv.org/abs/1708.04825.