Brooks-Corey capillary pressure model

Overview

In GEOSX, the oil-phase pressure is assumed to be the primary pressure. The following paragraphs explain how the Brooks-Corey capillary pressure model is used to compute the water-phase and gas-phase pressures as:

p_w = p_o - P_{c,w}(S_w),

and

p_g = p_o + P_{c,g}(S_g).

In the Brooks-Corey model, the water-phase capillary pressure is computed as a function of the water-phase volume fraction with the following expression:

P_{c,w}(S_w) = p_{e,w} S_{\textit{w,scaled}}^{-1/\lambda_w},

where the scaled water-phase volume fraction is computed as:

S_{\textit{w,scaled}} = \frac{S_w - S_{\textit{w,min}} }{1 - S_{\textit{w,min}} - S_{\textit{o,min}} - S_{\textit{g,min} }}.

The gas capillary pressure is computed analogously.

Parameters

The capillary pressure constitutive model is listed in <Constitutive> block of the input XML file. The capillary pressure model must be assigned a unique name via name attribute. This name is used to assign the model to regions of the physical domain via a materialList attribute of the <ElementRegion> node.

The following attributes are supported:

Name Type Default Description
capPressureEpsilon real64 1e-06 Wetting-phase saturation at which the max cap. pressure is attained; used to avoid infinite cap. pressure values for saturations close to zero
name string required A name is required for any non-unique nodes
phaseCapPressureExponentInv real64_array {2} Inverse of capillary power law exponent for each phase
phaseEntryPressure real64_array {1} Entry pressure value for each phase
phaseMinVolumeFraction real64_array {0} Minimum volume fraction value for each phase
phaseNames string_array required List of fluid phases

Below are some comments on the model parameters:

Value Phase
oil Oil phase
gas Gas phase
water Water phase
  • phaseMinVolFraction - The list of minimum volume fractions S_{\ell,min} for each phase is specified in the same order as in phaseNames. Below this volume fraction, the phase is assumed to be immobile. The values entered for this attribute have to match those of the same attribute in the relative permeability block.
  • phaseCapPressureExponentInv - The list of exponents \lambda_{\ell} for each phase is specified in the same order as in phaseNames. The parameter corresponding to the oil phase is currently not used.
  • phaseEntryPressure - The list of entry pressures p_{e,\ell} for each phase is specified in the same order as in phaseNames. The parameter corresponding to the oil phase is currently not used.
  • capPressureEpsilon - This parameter is used for both the water-phase and gas-phase capillary pressure. To avoid extremely large, or infinite, capillary pressure values, we set P_{c,w}(S_w) := P_{c,w}(\epsilon) whenever S_w < \epsilon. The gas-phase capillary pressure is treated analogously.

Example

<Constitutive>
   ...
   <BrooksCoreyCapillaryPressure name="capPressure"
                                 phaseNames="{oil, gas}"
                                 phaseMinVolumeFraction="{0.01, 0.015}"
                                 phaseCapPressureExponentInv="{0, 6}"
                                 phaseEntryPressure="{0, 1e8}"
                                 capPressureEpsilon="1e-8"/>
   ...
</Constitutive>