https://mooseframework.inl.gov
porous_flow
src
utils
PorousFlowRogersStallybrassClements.C
Go to the documentation of this file.
1
//* This file is part of the MOOSE framework
2
//* https://mooseframework.inl.gov
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 "
PorousFlowRogersStallybrassClements.h
"
11
12
namespace
PorousFlowRogersStallybrassClements
13
{
14
Real
15
effectiveSaturation
(Real pc, Real shift, Real scale)
16
{
17
Real
x
= (pc - shift) /
scale
;
18
Real
ex = std::exp(
x
);
19
return
std::pow
(1.0 + ex, -0.5);
20
}
21
22
Real
23
dEffectiveSaturation
(Real pc, Real shift, Real scale)
24
{
25
Real
x
= (pc - shift) /
scale
;
26
Real
ex = std::exp(
x
);
27
return
-0.5 * ex *
std::pow
(1.0 + ex, -1.5) /
scale
;
28
}
29
30
Real
31
d2EffectiveSaturation
(Real pc, Real shift, Real scale)
32
{
33
Real
x
= (pc - shift) /
scale
;
34
Real
ex = std::exp(
x
);
35
return
(0.75 * ex * ex *
std::pow
(1.0 + ex, -2.5) - 0.5 * ex *
std::pow
(1.0 + ex, -1.5)) /
scale
/
36
scale
;
37
}
38
}
PorousFlowRogersStallybrassClements::dEffectiveSaturation
Real dEffectiveSaturation(Real pc, Real shift, Real scale)
Derivative of effective saturation wrt capillary pressure.
Definition:
PorousFlowRogersStallybrassClements.C:23
scale
void scale(MeshBase &mesh, const Real xs, const Real ys=0., const Real zs=0.)
x
const std::vector< double > x
Definition:
EquilibriumConstantFitTest.C:17
Real
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
PorousFlowRogersStallybrassClements
Rogers-Stallybrass-Clements version of effective saturation as a function of capillary pressure...
Definition:
PorousFlowRogersStallybrassClements.h:22
PorousFlowRogersStallybrassClements::d2EffectiveSaturation
Real d2EffectiveSaturation(Real pc, Real shift, Real scale)
Second derivative of effective saturation wrt capillary pressure.
Definition:
PorousFlowRogersStallybrassClements.C:31
PorousFlowRogersStallybrassClements::effectiveSaturation
Real effectiveSaturation(Real pc, Real shift, Real scale)
Effective saturation as a function of capillary pressure.
Definition:
PorousFlowRogersStallybrassClements.C:15
std::pow
MooseUnits pow(const MooseUnits &, int)
PorousFlowRogersStallybrassClements.h
Generated on Thu Jul 17 2025 01:44:23 for https://mooseframework.inl.gov by
1.8.14