1 Introduction

Carbon capture and storage (CCS) is considered one of the key technologies to reduce greenhouse gas emissions. It entails capturing carbon dioxide (CO\(_2\)) and storing it underground in geologic formations for thousands of years. A major concern in carbon sequestration projects is the prediction of the plume movement to ensure subsurface retention of CO\(_2\) Delshad et al. (2012); Dewers et al. (2018).

A multitude of factors can help immobilize CO\(_2\) in the subsurface (Orr 2009a). During injection, CO\(_2\) is buoyant compared to the formation’s oil and water, and thus, the low permeability rock layers will prevent it from migrating upward toward the surface. At the same time, the dissolution of CO\(_2\) in water starts immediately after the two fluids become in contact forming a denser mixture that gets trapped in the pore spaces of the rocks. After the injection of CO\(_2\) stops, capillary forces play a more significant role in CO\(_2\) containment. As water imbibes into the CO\(_2\) plume, isolated CO\(_2\) bubbles get trapped due to capillary forces and eventually a significant fraction of the CO\(_2\) plume become immobilized (Orr 2009b).

The design of CO\(_2\) storage projects involves experimental testing and numerical simulations to develop a better understanding of the storage site, optimize the injection schedule, and assess the associated risks (Delshad et al. 2014). Laboratory core analysis is conducted to obtain rock properties such as porosity, permeability, relative permeability, and capillary pressure. Numerical models are then validated against coreflood experiments to make sure they can capture the phase behavior and the petrophyscial phenomena.

Nonetheless, significant challenges arise when upscaling models derived from rock core samples to field scale simulations (Nordbotten et al. 2012). The uncertainty of the stratigraphy, the variability in the initial fluid conditions, and the heterogeneity of the rock properties, even for the same facies, are all factors that affect the accuracy of numerical simulations (Kelemen et al. 2019). These are in addition to the errors arising from the inherent assumptions of the numerical models (Class et al. 2009).

Formal uncertainty analysis techniques for subsurface projects include both uncertainty characterization and propagation (Mishra 2009). Ensemble simulations are often used in CCS projects to quantify the range of likely outcomes and estimate the possible risk of CO\(_2\) leakage (Celia and Nordbotten 2009). The process entails (1) choosing the input parameters to be sampled, (2) assigning ranges or probability distributions for each of these parameters, (3) random sampling from the parameter space, and (4) multi-model computations for all the realizations to estimate the uncertainty (Mishra 2002, 2009). The computational cost of running all the forward models can sometimes be computationally prohibitive for large-scale field problems. Statistical-based approaches provide an alternative solution to conduct uncertainty quantification. Commonly used approaches include the first-order second-moment method (FOSM), the point estimate method (PEM), and the logic tree analysis (LTA) (Mishra and Datta-Gupta 2018).

To better understand risk assessment and uncertainty quantification in the context of CCS applications, a benchmark experimental setup, the FluidFlower rig, was built at the University of Bergen. CO\(_2\) injection tests were conducted on a sand box with geological layers that mimic field complexities (Flemisch et al. 2023). The experiments were amended with a series of laboratory tests on core samples from the facies constituting the sand box. In this paper, we conduct a numerical study to model the FluidFlower experiments using the Implicit Parallel Accurate Reservoir Simulator (IPARS) (IPARS 2007). We present a statistical sampling approach to address the uncertainties in the core testing experiments. We then compare the spatial distribution of CO\(_2\) in the numerical simulations to that of the experimental rig. The goal is to demonstrate the ability of a compositional reservoir simulator and commonly used uncertainty quantification tools to predict the fate of CO\(_2\) in subsurface storage projects.

The rest of this paper is organized as follows. In Sect. 2, we summarize the governing equations for compositional multiphase flow that are implemented in IPARS. In Sect. 3, we describe the FluidFlower experimental setup. Section 4 introduces the laboratory testing and the associated assumptions for the numerical model. Finally, the simulation results and discussion are presented in Sect. 5. The paper is closed with a summary of the main developments and the conclusions of the study.

2 Compositional Multiphase Flow Formulation for CO\(_2\) Sequestration

