26#ifndef DUMUX_PNM_THRESHOLD_CAPILLARY_PRESSURES_HH
27#define DUMUX_PNM_THRESHOLD_CAPILLARY_PRESSURES_HH
36 template<
class Scalar>
37 static constexpr Scalar
pcSnapoff(
const Scalar surfaceTension,
38 const Scalar contactAngle,
39 const Scalar inscribedRadius)
noexcept
43 const Scalar theta = contactAngle;
44 const Scalar cosTheta = std::cos(theta);
45 const Scalar sinTheta = std::sin(theta);
46 return surfaceTension / inscribedRadius * (cosTheta - sinTheta);
54 template<
class Scalar>
55 static constexpr Scalar
pcEntry(
const Scalar surfaceTension,
56 const Scalar contactAngle,
57 const Scalar inscribedRadius,
63 const Scalar theta = contactAngle;
64 const Scalar cosTheta = cos(theta);
65 const Scalar sinTheta = sin(theta);
67 const Scalar D = M_PI - 3*theta + 3*sinTheta*cosTheta - (cosTheta*cosTheta) / (4*
shapeFactor);
69 return surfaceTension / inscribedRadius * cosTheta * (1 + 2*sqrt(M_PI*
shapeFactor)) * F;
Definition: discretization/porenetwork/fvelementgeometry.hh:34
Scalar shapeFactor(Shape shape, const Scalar inscribedRadius)
Returns the value of the shape factor for a given shape.
Definition: throatproperties.hh:161
Definition: thresholdcapillarypressures.hh:34
static constexpr Scalar pcSnapoff(const Scalar surfaceTension, const Scalar contactAngle, const Scalar inscribedRadius) noexcept
The snap-off capillary pressure of a pore throat.
Definition: thresholdcapillarypressures.hh:37
static constexpr Scalar pcEntry(const Scalar surfaceTension, const Scalar contactAngle, const Scalar inscribedRadius, const Scalar shapeFactor) noexcept
The entry capillary pressure of a pore throat.
Definition: thresholdcapillarypressures.hh:55