My Project
|
Implementation of a tabulated, piecewise linear capillary pressure law. More...
#include <PiecewiseLinearTwoPhaseMaterial.hpp>
Static Public Member Functions | |
template<class Container , class FluidState > | |
static void | capillaryPressures (Container &values, const Params ¶ms, const FluidState &fs) |
The capillary pressure-saturation curve. | |
template<class Container , class FluidState > | |
static void | saturations (Container &, const Params &, const FluidState &) |
The saturations of the fluid phases starting from their pressure differences. | |
template<class Container , class FluidState > | |
static void | relativePermeabilities (Container &values, const Params ¶ms, const FluidState &fs) |
The relative permeabilities. | |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | pcnw (const Params ¶ms, const FluidState &fs) |
The capillary pressure-saturation curve. | |
template<class Evaluation > | |
static Evaluation | twoPhaseSatPcnw (const Params ¶ms, const Evaluation &Sw) |
The saturation-capillary pressure curve. | |
template<class Evaluation > | |
static Evaluation | twoPhaseSatPcnwInv (const Params ¶ms, const Evaluation &pcnw) |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | Sw (const Params &, const FluidState &) |
The saturation-capillary pressure curve. | |
template<class Evaluation > | |
static Evaluation | twoPhaseSatSw (const Params &, const Evaluation &) |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | Sn (const Params ¶ms, const FluidState &fs) |
Calculate the non-wetting phase saturations depending on the phase pressures. | |
template<class Evaluation > | |
static Evaluation | twoPhaseSatSn (const Params ¶ms, const Evaluation &pC) |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | krw (const Params ¶ms, const FluidState &fs) |
The relative permeability for the wetting phase of the porous medium. | |
template<class Evaluation > | |
static Evaluation | twoPhaseSatKrw (const Params ¶ms, const Evaluation &Sw) |
template<class Evaluation > | |
static Evaluation | twoPhaseSatKrwInv (const Params ¶ms, const Evaluation &krw) |
template<class FluidState , class Evaluation = typename FluidState::Scalar> | |
static Evaluation | krn (const Params ¶ms, const FluidState &fs) |
The relative permeability for the non-wetting phase of the porous medium. | |
template<class Evaluation > | |
static Evaluation | twoPhaseSatKrn (const Params ¶ms, const Evaluation &Sw) |
template<class Evaluation > | |
static Evaluation | twoPhaseSatKrnInv (const Params ¶ms, const Evaluation &krn) |
template<class Evaluation > | |
static size_t | findSegmentIndex (const ValueVector &xValues, const Evaluation &x) |
template<class Evaluation > | |
static size_t | findSegmentIndexDescending (const ValueVector &xValues, const Evaluation &x) |
template<class Evaluation > | |
static Evaluation | eval (const ValueVector &xValues, const ValueVector &yValues, const Evaluation &x, unsigned segIdx) |
Implementation of a tabulated, piecewise linear capillary pressure law.
It would be equally possible to use cubic splines, but since the ECLIPSE reservoir simulator uses linear interpolation for capillary pressure and relperm curves, we do the same.