The fundamentals of CO\(_2\) sequestration are the same as those of enhanced oil recovery and natural gas projects. The migration of CO\(_2\) in the subsurface can be modeled as a compositional multiphase flow with an equation of state for the phase behavior of CO\(_2\). This has been carried out using the in-house reservoir simulator IPARS. The governing nonlinear partial differential equations of the physical processes and and the numerical implementation are summarized next.

2.1 Conservation of Mass and Darcy Flow

The migration of CO\(_2\) plume is modeled as a multiphase flow in porous media. The compositional model in IPARS assumes three phases: aqueous (aq), liquid (w), and vapor (g). The aqueous phase is only used on the top of the tank to enforce the boundary conditions. The liquid phase is modeled as a mixture of water and CO\(_2\), while the gaseous phase is assumed to be pure CO\(_2\). The conservation of mass equation for each component can be expressed as:

$$\begin{aligned} \begin{aligned} \frac{\partial \big (\phi N_i \big )}{\partial t} + \nabla . \left( \sum _{\alpha }^{N_\alpha } J_i^{\alpha }\right) = q_{i} \end{aligned} \end{aligned}$$
(1)

Here, \(\alpha\) refers to the phase and i to the component, i.e., CO\(_2\) or H\(_2\)O. \(\phi\) denotes the porosity of the medium, while \(N_i\) and \(q_i\) represent the molar concentration and the injection (or production) rate of component i, \(J_i^{\alpha }\) is the net mass velocity of component i in phase \(\alpha\). Expressing Eq. (1) in terms of saturations and phase compositions:

$$\begin{aligned} \begin{aligned} \frac{\partial \big (\phi \sum _{\alpha }^{} \xi _{i \alpha }^{} S_{\alpha } \rho _{\alpha } \big )}{\partial t} + \nabla . \sum _{\alpha }^{} \Big (\xi _{i \alpha }^{} \rho _{\alpha } u_{\alpha } - \phi S_{\alpha } D_{i \alpha }^{}. \nabla \big ( \rho _{\alpha } \xi _{i \alpha }^{} \big ) \Big ) = \sum _{\alpha } q_{i \alpha } \end{aligned} \end{aligned}$$
(2)

Here, \(S_{\alpha }\) is the saturation, \(\xi _{i \alpha }\) the mole fraction of component i in phase \(\alpha\), \(\rho _{\alpha }\) the density, \(u_{\alpha }\) the flux, and \(D_{i \alpha }\) the diffusion-dispersion tensor. The flux for each phase can be expressed using Darcy’s constitutive law for fluid flow through a porous medium:

$$\begin{aligned} \begin{aligned} u_{\alpha } = - K \frac{k_{r \alpha }(S_{\alpha })}{\mu _{\alpha }} \big ( \nabla p_{\alpha } - \rho _{\alpha }g\nabla z \big ) \end{aligned} \end{aligned}$$
(3)

K is the absolute permeability of the porous rock matrix, \(k_{r\alpha }\) the relative permeability, \(\mu _{\alpha }\) the viscosity, z the depth, g the gravitational force, and \(p_\alpha\) the pressure.

The phase pressure \(p_{\alpha }\) can be expressed (and eliminated) in terms of a reference phase pressure, \(p_{\text {ref}}\), by the capillary pressure relation. The latter is assumed to be a known function of phase saturation:

$$\begin{aligned} \begin{aligned} p_{\alpha } - p_{\text {ref}} = p_{c}(S_{\alpha }) \end{aligned} \end{aligned}$$
(4)

The reference phase pressure, in this paper, was assumed to be the liquid phase. It is also used in the flash calculations and for porosity updates. This can be expressed as:

$$\begin{aligned} \begin{aligned} \phi = \phi _0 \Big ( 1+c_\textrm{r}\big (p_{\text {ref}}-p_0\big )\Big ) \end{aligned} \end{aligned}$$
(5)

where \(c_\textrm{r}\) is the rock compressibility and \(\phi _0\) is the porosity at the initial pressure value, \(p_0\). The resulting system of partial differential equations is closed by the constraint on phase saturation:

