OGS
|
van Genuchten model model: wetting phase
\[k{rel}= \sqrt{S_e} (1-(1-S_e^{1/m})^m)^2)\]
with
\[S_e=\frac{S-S_r}{S_{\mbox{max}}-S_r}\]
where
\begin{eqnarray*} &S_r& \mbox{ residual saturation,}\\ &S_{\mbox{max}}& \mbox{ maximum saturation,}\\ &m(<=1) & \mbox{ exponent.}\\ \end{eqnarray*}
Note:
\[m=1/(1-n)\]
.
Definition at line 37 of file WettingPhaseVanGenuchten.h.
#include <WettingPhaseVanGenuchten.h>
Public Member Functions | |
WettingPhaseVanGenuchten (const double Sr, const double Smax, const double m, const double krel_min) | |
std::string | getName () const override |
Get model name. | |
double | getValue (const double saturation) const override |
Get relative permeability value. | |
double | getdValue (const double saturation) const override |
Public Member Functions inherited from MaterialLib::PorousMedium::RelativePermeability | |
RelativePermeability (const double Sr, const double Smax) | |
virtual | ~RelativePermeability ()=default |
Private Attributes | |
const double | _m |
Exponent m, m in [0, 1], n=1/(1-m). | |
const double | _krel_min |
Minimum relative permeability. | |
Additional Inherited Members | |
Protected Attributes inherited from MaterialLib::PorousMedium::RelativePermeability | |
const double | _minor_offset = std::numeric_limits<double>::epsilon() |
const double | _saturation_r |
Residual saturation. | |
const double | _saturation_max |
Maximum saturation. | |
|
inline |
Sr | Residual saturation, \( S_r \) |
Smax | Maximum saturation, \( S_{\mbox{max}} \) |
m | Exponent, \( m \) |
krel_min | Minimum relative permeability, \( k_{rel}^{\mbox{min}}\) |
Definition at line 46 of file WettingPhaseVanGenuchten.h.
|
overridevirtual |
Get the derivative of relative permeability with respect to saturation.
saturation | Wetting phase saturation |
Implements MaterialLib::PorousMedium::RelativePermeability.
Definition at line 33 of file WettingPhaseVanGenuchten.cpp.
References _m, MaterialLib::PorousMedium::RelativePermeability::_minor_offset, MaterialLib::PorousMedium::RelativePermeability::_saturation_max, and MaterialLib::PorousMedium::RelativePermeability::_saturation_r.
|
inlineoverridevirtual |
Get model name.
Implements MaterialLib::PorousMedium::RelativePermeability.
Definition at line 53 of file WettingPhaseVanGenuchten.h.
|
overridevirtual |
Get relative permeability value.
Implements MaterialLib::PorousMedium::RelativePermeability.
Definition at line 22 of file WettingPhaseVanGenuchten.cpp.
References _krel_min, _m, MaterialLib::PorousMedium::RelativePermeability::_minor_offset, MaterialLib::PorousMedium::RelativePermeability::_saturation_max, and MaterialLib::PorousMedium::RelativePermeability::_saturation_r.
|
private |
Minimum relative permeability.
Definition at line 67 of file WettingPhaseVanGenuchten.h.
Referenced by getValue().
|
private |
Exponent m, m in [0, 1], n=1/(1-m).
Definition at line 66 of file WettingPhaseVanGenuchten.h.
Referenced by getdValue(), and getValue().