20#ifndef THREE_POINT_HORIZONTAL_CONSISTENCY_CHECKS_HPP_INCLUDED
21#define THREE_POINT_HORIZONTAL_CONSISTENCY_CHECKS_HPP_INCLUDED
23#include <opm/simulators/utils/satfunc/PhaseCheckBase.hpp>
24#include <opm/simulators/utils/satfunc/SatfuncConsistencyChecks.hpp>
29namespace Opm::Satfunc::PhaseChecks::ThreePointHorizontal {
37 template <
typename Scalar>
50 exportedCheckValues[0] = this->swl_;
51 exportedCheckValues[1] = this->sogcr_;
52 exportedCheckValues[2] = this->sgcr_;
53 exportedCheckValues[3] = Scalar{1} - (this->sogcr_ + this->swl_);
54 exportedCheckValues[4] = this->sgu_;
60 return {
"Mobile displacing oil in three point "
61 "horizontally scaled gas/oil system" };
67 return {
"SGCR < 1-SOGCR-SWL < SGU" };
79 headers[3] =
"1-SOGCR-SWL";
112 template <
typename Scalar>
125 exportedCheckValues[0] = this->sgl_;
126 exportedCheckValues[1] = this->sowcr_;
127 exportedCheckValues[2] = this->swcr_;
128 exportedCheckValues[3] = Scalar{1} - (this->sowcr_ + this->sgl_);
129 exportedCheckValues[4] = this->swu_;
135 return {
"Mobile displacing oil in three point "
136 "horizontally scaled oil/water system" };
142 return {
"SWCR < 1-SOWCR-SGL < SWU" };
152 headers[1] =
"SOWCR";
154 headers[3] =
"1-SOWCR-SGL";
Base class for all phase saturation function consistency checks.
Definition PhaseCheckBase.hpp:35
Verify that critical saturation of displacing phase (oil/liquid) is strictly between critical and max...
Definition ThreePointHorizontalConsistencyChecks.hpp:39
std::string description() const override
Descriptive textual summary of this check.
Definition ThreePointHorizontalConsistencyChecks.hpp:58
std::string condition() const override
Textual representation of the consistency condition.
Definition ThreePointHorizontalConsistencyChecks.hpp:65
void columnNames(std::string *headers) const override
Retrieve names of the exported check values.
Definition ThreePointHorizontalConsistencyChecks.hpp:74
void exportCheckValues(Scalar *exportedCheckValues) const override
Get a linearised copy of the Scalar values involved in the check.
Definition ThreePointHorizontalConsistencyChecks.hpp:48
std::size_t numExportedCheckValues() const override
Number of Scalar values involved in the check.
Definition ThreePointHorizontalConsistencyChecks.hpp:42
Verify that critical saturation of displacing phase (oil) is strictly between critical and maximum wa...
Definition ThreePointHorizontalConsistencyChecks.hpp:114
std::string description() const override
Descriptive textual summary of this check.
Definition ThreePointHorizontalConsistencyChecks.hpp:133
void columnNames(std::string *headers) const override
Retrieve names of the exported check values.
Definition ThreePointHorizontalConsistencyChecks.hpp:149
void exportCheckValues(Scalar *exportedCheckValues) const override
Get a linearised copy of the Scalar values involved in the check.
Definition ThreePointHorizontalConsistencyChecks.hpp:123
std::size_t numExportedCheckValues() const override
Number of Scalar values involved in the check.
Definition ThreePointHorizontalConsistencyChecks.hpp:117
std::string condition() const override
Textual representation of the consistency condition.
Definition ThreePointHorizontalConsistencyChecks.hpp:140
Definition SatfuncConsistencyChecks.hpp:35