$$\begin{aligned} \begin{aligned}&\sum _{\alpha =1}^{N_\alpha } S_{\alpha } = S_{aq} + S_w + S_g = 1 \end{aligned} \end{aligned}$$
(6)

2.2 Equation of State and Flash Algorithm

The phase properties and phase compositions are then determined via thermodynamic equilibrium equations. The pressure, temperature, and molar concentrations are assumed to be constant during the flash calculations. The only state variable solved for in here is the phase composition.

The viscosity of the liquid and gaseous phases is determined using the Lohrenz-Bray-Clark correlation (Lohrenz et al. 1964). The phase molar specific volume, \(\nu _{\alpha }\), is given by the gas law:

$$\begin{aligned} \begin{aligned} \nu _{\alpha } = \frac{RTZ_{\alpha }}{p_{\alpha }} \end{aligned} \end{aligned}$$
(7)

where \(Z_{\alpha }\) is the compressibility factor obtained by solving the equation of state. IPARS uses a Peng-Robinson equation of state (Peng and Robinson 1976) with a volumetric shift parameter (Jhaveri and Youngren 1988) to determine the compressibility factor for each phase:

$$\begin{aligned} \bar{Z_\alpha }^3 + c_1 \bar{Z_\alpha }^2 + c_2 \bar{Z_\alpha } + c_3 = 0. \end{aligned}$$
(8)

When multiple roots are obtained for the cubic equation, the solution with the lowest Gibbs free energy is chosen. The parameters \(c_1\),\(c_2\), and \(c_3\) are calculated using the pressure and temperature variables. The simulator generates lookup tables for the parameters \(c_1\),\(c_2\), and \(c_3\) at different temperature values in order to minimize the number of calculations involved at each time step. The input values for the binary interaction coefficient, volumetric shift, acentic factor, and the critical pressure and temperature are calibrated/obtained using literature data as shown in Sect. 4.2.

The fraction of the total moles in the gas phase, denoted v, can then be calculated using the Rashford-Rice equation (Rachford and Rice 1952):

$$\begin{aligned} \sum _i \frac{(K_i -1)z_i}{1+(K_i-1)v} =0 \end{aligned}$$
(9)

where \(K_i\) and \(z_i\) are the K-value and the mole fraction of the component i in the mixture, respectively. The fluid is a single-phase liquid when v is zero, and it is a single-phase gas when v is one. Once v is determined from the Rachford-Rice equation, the mole fractions in the liquid and gas phases may be calculated from:

$$\begin{aligned} \xi ^{l}_{i} = \frac{z_i}{1+(K_i-1)v} \quad \text { and } \quad \xi ^{g}_i = K_i \xi ^{l}_{i}. \end{aligned}$$
(10)

Phase equilibrium at constant temperature and pressure requires that the component fugacities (\(f_i\)) be equal in each phase:

$$\begin{aligned} f_i^{l} = f_i^{g} \end{aligned}$$
(11)

This is a necessary, but not sufficient condition for phase equilibrium. Phase equilibrium at constant temperature and pressure also requires that the Gibbs free energy be a minimum. However, for most reservoir applications it is sufficient to work with equality of fugacities and that is the approach currently taken in IPARS.

If equilibrium is not achieved (Eq. 11), K-values are updated and the flash calculations are repeated again (Michelsen 1986). Rather than solving the equations for fugacities, IPARS solves for \(\ln (K_i)\) and works with the fugacity coefficients (\(\Phi _i\)) instead of the fugacities:

$$\begin{aligned} \Phi _i^{\alpha } = \frac{f_i^{\alpha }}{\xi ^{\alpha }_{i}p_{\alpha }} \end{aligned}$$
(12)

The values are solved for iteratively until the residual (\(R_{K_i}\)) becomes less than a predefined tolerance (\(TOL_{K_i}\)):

$$\begin{aligned} R_{K_i} = \ln \Phi _i^l - \ln \Phi _i^g - \ln K_i \end{aligned}$$
(13)

A summary of the flash iteration procedure is given in Algorithm (1).

figure a

2.3 Iterative IMPEC Method

