For the simulation of three-phase flow in porous media, it is common to use a specific treatment (i.e., different from the typical two-phase procedure) to evaluate the oil relative permeability. Specifically, the three-phase oil relative permeability is obtained by interpolation of oil-water and oil-gas experimental data measured independently in two-phase displacements.
Let krw, wo and kro, wo be the water-oil two-phase relative permeabilities for the water phase and the oil phase, respectively. Let krg, go and kro, go be the oil-gas two-phase relative permeabilities for the gas phase and the oil phase, respectively. In the current implementation, the two-phase relative permeability data is computed analytically using the /coreComponents/constitutive/docs/BrooksCoreyRelativePermeability
.
The water and gas three-phase relative permeabilities are simply given by two-phase data and only depend on Sw and Sg, respectively. That is,
krw, wog(Sw) = krw, wo(Sw),
krg, wog(Sg) = krg, go(Sg).
The oil three-phase relative permeability is obtained using a variant of the saturation-weighted interpolation procedure initially proposed by Baker. Specifically, we compute:
This procedure provides a simple but effective formula avoiding the problems associated with the other interpolation methods (negative values).
The relative permeability constitutive model is listed in <Constitutive>
block of the input XML file. The relative permeability 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:
Below are some comments on the model parameters.
phaseNames
- The number of phases should be 3. Supported phase names are:
Value | Phase |
---|---|
oil | Oil phase |
gas | Gas phase |
water | Water phase |
phaseMinVolFraction
- The list of minimum volume fractions Sℓ, min for each phase is specified in the same order as inphaseNames
. Below this volume fraction, the phase is assumed to be immobile.waterOilRelPermExponent
- The list of exponents λℓ, wo for the two-phase water-oil relative permeability data, with the water exponent first and the oil exponent next. These exponents are then used to compute krℓ, wo in the/coreComponents/constitutive/docs/BrooksCoreyRelativePermeability
.waterOilRelPermMaxValue
- The list of maximum values krℓ, wo, max for the two-phase water-oil relative permeability data, with the water max value first and the oil max value next. These exponents are then used to compute krℓ, wo in the/coreComponents/constitutive/docs/BrooksCoreyRelativePermeability
.gasOilRelPermExponent
- The list of exponents λℓ, go for the two-phase gas-oil relative permeability data, with the gas exponent first and the oil exponent next. These exponents are then used to compute krℓ, go in the/coreComponents/constitutive/docs/BrooksCoreyRelativePermeability
.gasOilRelPermMaxValue
- The list of maximum values krℓ, go, max for the two-phase gas-oil relative permeability data, with the gas max value first and the oil max value next. These exponents are then used to compute krℓ, go in the/coreComponents/constitutive/docs/BrooksCoreyRelativePermeability
.
<Constitutive>
...
<BrooksCoreyBakerRelativePermeability name="relperm"
phaseNames="oil gas water"
phaseMinVolumeFraction="0.05 0.05 0.05"
waterOilRelPermExponent="2.5 1.5"
waterOilRelPermMaxValue="0.8 0.9"
gasOilRelPermExponent="3 3"
gasOilRelPermMaxValue="0.4 0.9"/>
...
</Constitutive>