3D Properties: Hook Up adjustSOGCRwithSWL for SGOF

This commit calls the SOGCR post-processor hook if the simulation
run uses SGOF.  In this case we need to subtract (scaled) connate
water saturations from defaulted SOGCR values.

This revealed a problem in one of the unit tests which used the
incorrect critical oil saturation due to a missing SGOF record.
This commit is contained in:
Bård Skaflestad
2019-06-27 20:17:13 +02:00
parent 7494990611
commit 10890cc793
2 changed files with 17 additions and 10 deletions

View File

@@ -558,6 +558,13 @@ namespace Opm {
true );
}
if (tableManager.hasTables("SGOF")) {
// Run uses SGOF. Install a keyword/data post-processor to
// subtract scaled connate water from defaulted *SOGCR*
// (critical oil saturation in gas/oil system) end points.
this->adjustSOGCRwithSWL();
}
processGridProperties(deck, eclipseGrid);
}

View File

@@ -69,17 +69,17 @@ BOOST_AUTO_TEST_CASE(SaturationFunctionFamilyTests) {
const char *family1 =
"SWOF\n"
" .2 .0 1.0 .0\n"
" .3 .0 .8 .0\n"
" .5 .5 .5 .0\n"
" .8 .8 .0 .0\n"
" 1.0 1.0 .0 .0 /\n"
" .2 .0 1.0 .0\n" // So = 0.8
" .3 .0 .8 .0\n" // So = 0.7
" .5 .5 .5 .0\n" // So = 0.5
" .8 .8 .0 .0\n" // So = 0.2
" 1.0 1.0 .0 .0 /\n" // So = 0.0
"SGOF\n"
" .0 .0 1.0 .0\n"
" .1 .0 .3 .0\n"
" .5 .5 .1 .0\n"
" .7 .8 .0 .0\n"
" .8 1.0 .0 .0/\n";
" .0 .0 1.0 .0\n" // So = 0.8
" .1 .0 .3 .0\n" // So = 0.7
" .3 1* .1 .0\n" // So = 0.5
" .5 .5 .0 .0\n" // So = 0.3
" .8 1.0 .0 .0/\n"; // So = 0.0
const char *family2 =
"SWFN\n"