An iterative implicit pressure explicit concentration (IMPEC) scheme is used to decouple the system of equations and solve for the state variables, namely, reference pressure, \(p_{\text {ref}}\), component molar concentration, \(N_i\), and phase compositions, \(\xi _{i \alpha }\). It can be shown that the fugacity Eq. (13), saturation constraint (6), Darcy’s law (3), and the component mass balance Eq. (2) can be rearranged to obtain a single system of equations in terms of reference pressure only:

$$\begin{aligned} \begin{aligned} {\varvec{A}} \delta p_{\text {ref}}= {\varvec{b}} \end{aligned} \end{aligned}$$
(14)

After the pressure is updated, the change in porosity is calculated using equation (5). Then, the component accumulation term in equation (1), \(A_i\equiv \frac{\partial \big (\phi N_i \big )}{\partial t}\), is calculated from:

$$\begin{aligned} \begin{aligned} A_i^{k+1} = \frac{\phi N_i^k + N_i^k \delta \phi + \phi ^k \delta N_i - \phi ^n N_i^n}{\Delta t} \end{aligned} \end{aligned}$$
(15)

Then, the (\(k+1\)) iteration of the concentration can be updated using:

$$\begin{aligned} \begin{aligned} N_i^{k+1} = \frac{\Delta t A_i^{k+1} + \phi ^n N_i^n}{\phi ^{k+1}} \end{aligned} \end{aligned}$$
(16)

The explicit in-time concentration update of equation (16) can cause the calculations to become unstable if time steps become too large. The simulator currently uses a saturation-type control to limit time step sizes for the iterative IMPEC implementation.

For the spatial discretization, we utilize the mixed finite element method to construct a fully discrete form of the flow problem using the lowest order Raviart-Thomas (RT\(_0\)) elements. The mixed finite element framework allows for local mass conservation, accurate flux approximation, and a more general treatment of boundary conditions. An appropriate choice of mixed finite element spaces and degrees of freedom based upon the quadrature rule for numerical integration (Russell and Wheeler 1983) allow flux degrees of freedoms to be defined on the face of elements in terms of cell-centered pressures.

3 Summary of FluidFlower Experiment

3.1 Experimental Setup

The FluidFlower is an experimental rig constructed at the University of Bergen to conduct relatively large-scale multiphase flow experiments on geological geometries. The dimensions of experimental setup are 2.84 [m] in length and 1.3 [m] in height. The curved design of the rig results in a varied width that ranges between 0.019 [m] at the boundaries and 0.028 [m] at the center.

The setup has an optical transparent panel that allows the visualization of the fluid flow on the front. It also has a sealed back panel with 56 perforations that include injection and production ports as well as pressure sensors. The flow boundaries are closed at the bottom, left and right sides of the rig; the top is open to the atmosphere. For more information about the experimental setup, the reader is referred to Fernø et al. (2023); Nordbotten et al. (2022).

3.2 Geological Facies

The rig is filled with six different types of unconsolidated ‘Danish quartz sand’ varying in grain size from fine to granules. Table 1 summarizes the grain size distribution of the different facies.

Table 1 Grain size distribution for the different sand types

The sand was cleaned from any impurities prior to conducting any experiments. It was then poured into the rig starting from the bottom. Distinct geological features were added during the pouring process including bedding, varying dipping angles, fractures, and a seal. Figure 1 shows the experimental setup prior to fluid injection.

Fig. 1
figure 1

FluidFlower geometry prior to fluid injection. Distinct geological layers can be seen as well as the two features and the foam seal. Figure courtesy of Nordbotten et al. (2022)

3.3 Operation Schedule

The rig was initially filled with distilled water so that a free water table with a fixed elevation is formed at the top of the sand. The water table is at 1.5 [m] from the bottom of the rig; its elevation is kept constant throughout the experiment via pressure specified injection/production ports.

Gaseous CO\(_2\) is injected at the start of the experiment at the lower injection port at a constant flow rate of 10 [ml/min] for 5 h. After 2 h and 15 min of the start of the experiment, CO\(_2\) is injected in the upper injection port for a period of 2 h and 45 min. The evolution of the CO\(_2\) in the rig is monitored for a total period of 5 days. The porous medium was filled with pH-sensitive dyes to track the CO\(_2\) movement. The temperature is kept constant at \(20 ^\circ C\) throughout the experiment.

