24 const double S = std::clamp(saturation,
28 const double val = 1.0 - std::pow(1.0 - std::pow(Se, 1.0 /
_m),
_m);
29 const double krel = std::sqrt(Se) * val * val;
35 const double S = std::clamp(saturation,
39 const double sqrtSe = std::sqrt(Se);
40 const double temp_val = 1.0 - std::pow(1.0 - std::pow(Se, 1.0 /
_m),
_m);
41 return (0.5 * temp_val * temp_val / sqrtSe +
42 2. * sqrtSe * temp_val *
43 std::pow(1.0 - std::pow(Se, 1.0 /
_m),
_m - 1.) *
44 std::pow(Se, (1.0 -
_m) /
_m)) /
const double _saturation_max
Maximum saturation.
const double _minor_offset
const double _saturation_r
Residual saturation.
double getdValue(const double saturation) const override
const double _krel_min
Minimum relative permeability.
double getValue(const double saturation) const override
Get relative permeability value.
const double _m
Exponent m, m in [0, 1], n=1/(1-m).