www.mooseframework.org
PorousFlowFLACrelperm.C
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #include "PorousFlowFLACrelperm.h"
11 
12 namespace PorousFlowFLACrelperm
13 {
14 Real
15 relativePermeability(Real seff, Real m)
16 {
17  if (seff <= 0.0)
18  return 0.0;
19  else if (seff >= 1.0)
20  return 1.0;
21  return (1.0 + m) * std::pow(seff, m) - m * std::pow(seff, m + 1.0);
22 }
23 
24 Real
25 dRelativePermeability(Real seff, Real m)
26 {
27  if (seff <= 0.0 || seff >= 1.0)
28  return 0.0;
29  return (1.0 + m) * m * std::pow(seff, m - 1.0) - m * (m + 1.0) * std::pow(seff, m);
30 }
31 
32 Real
33 d2RelativePermeability(Real seff, Real m)
34 {
35  if (seff <= 0.0 || seff >= 1.0)
36  return 0.0;
37  return (1.0 + m) * m * (m - 1.0) * std::pow(seff, m - 2.0) -
38  m * (m + 1.0) * m * std::pow(seff, m - 1.0);
39 }
40 }
pow
ExpressionBuilder::EBTerm pow(const ExpressionBuilder::EBTerm &left, T exponent)
Definition: ExpressionBuilder.h:673
PorousFlowFLACrelperm
FLAC inspired relative permeability relationship.
Definition: PorousFlowFLACrelperm.h:18
PorousFlowFLACrelperm.h
PorousFlowFLACrelperm::dRelativePermeability
Real dRelativePermeability(Real seff, Real m)
Derivative of relative permeability with respect to effective saturation.
Definition: PorousFlowFLACrelperm.C:25
PorousFlowFLACrelperm::d2RelativePermeability
Real d2RelativePermeability(Real seff, Real m)
Second derivative of relative permeability with respect to effective saturation.
Definition: PorousFlowFLACrelperm.C:33
PorousFlowFLACrelperm::relativePermeability
Real relativePermeability(Real seff, Real m)
Relative permeability as a function of effective saturation.
Definition: PorousFlowFLACrelperm.C:15