4 Numerical Experiments and Uncertainty Quantification

IPARS multiphase reservoir simulator was used to simulate the migration of the CO\(_2\) plume in the FluidFlower experimental rig. The compositional module was adopted for CO\(_2\)/H\(_2\)O phase behavior. Petrophysical properties were deduced from core experiments. The uncertainties in laboratory measurements were represented in the form of ranges for parameters. This resulted in a number of ensemble runs to better estimate CO\(_2\) flow.

4.1 Simulation Grid

The experimental setup was digitized to represent the geometry of the different layers (Fig. 2).

Fig. 2
figure 2

Digitized representation of the FluidFlower setup

In the simulations, the petrophysical properties were assumed homogeneous for each sand layer independent of its location.

No flow boundary conditions were assumed on the bottom and the left and right sides. The water table on top of the geological layers was represented explicitly as a high permeability layer fully saturated with water (\(S_w = 1.0\)). The constant hydrostatic pressure on top was enforced similar to the experiment with pressure specified injection and production wells located at the perforations shown in Fig. 1. The computational domain was discretized using 140 \(\times\) 75 grid cells: 140 \(\times\) 65 for the geological layers and 140 \(\times\) 10 to represent the water table. The depth was assumed to be uniform in all cells at 0.025 [m].

4.2 Fluid Characterization

We calibrated the parameters of the Peng-Robinson equation of state to be able to represent the density and viscosity of CO\(_2\) and water at the experiment’s temperature and pressure conditions (see Table 2). The binary interaction coefficient was also calibrated so that the solubility of CO\(_2\) in water is 1.496 [kg/m\(^3\)]. Figure 3 shows a comparison of the density of CO\(_2\) between the numerical simulations and NIST data over the experiment’s range of pressures.

Table 2 PVT data for fluid characterization
Fig. 3
figure 3

Comparison of predicted CO\(_2\) density from numerical simulations versus NIST data at \({T=}20 ^\circ\)C

4.3 Petrophysical Properties

Laboratory testing was conducted on the sand facies to determine their petrophysical properties. These tests included measurements for porosity, capillary entry pressure, endpoint relative permeability, and absolute permeability values. The experiments were repeated more than once to evaluate the uncertainty in measurements. This section summarizes the results of the laboratory testing along with the sampling approach to handle the uncertainty.

4.3.1 Porosity

Two measurements were made to evaluate the porosity of each of the sand facies. The porosity values showed little variance. The adopted values for initial porosity in the simulations are summarized in Table 3.

Table 3 Initial porosity values for the different sand types

4.3.2 Relative Permeability

Brooks-Corey model was adopted to describe the relative permeability of the different sand types. Imbibition relative permeability curves were assumed for both CO\(_2\) and water. The relative permeability for each sand can be expressed as:

$$\begin{aligned} \begin{aligned} k_{rw} = k_{rw}^0 (\bar{S}_w)^{n_w} \quad ; \quad k_{rg} = k_{rg}^0 (1 - \bar{S}_w)^{n_g} \end{aligned} \end{aligned}$$
(17)

The normalized water saturation is defined as:

$$\begin{aligned} \begin{aligned} \bar{S}_w = \frac{S_w-S_{wr}}{1-S_{wr}-S_{gr}} \end{aligned} \end{aligned}$$
(18)

The values of the endpoint relative permeabilities (\(k_{rw}^0\), \(k_{rg}^0\)) and the corresponding irreducible saturation values (\(S_{g}\), \(S_{wr}\)) in equations 17 and 18 are provided in Table 4. The exponents for all facies were taken to be \(n_w=n_g=2\). The resulting relative permeability curves are plotted in Fig. 4.

Table 4 Residual saturations and endpoint relative permeabilities for water and gas
Fig. 4
figure 4

Relative permeability curves for the different sand types

4.3.3 Capillary Pressure

The capillary pressure to gas for each sand types was estimated based on in situ gas column break-through experiments. The capillary entry pressure values (\(p_c^{\text {entry}}\)) for each sand are given in Table 5.

Table 5 Entry capillary pressure values for each sand type

