Material to calculate van Genuchten-type relative permeability of an arbitrary phase given the saturation and exponent of that phase. More...
#include <PorousFlowRelativePermeabilityVG.h>
Public Member Functions | |
PorousFlowRelativePermeabilityVG (const InputParameters ¶meters) | |
Protected Member Functions | |
virtual Real | relativePermeability (Real seff) const override |
Relative permeability equation (must be overriden in derived class) More... | |
virtual Real | dRelativePermeability (Real seff) const override |
Derivative of relative permeability with respect to effective saturation. More... | |
virtual void | computeQpProperties () override |
virtual Real | effectiveSaturation (Real saturation) const |
Effective saturation of fluid phase. More... | |
Protected Attributes | |
const Real | _m |
van Genuchten exponent m for the specified phase More... | |
const bool | _wetting |
Whether to use the wetting or non-wetting van Genuchten expression. More... | |
const Real | _cut |
Start of cubic smoothing. More... | |
const Real | _cub0 |
Parameter of the cubic. More... | |
const Real | _cub1 |
Parameter of the cubic. More... | |
const Real | _cub2 |
Parameter of the cubic. More... | |
const Real | _cub3 |
Parameter of the cubic. More... | |
const Real | _scaling |
Relative permeability is multiplied by this quantity. More... | |
const MaterialProperty< std::vector< Real > > & | _saturation |
Saturation material property. More... | |
MaterialProperty< Real > & | _relative_permeability |
Relative permeability material property. More... | |
MaterialProperty< Real > & | _drelative_permeability_ds |
Derivative of relative permeability wrt phase saturation. More... | |
const Real | _s_res |
Residual saturation of specified phase. More... | |
const Real | _sum_s_res |
Sum of residual saturations over all phases. More... | |
const Real | _dseff_ds |
Derivative of effective saturation with respect to saturation. More... | |
const unsigned int | _phase_num |
Phase number of fluid. More... | |
const std::string | _phase |
Stringified fluid phase number. More... | |
Material to calculate van Genuchten-type relative permeability of an arbitrary phase given the saturation and exponent of that phase.
From van Genuchten, M. Th., A closed for equation for predicting the hydraulic conductivity of unsaturated soils, Soil Sci. Soc., 44, 892-898 (1980)
Optionally this relative permeability may be smoothed with a cubic near seff=1 The relative permeability is a cubic for seff>_cut. The cubic is chosen so that the derivative is zero for seff=1, and that the derivative and value matches the van Genuchten expression for seff=_cut.
Definition at line 32 of file PorousFlowRelativePermeabilityVG.h.
PorousFlowRelativePermeabilityVG::PorousFlowRelativePermeabilityVG | ( | const InputParameters & | parameters | ) |
Definition at line 40 of file PorousFlowRelativePermeabilityVG.C.
|
overrideprotectedvirtualinherited |
Definition at line 59 of file PorousFlowRelativePermeabilityBase.C.
|
overrideprotectedvirtual |
Derivative of relative permeability with respect to effective saturation.
seff | effective saturation |
Implements PorousFlowRelativePermeabilityBase.
Definition at line 83 of file PorousFlowRelativePermeabilityVG.C.
|
protectedvirtualinherited |
Effective saturation of fluid phase.
saturation | true saturation |
Definition at line 88 of file PorousFlowRelativePermeabilityBase.C.
Referenced by PorousFlowRelativePermeabilityBase::computeQpProperties().
|
overrideprotectedvirtual |
Relative permeability equation (must be overriden in derived class)
seff | effective saturation |
Implements PorousFlowRelativePermeabilityBase.
Definition at line 68 of file PorousFlowRelativePermeabilityVG.C.
|
protected |
Parameter of the cubic.
Definition at line 51 of file PorousFlowRelativePermeabilityVG.h.
Referenced by relativePermeability().
|
protected |
Parameter of the cubic.
Definition at line 53 of file PorousFlowRelativePermeabilityVG.h.
Referenced by dRelativePermeability(), and relativePermeability().
|
protected |
Parameter of the cubic.
Definition at line 55 of file PorousFlowRelativePermeabilityVG.h.
Referenced by dRelativePermeability(), and relativePermeability().
|
protected |
Parameter of the cubic.
Definition at line 57 of file PorousFlowRelativePermeabilityVG.h.
Referenced by dRelativePermeability(), and relativePermeability().
|
protected |
Start of cubic smoothing.
Definition at line 48 of file PorousFlowRelativePermeabilityVG.h.
Referenced by dRelativePermeability(), and relativePermeability().
|
protectedinherited |
Derivative of relative permeability wrt phase saturation.
Definition at line 63 of file PorousFlowRelativePermeabilityBase.h.
Referenced by PorousFlowRelativePermeabilityBase::computeQpProperties().
|
protectedinherited |
Derivative of effective saturation with respect to saturation.
Definition at line 72 of file PorousFlowRelativePermeabilityBase.h.
Referenced by PorousFlowRelativePermeabilityBase::computeQpProperties().
|
protected |
van Genuchten exponent m for the specified phase
Definition at line 42 of file PorousFlowRelativePermeabilityVG.h.
Referenced by dRelativePermeability(), and relativePermeability().
|
protectedinherited |
Stringified fluid phase number.
Definition at line 37 of file PorousFlowMaterialBase.h.
|
protectedinherited |
Phase number of fluid.
Definition at line 34 of file PorousFlowMaterialBase.h.
Referenced by PorousFlowRelativePermeabilityBase::computeQpProperties(), PorousFlowBrine::computeQpProperties(), PorousFlowSingleComponentFluid::computeQpProperties(), PorousFlowBrine::initQpStatefulProperties(), PorousFlowSingleComponentFluid::initQpStatefulProperties(), and PorousFlowMaterialBase::PorousFlowMaterialBase().
|
protectedinherited |
Relative permeability material property.
Definition at line 60 of file PorousFlowRelativePermeabilityBase.h.
Referenced by PorousFlowRelativePermeabilityBase::computeQpProperties().
|
protectedinherited |
Residual saturation of specified phase.
Definition at line 66 of file PorousFlowRelativePermeabilityBase.h.
Referenced by PorousFlowRelativePermeabilityBase::effectiveSaturation(), and PorousFlowRelativePermeabilityBase::PorousFlowRelativePermeabilityBase().
|
protectedinherited |
Saturation material property.
Definition at line 57 of file PorousFlowRelativePermeabilityBase.h.
Referenced by PorousFlowRelativePermeabilityBase::computeQpProperties().
|
protectedinherited |
Relative permeability is multiplied by this quantity.
Definition at line 54 of file PorousFlowRelativePermeabilityBase.h.
Referenced by PorousFlowRelativePermeabilityBase::computeQpProperties().
|
protectedinherited |
Sum of residual saturations over all phases.
Definition at line 69 of file PorousFlowRelativePermeabilityBase.h.
Referenced by PorousFlowRelativePermeabilityBase::effectiveSaturation(), and PorousFlowRelativePermeabilityBase::PorousFlowRelativePermeabilityBase().
|
protected |
Whether to use the wetting or non-wetting van Genuchten expression.
Definition at line 45 of file PorousFlowRelativePermeabilityVG.h.
Referenced by dRelativePermeability(), and relativePermeability().