Data from: Flow heterogeneity controls dissolution dynamics in topologically complex rocks
Data files
Apr 16, 2025 version files 3.88 GB
-
dataforsubmission.zip
3.88 GB
-
README.md
7.62 KB
Abstract
Rock dissolution is a common subsurface geochemical reaction affecting pore space properties, crucial for reservoir stimulation, carbon storage, and geothermal energy. Predictive models for dissolution remain limited due to incomplete understanding of the mechanisms involved. We examine the influence of flow, transport, and reaction regimes on mineral dissolution using time-resolved data from 3D rocks. We find that initial pore structure significantly influences the dissolution pattern, with reaction rates up to two orders of magnitude lower than batch conditions given solute and fluid-solid boundary constraints. Flow unevenness determines the location and rate of dissolution. We propose two models describing expected dissolution patterns and effective reaction rates based on dimensionless metrics for flow, transport, and reaction. Finally, we analyze feedback between evolving flow and pore structure to understand conditions that regulate/reinforce dissolution hotspots. Our findings underscore the major impact of flow arrangement on reaction front propagation and provide a foundation for controlling dissolution hotspots.
This dataset contains flow field and effective reaction rate information for 26 different dissolution rock experiments and simulations. Specifics on the imposed hydrodynamics (Peclet, Damkohler, and Kinetic numbers), initial flow heterogeneity (percolation threshold), mineralogy and batch reaction rate, converged effective reaction rate, and microtomography scan dimensions and resolution are given in a summary table (DataSummaryTable.csv
). This file contains the sample dimensions (nx, ny, nz) in units of pixels; the voxel size in microns; initial_pc, Pe, advective Damkohler (adv_Da), and diffusive Damkohler (diff_Da) in dimensionless units; batch reaction rate and converged effective reaction rate in units of mol/m^2 s; and reaction ratio in dimensionless units.
The Eulerian flow fields were computed in the pore space of each sample’s segmented microtomography scan using the FlowDict module of GeoDict, a commercial digital porous material simulator. This software employs the finite volume method to solve the classical set of Navier-Stokes equations with the steady state condition. For the boundary conditions of the computation, a uniform pressure gradient of 1 kPa was set on two opposite faces of the sample volume. This flow field is provided as the magnitude of the three directional components in meters per second (vel_magnitude.raw
). Accessing flow field data in .raw format can be done with any programming software, including Python, MATLAB, and FIJI.
The dissolution information is given by a timeseries of the effective reaction rate (effective_reaction_rate.txt
). The effective reaction rates were computed in accordance with Equation 4 from Menke et al., 2015 (doi: 10.1021/es505789f) with units of mols per square meter per second. The converged effective reaction rate reported in the summary table (DataSummaryTable.csv
) is computed as the the average reaction rate from the point of convergence to the end of the experiment/simulation. Convergence is reached when the rate of change of the effective reaction rate is less than five percent.
Description of the data and file structure
There is one folder (26 total) for each dissolution experiment/simulation. Each folder contains (i) the magnitude of the Eulerian flow field (vel_magnitude.raw
) and (ii) the evolving effective reaction rate timeseries (effective_reaction_rate.txt
). For the majority of the samples, the flow direction is in the z- or third-direction, except for sample 6 whose flow direction is in the x- or first-direction.
DataSummaryTable.csv
contains the sample label, image dimensions, voxel size, dissolution behavior, initial percolation threshold, Peclet number, Damkohler number (advective- or first-Damkohler), Kinetic number (diffusive- or second-Damkohler), batch reaction rate, converged effective reaction rate measured from experiement or simulation, reaction ratio, and mineralogy.
example.py
demonstrates how to run the functions defined in functions.py with the supplied data.
functions.py
contains functions to calculate the percolation threshold and effective reaction rate.
Sharing/Access information
Data for samples 1, 6, and 7 was derived from the following source:
- Pereira Nunes, J. P., Bijeljic, B., and Blunt, M. J. (2016). Pore-space structure and average dissolution rates: A simulation study. Water Resources Research, 52, 7198–7212. https://doi.org/10.1029/2018WR024137
- Various similiar micro-CT scans can be downloaded here[https://www.imperial.ac.uk/earth-science/research/research-groups/pore-scale-modelling/micro-ct-images-and-networks/]
Data for samples 2, 3, 9, 10, 11, 12, 13, 14, 15, 16, 17, and 18 was derived from the following sources:
- Menke, H. P., Bijeljic, B., & Blunt, M. J. (2017). Dynamic reservoir-condition microtomography of reactive transport in complex carbonates: Effect of initial pore structure and initial brine pH. Geochimica et Cosmochimica Acta, 204, 267-285. https://doi.org/10.1016/j.gca.2017.01.053
- Imperial College London, Qatar Carbonates And Carbon Storage Research Centre (2019): Dynamic reservoir-condition microtomography of reactive transport in complex carbonates: Effect of initial pore structure and initial brine pH in Ketton, Estaillades, and Portland Limestones. British Geological Survey. http://www.bgs.ac.uk/ukccs/accessions/index.html#item129320
Data for sample 8 was derived from the following sources:
- Menke, H. P., Bijeljic, B., Andrew, M. G., & Blunt, M. J. (2015). Dynamic three-dimensional pore-scale imaging of reaction in a carbonate at reservoir conditions. Environmental science & technology, 49(7), 4407-4414. https://doi.org/10.1021/es505789f
- Imperial College London, Qatar Carbonates And Carbon Storage Research Centre (2018): Dynamic X-ray micro-tomography Imaging of reaction of CO2-acidified brine with limestone at reservoir conditions. British Geological Survey. http://dx.doi.org/10.5285/35cc4916-bfe3-4713-bbd1-75aa0025cbe1
Data for samples 19, 20, 21, and 22 was derived from the following sources:
- Al-Khulaifi, Y., Lin, Q., Blunt, M. J., & Bijeljic, B. (2019). Pore-scale dissolution by CO2 saturated brine in a multimineral carbonate at reservoir conditions: Impact of physical and chemical heterogeneity. Water Resources Research, 55, 3171–3193. https://doi.org/10.1029/2018WR024137
- Al-Khulaifi, Y.; Lin, Q.; Blunt, M.J., and Bijeljic, B. (2019): Pore-Scale Dissolution by CO2 Saturated Brine in a Multi-Mineral Carbonate at Reservoir Conditions: Impact of Physical and Chemical Heterogeneity. British Geological Survey. (Dataset). http://dx.doi.org/10.5285/52b08e7f-9fba-40a1-b0b5-dda9a3c83be2
Data for samples 23, 24, 25, and 26 was derived from the following sources:
- Al-Khulaifi, Y., Lin, Q., Blunt, M. J., & Bijeljic, B. (2018). Reservoir-condition pore-scale imaging of dolomite reaction with supercritical CO2 acidified brine: Effect of pore-structure on reaction rate using velocity distribution analysis. International Journal of Greenhouse Gas Control, 68, 99-111. https://doi.org/10.1016/j.ijggc.2017.11.011
- Lin, Qingyang; Al-Khulaifi, Yousef; Blunt, Martin J.; Bijeljic, Branko (2017). Reservoir-Condition Pore-Scale Imaging of Dolomite Reaction with Supercritical CO2 Acidified Brine: Effect of Pore-Structure on Reaction Rate using Velocity Distribution Analysis. figshare. Dataset. https://doi.org/10.6084/m9.figshare.5589949.v2
Code/Software
All included codes can be run in Python (tested in v.3.9.5) and require the following libraries: numpy (tested in v.1.25.2), pandas (tested in v.1.2.4), scikit-image (tested in v.0.18.1, imported as skimage in code).
In order to run example.py, one will need to ensure (i) functions.py is in the same folder as example.py and (ii) the ‘directory’ variable (line 7, as uploaded) is customized to the correct data location. Both example.py and functions.py are fully commented to document what the code is doing.
This data set contains (a) the initial steady-state Eulerian flow field at the pore-scale and (b) the temporal evolution of the dissolution reaction rate for various rock samples considered in this study. Briefly, for resolving the flow field, binary 3D rock images at time t=0 are used as the geometric boundaries in which the Navier-Stokes equations are solved numerically with the finite volume method (FlowDict, Math2Market). The boundary conditions imposed a uniform pressure gradient of 1kPa at opposite boundaries of each sample volume. For tracking the evolution of the reaction rate, reactive transport simulations are performed with the Digital Rock Physics module of GeoDict (Math2Market), starting with the initial rock image. Briefly, each dissolution simulation is run in so-called batches. During each batch, (i) the pore geometry is updated, (ii) the flow within that geometry is resolved to achieve an average linear velocity corresponding to the desired Peclet number of the study (iii) N=50,000 acidified particles are tracked in the domain via a flux-weighted injection, and (iv) collisions between particles and the solid surface are recorded. At the end of a batch, the solid voxels where collisions occurred are removed to update the geometry for the next batch. Only one voxel layer is permitted to be dissolved in each batch. Steps i-iv are repeated for each batch until the sample meets quasi-equilibrium for its reaction rate (i.e., dre/dt < 5%).