Brooks-Corey model was also adopted for calculation of capillary pressure. Drainage capillary pressure functions were obtained using the following equation:

$$\begin{aligned} \begin{aligned} p_{c} = p_c^{\text {entry}} \big (\bar{S}_w \big )^{\frac{-1}{\lambda _d}} \end{aligned} \end{aligned}$$
(19)

The exponent, \(\lambda _d\) was also assumed to be 2.0. Figure 5 shows the capillary pressure curves for the finest three sands. It is important to note that the asymptotic cutoff value for capillary pressure was taken larger than the irreducible water saturation. This assumption does not affect simulations since the pressure values at the cutoff were still larger than the range of pressures encountered during the experiment.

Fig. 5
figure 5

Capillary pressure curves for sands ESF, C, and D

4.3.4 Permeability

The permeability was tested for each sand. The values showed consistency with grain size distribution. This property was used in the uncertainty quantification in Sect. 4.4.2. The permeability of each sand is summarized in Table 6.

Table 6 Measured permeability values for each sand facies

4.4 Uncertainty Quantification

4.4.1 Relative Permeability Distribution

The laboratory experiments indicated low confidence in the experimental results for relative permeability to gas (Nordbotten et al. 2022). In addition, the reported endpoint values for sands C and D were extremely low and uncommon for sand columns. Accordingly, the endpoint relative permeabilities for gas were modeled as uniform distributions with a range of (0.06) with the same endpoint irreducible water saturation values. For sands C and D, the test values were considered as lower bound of the distribution. For the other sand types, the distribution was taken around the experimental values; they are summarized in Table 7.

Table 7 Upper and lower bounds for gas relative permeability and the corresponding endpoint water saturations

4.4.2 Permeability Distribution

Since only one set of measurements was carried out, the permeability of each sand was represented by a normal distribution. The mean of each distribution was chosen based on the average grain size for the sand type. The standard deviation was also inferred from the grain size distribution. The properties of the normal distribution of each sand type are summarized in Table 8.

Table 8 Mean and standard deviation values of the normal distribution of the permeability of each sand facies

4.4.3 Sampling Procedure

A total of 45 samples were randomly generated for the gas relative permeability for each sand type; the resulting curves are plotted in Fig. 6. Similarly, permeability values were randomly sampled from the distributions of the different sand types as shown in Fig. 7. The remaining petrophysical and fluid properties were assumed to be identical for all the test cases.

Fig. 6
figure 6

Relative permeability curves corresponding the uniform distribution of gas endpoint relative permeability

Fig. 7
figure 7

Random sampling of permeability values from the distribution of each sand type

5 Simulation Results and Discussion

5.1 Reference Test Case

We ran the simulations using the absolute and relative permeability values provided from the experimental results (Sects. 4.3.2 and 4.3.4). The total simulation time was for 5 days with adaptive time stepping. The maximum time step allowed was 10 s, and the minimum time step reached was around 0.001 s.

Fig. 8 shows the predicted spatial distribution of CO\(_2\) gas over the observation period (120 h). Initially, CO\(_2\) gas forms two plumes in the top and middle sections of the domain as seen after 24 h of the start of injection. CO\(_2\) dissolves with time into the water. This is more significant in the upper plume where almost all CO\(_2\) disappears by the second day of the experiment; the gas saturation decreases from 100.% to almost 0% after 48 h of the start of injection. It is important to note that remaining gaseous CO\(_2\) in the middle section does not escape the tank, despite the high permeability of the sand facies, due to capillary forces.

Fig. 8
figure 8

Spatial distribution of saturation of gaseous CO\(_2\) over 5day period

The impact of the thermodynamic and gravitational forces is clearly visible when looking at the concentration of dissolved CO\(_2\) plotted in Fig. 9. The dissolution of CO\(_2\) in water begins immediately after CO\(_2\) comes in contact with water, slowly settling down due to the difference in density between the resident water and the CO\(_2\)-rich water. This can be seen in the two plumes forming below the injection points. On the bottom left side of the domain, the concentration of soluble CO\(_2\) exceeds 1.0 [kg/m\(^3\)] after 24 h and the spread of the CO\(_2\) plume extends laterally at the bottom of the tank. The same behavior can be observed in the upper plume in the middle of the tank where the concentration of soluble CO\(_2\) reaches 1.5 [kg/m\(^3\)] initially before it dilutes in the resident water.

