https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Functions
PorousFlowFLACrelperm Namespace Reference

FLAC inspired relative permeability relationship. More...

Functions

template<typename T >
T relativePermeability (const T &seff, Real m)
 Relative permeability as a function of effective saturation.
 
Real dRelativePermeability (Real seff, Real m)
 Derivative of relative permeability with respect to effective saturation.
 
Real d2RelativePermeability (Real seff, Real m)
 Second derivative of relative permeability with respect to effective saturation.
 

Detailed Description

FLAC inspired relative permeability relationship.

Function Documentation

◆ d2RelativePermeability()

Real PorousFlowFLACrelperm::d2RelativePermeability ( Real  seff,
Real  m 
)

Second derivative of relative permeability with respect to effective saturation.

Parameters
seffeffective saturation
mvan Genuchten exponent
Returns
second derivative of relative permeability wrt effective saturation

Definition at line 23 of file PorousFlowFLACrelperm.C.

24{
25 if (seff <= 0.0 || seff >= 1.0)
26 return 0.0;
27 return (1.0 + m) * m * (m - 1.0) * std::pow(seff, m - 2.0) -
28 m * (m + 1.0) * m * std::pow(seff, m - 1.0);
29}

Referenced by TEST().

◆ dRelativePermeability()

Real PorousFlowFLACrelperm::dRelativePermeability ( Real  seff,
Real  m 
)

Derivative of relative permeability with respect to effective saturation.

Parameters
seffeffective saturation
mvan Genuchten exponent
Returns
derivative of relative permeability wrt effective saturation

Definition at line 15 of file PorousFlowFLACrelperm.C.

16{
17 if (seff <= 0.0 || seff >= 1.0)
18 return 0.0;
19 return (1.0 + m) * m * std::pow(seff, m - 1.0) - m * (m + 1.0) * std::pow(seff, m);
20}

Referenced by PorousFlowRelativePermeabilityFLACTempl< is_ad >::dRelativePermeability(), TEST(), TEST(), and TEST().

◆ relativePermeability()

template<typename T >
T PorousFlowFLACrelperm::relativePermeability ( const T seff,
Real  m 
)

Relative permeability as a function of effective saturation.

Parameters
seffeffective saturation
mvan Genuchten exponent
Returns
relative permeability

Definition at line 28 of file PorousFlowFLACrelperm.h.

29{
30 if (MetaPhysicL::raw_value(seff) <= 0.0)
31 return 0.0;
32 else if (MetaPhysicL::raw_value(seff) >= 1.0)
33 return 1.0;
34
35 using std::pow;
36 return (1.0 + m) * pow(seff, m) - m * pow(seff, m + 1.0);
37}
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
auto raw_value(const Eigen::Map< T > &in)

Referenced by PorousFlowRelativePermeabilityFLACTempl< is_ad >::relativePermeability(), TEST(), TEST(), and TEST().