OGS
WettingPhaseBrooksCoreyOilGas.cpp
Go to the documentation of this file.
1
13
#include "
WettingPhaseBrooksCoreyOilGas.h
"
14
15
#include <algorithm>
16
#include <cmath>
17
18
namespace
MaterialLib
19
{
20
namespace
PorousMedium
21
{
22
double
WettingPhaseBrooksCoreyOilGas::getValue
(
const
double
saturation)
const
23
{
24
const
double
S = std::clamp(saturation,
_saturation_r
+
_minor_offset
,
25
_saturation_max
-
_minor_offset
);
26
const
double
Se = (S -
_saturation_r
) / (
_saturation_max
-
_saturation_r
);
27
const
double
krel = std::pow(Se, 3.0 + 2.0 /
_m
);
28
return
std::max(
_krel_min
, krel);
29
}
30
31
double
WettingPhaseBrooksCoreyOilGas::getdValue
(
const
double
saturation)
const
32
{
33
const
double
S = std::clamp(saturation,
_saturation_r
+
_minor_offset
,
34
_saturation_max
-
_minor_offset
);
35
const
double
Se = (S -
_saturation_r
) / (
_saturation_max
-
_saturation_r
);
36
return
((3.0 + 2.0 /
_m
) * std::pow(Se, 2.0 + 2.0 /
_m
)) /
37
(
_saturation_max
-
_saturation_r
);
38
}
39
}
// namespace PorousMedium
40
}
// namespace MaterialLib
WettingPhaseBrooksCoreyOilGas.h
MaterialLib::PorousMedium::RelativePermeability::_saturation_max
const double _saturation_max
Maximum saturation.
Definition
RelativePermeability.h:50
MaterialLib::PorousMedium::RelativePermeability::_minor_offset
const double _minor_offset
Definition
RelativePermeability.h:47
MaterialLib::PorousMedium::RelativePermeability::_saturation_r
const double _saturation_r
Residual saturation.
Definition
RelativePermeability.h:49
MaterialLib::PorousMedium::WettingPhaseBrooksCoreyOilGas::_m
const double _m
Exponent m, m>=1.0.
Definition
WettingPhaseBrooksCoreyOilGas.h:63
MaterialLib::PorousMedium::WettingPhaseBrooksCoreyOilGas::_krel_min
const double _krel_min
Minimum relative permeability.
Definition
WettingPhaseBrooksCoreyOilGas.h:64
MaterialLib::PorousMedium::WettingPhaseBrooksCoreyOilGas::getValue
double getValue(const double saturation) const override
Get relative permeability value.
Definition
WettingPhaseBrooksCoreyOilGas.cpp:22
MaterialLib::PorousMedium::WettingPhaseBrooksCoreyOilGas::getdValue
double getdValue(const double saturation) const override
Definition
WettingPhaseBrooksCoreyOilGas.cpp:31
MaterialLib
Definition
ConstantFluidProperty.h:18
MaterialLib
PorousMedium
UnsaturatedProperty
RelativePermeability
WettingPhaseBrooksCoreyOilGas.cpp
Generated by
1.11.0