Skip to content

Commit

Permalink
Add Top Level Container for Saturation Function Consistency Checks
Browse files Browse the repository at this point in the history
This commit introduces a new top-level "manager" for all saturation
function consistency checks.  This component associates collections
of saturation function curves with per-cell or per-region end-point
definitions and provides an interface to run all checks for all
interior entities (i.e., active cells) in a DUNE grid view.  We form
one set of SatfuncConsistencyChecks objects for each
SatfuncCheckPointInterface<> object, thereby enabling running the
same set of consistency checks for both the unscaled, tabulated,
per-region saturation functions and the per-cell scaled saturation
functions.  The latter is executed only if the run enables end-point
scaling for the saturation functions while the former is executed
only if the run does not enable end-point scaling.

At present we're limited to reversible and non-directional
saturation functions for the drainage process only, but those
restrictions will be lifted in due time.

As an aid to enabling the pertinent individual checks, we add a
private factory function which considers the run's active phases and
whether or not the run uses the alternative, three-point horizontal
scaling method ("SCALECRS = YES").
  • Loading branch information
bska committed Sep 26, 2024
1 parent 265fed9 commit 1cfebf7
Show file tree
Hide file tree
Showing 3 changed files with 862 additions and 0 deletions.
2 changes: 2 additions & 0 deletions CMakeLists_files.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -221,6 +221,7 @@ if (HAVE_ECL_INPUT)
opm/simulators/utils/satfunc/GasPhaseConsistencyChecks.cpp
opm/simulators/utils/satfunc/OilPhaseConsistencyChecks.cpp
opm/simulators/utils/satfunc/PhaseCheckBase.cpp
opm/simulators/utils/satfunc/SatfuncConsistencyCheckManager.cpp
opm/simulators/utils/satfunc/SatfuncConsistencyChecks.cpp
opm/simulators/utils/satfunc/ScaledSatfuncCheckPoint.cpp
opm/simulators/utils/satfunc/ThreePointHorizontalConsistencyChecks.cpp
Expand Down Expand Up @@ -1042,6 +1043,7 @@ if (HAVE_ECL_INPUT)
opm/simulators/utils/satfunc/OilPhaseConsistencyChecks.hpp
opm/simulators/utils/satfunc/PhaseCheckBase.hpp
opm/simulators/utils/satfunc/SatfuncCheckPointInterface.hpp
opm/simulators/utils/satfunc/SatfuncConsistencyCheckManager.hpp
opm/simulators/utils/satfunc/SatfuncConsistencyChecks.hpp
opm/simulators/utils/satfunc/ScaledSatfuncCheckPoint.hpp
opm/simulators/utils/satfunc/ThreePointHorizontalConsistencyChecks.hpp
Expand Down
Loading

0 comments on commit 1cfebf7

Please sign in to comment.