After the injection stops, the advection forces decrease and the gravitational forces become more significant. The CO\(_2\)-rich water mixture descends slowly to the bottom of the tank in the form of gravity fingers as shown in Fig. 9. The concentration of the soluble CO\(_2\) descending to the bottom of the tank decreases from 1.0 to around 0.5 [kg/m\(^3\)] after 96 h from the injection. This indicates that the CO\(_2\) movement in the tank occurs at a slower rate as the system starts to reach an equilibrium state.

Fig. 9
figure 9

Spatial distribution of concentration of CO\(_2\) dissolved in water over 5day period. CO\(_2\) concentration in [kg/m\(^3\)]

Next, we compare the simulations for the reference test case with the fluid injection results. The FluidFlower experiments provided the spatial distribution of CO\(_2\) at 1-day intervals as shown in Fig. 10. The presence of CO\(_2\) in the experimental setup can be deduced from the change in color of the pH-sensitive dye. For the simulation results, the threshold for CO\(_2\) to be present was set at gas saturation equal or greater than 0.05 or if the concentration of soluble CO\(_2\) is more than 0.1 [kg/m\(^3\)]. Figure 10 shows that the numerical simulations can predict the evolution of the CO\(_2\) plume in the tank to a large extent. Even the gravity fingers forming in the experiment after 24 h of injection were captured by the numerical simulation (Figs. 9 and 10). However, it is obvious that the simulations failed to predict the rise of CO\(_2\) through the fracture in the upper left side of the domain. This is due to the low relative permeability to gas of Sand D which impeded the rise of CO\(_2\) through the fracture. Using higher values of endpoint relative permeability to gas permitted more CO\(_2\) to reach the upper left compartment of the tank as will be shown in Sect. 5.2. The authors believe that such a low value for endpoint relative permeability (k\(_\text {rg}^0=0.02\)) can be attributed to an error in experimental testing.

Fig. 10
figure 10

Comparison between experimental results and numerical simulation of the reference test case over 5day period

5.2 Ensemble Simulations

We then run an ensemble of simulations based on the procedure outlined in Sect. 4.4.3. The results are reported in terms of probability of non-exceedance of the spread of the CO\(_2\) plume as P10, P50, and P90 values in Figs. 11, 12, and 13, respectively. In this context, P10 is the aggressive estimate for the location of CO\(_2\) in the tank; the probability of CO\(_2\) being present in only the grid cells marked by the P10 estimate is 10% or less of the total number of simulations. On the other hand, P90 is the conservative estimate; the grid cells marked by this estimate covers 90% of the predicted distribution of CO\(_2\) plume in the tank.

Most ensembles indicate similar migration of CO\(_2\) plume at early time steps (t=24 h) as shown in Fig. 11. The advection of CO\(_2\) is the most dominant mechanism during the fluid injection and shortly after the stoppage. This explains the upper-right and midsection spread of CO\(_2\) in the tank. As the gravitational and dissolution effects become more dominant, the fate of the CO\(_2\) plumes differs significantly between the different test cases. This can be inferred by the limited changes in P10 expectations (Fig. 11) over the different time intervals.

Fig. 11
figure 11

Comparison between experimental results and P10 simulation statistics over 5day period

P50 estimates (Fig. 12) show a higher accuracy in predicting the spatial distribution of CO\(_2\) in the tank as compared to the reference test case (Fig. 10) and P10 estimates (Fig. 10). It is also interesting to see unique plume features show in the P50 estimates such as the gravity fingers. It indicates, to a certain extent, resemblance between the ensemble results.

Fig. 12
figure 12

Comparison between experimental results and P50 simulation statistics over 5day period

