www.mooseframework.org
PorousFlowFLACrelperm.C
Go to the documentation of this file.
1 /****************************************************************/
2 /* MOOSE - Multiphysics Object Oriented Simulation Environment */
3 /* */
4 /* All contents are licensed under LGPL V2.1 */
5 /* See LICENSE for full restrictions */
6 /****************************************************************/
7 
9 
10 namespace PorousFlowFLACrelperm
11 {
12 Real
13 relativePermeability(Real seff, Real m)
14 {
15  if (seff <= 0.0)
16  return 0.0;
17  else if (seff >= 1.0)
18  return 1.0;
19  return (1.0 + m) * std::pow(seff, m) - m * std::pow(seff, m + 1.0);
20 }
21 
22 Real
23 dRelativePermeability(Real seff, Real m)
24 {
25  if (seff <= 0.0 || seff >= 1.0)
26  return 0.0;
27  return (1.0 + m) * m * std::pow(seff, m - 1.0) - m * (m + 1.0) * std::pow(seff, m);
28 }
29 
30 Real
31 d2RelativePermeability(Real seff, Real m)
32 {
33  if (seff <= 0.0 || seff >= 1.0)
34  return 0.0;
35  return (1.0 + m) * m * (m - 1.0) * std::pow(seff, m - 2.0) -
36  m * (m + 1.0) * m * std::pow(seff, m - 1.0);
37 }
38 }
Real d2RelativePermeability(Real seff, Real m)
Second derivative of relative permeability with respect to effective saturation.
Real dRelativePermeability(Real seff, Real m)
Derivative of relative permeability with respect to effective saturation.
FLAC inspired relative permeability relationship.
Real relativePermeability(Real seff, Real m)
Relative permeability as a function of effective saturation.
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)