P90 estimates (Fig. 13) are supposed to be the most conservative in terms of predicting the CO\(_2\) plume in the experimental setup. The simulations predict the distribution of CO\(_2\) after 24 h with a high accuracy and continues to do so over the span of the experiment. It is important to note that the mismatch in the CO\(_2\) spread in the middle section that appears after 72 h can be correlated to the threshold set for CO\(_2\) presence. This is supported by the fact that CO\(_2\) is initially present in that section as shown in Fig. 13, t = 24 h, and then it gradually disappears – probably due to dissolution then settling. This is one of the limitations that will be addressed in the next section.

Fig. 13
figure 13

Comparison between experimental results and P90 simulation statistics over 5day period

5.3 Discussion

One of the goals of this project was to check the ability of blind numerical simulations to match experimental data for CO\(_2\) injection projects. To quantify the predictability of the simulations, we calculate the cell-to-cell error of the spread of CO\(_2\) in the computational domain (Table 9). An error is defined if the numerical simulation fails to account for the presence of CO\(_2\) that shows in the experimental result.

$$\begin{aligned} \begin{aligned} \text {Predictability Error} = \frac{\sum _{i}^{N_{cells}} \Bigg [ \text {Exp}(i) - \text {Sim}(i) \Bigg ]^+ }{ N_{cells} } \times 100 \end{aligned} \end{aligned}$$
(20)

where \([\ ]^+\) refers to the positive values only, and the two variables Exp and Sim are binary indicators (0 or 1) for the CO\(_2\) presence in the experiment and simulation, respectively. The simulations indicate a good initial predictability of the reference test case, but eventually the error reaches 30% by the end of the experiment.

The ensemble runs seem to predict the fate of CO\(_2\) in the FluidFlower rig to a large extent. The simulations show around 20% error for the P50 estimates and less 10% error for the P90 estimates. This indicates that the adopted approach for uncertainty quantification addresses the variability in the problem characterization.

It is important to note that geologic uncertainty was not a factor in the study as the location of the sand facies was known. The only source of uncertainty considered was petrophysical characterization. Still, the numerical simulations for the reference test case showed significant error ( 30%) toward the end of the experiment. This emphasizes the importance of conducting stochastic analysis for risk management of CO\(_2\) sequestration projects. It also highlights the importance of considering the uncertainty in petrophysical laboratory measurements and evaluating their impact on the results.

Table 9 Numerical simulations error in predictability of the spatial distribution of CO\(_2\)

One of the shortcomings of the experimental results is that only the presence of CO\(_2\) (or lack of thereoff) is provided. This renders the experimental data as highly ill-posed to infer from. It also affects the aforementioned error values (Table 9). Changing the threshold for concentration of soluble CO\(_2\) from 0.1 to 0.05 [kg/m\(^3\)], decreases the predictability error in all the numerical simulations as shown in Table 10. This limited our analysis of the accuracy of the P10, P50, and P90 indicators. It is also important to note that the definition of predictability error in equation (20) only registers an error if the simulation fails to predict the presence of CO\(_2\) in a grid cell, but if the simulation falsely predicts the presence of CO\(_2\), it is not considered an error. The motivation for this definition is to focus on the ability of the different indicators to account for the possible fate of CO\(_2\) plume. Thus, a lower error does not necessarily reflect a practicality of an indicator for engineering design, but rather a a more conservative answer for risk mitigation.

Table 10 Error in predictability of the numerical simulations of the spatial distribution of CO\(_2\) using a lower threshold for CO\(_2\) presence

6 Conclusions

In this work, we conducted a numerical study to predict the evolution of gaseous CO\(_2\) in the FluidFlower experimental setup. The results show that the numerical simulator could capture the complex physical processes that occur in the CO\(_2\) injection experiment. We then presented a random sampling approach to quantify the uncertainties in the characterization of petrophysical properties. This emphasized the importance of associating numerical results with confidence intervals to assess their reliability for decision-making.

In summary, the FluidFlower rig provided a unique opportunity to visualize the evolution of CO\(_2\) plume in a meter-scale experiment that mimics geological sites. While the pressure range in real projects differs from the experiment, trapping mechanisms including structural, capillary, and dissolution were present in the setup along with diffusive mixing and gravity dominated fingers. Thus, extending the experimental capabilities to include quantitative values of CO\(_2\) would pave the way for additional studies on geological carbon storage from physics modeling and fluid characterization to uncertainty quantification and risk assessment.