Revert "Revert "Add support for keywords (WVIT+GVIR+GVIT) ""
This commit is contained in:
@@ -633,6 +633,8 @@ static const std::unordered_map< std::string, ofun > funs = {
|
||||
{ "WOIT", mul( rate< rt::oil, injector >, duration ) },
|
||||
{ "WGIT", mul( rate< rt::gas, injector >, duration ) },
|
||||
{ "WNIT", mul( rate< rt::solvent, injector >, duration ) },
|
||||
{ "WVIT", mul( sum( sum( rate< rt::reservoir_water, injector >, rate< rt::reservoir_oil, injector > ),
|
||||
rate< rt::reservoir_gas, injector > ), duration ) },
|
||||
|
||||
{ "WWPR", rate< rt::wat, producer > },
|
||||
{ "WOPR", rate< rt::oil, producer > },
|
||||
@@ -675,10 +677,14 @@ static const std::unordered_map< std::string, ofun > funs = {
|
||||
{ "GOIR", rate< rt::oil, injector > },
|
||||
{ "GGIR", rate< rt::gas, injector > },
|
||||
{ "GNIR", rate< rt::solvent, injector > },
|
||||
{ "GVIR", sum( sum( rate< rt::reservoir_water, injector >, rate< rt::reservoir_oil, injector > ),
|
||||
rate< rt::reservoir_gas, injector > ) },
|
||||
{ "GWIT", mul( rate< rt::wat, injector >, duration ) },
|
||||
{ "GOIT", mul( rate< rt::oil, injector >, duration ) },
|
||||
{ "GGIT", mul( rate< rt::gas, injector >, duration ) },
|
||||
{ "GNIT", mul( rate< rt::solvent, injector >, duration ) },
|
||||
{ "GVIT", mul( sum( sum( rate< rt::reservoir_water, injector >, rate< rt::reservoir_oil, injector > ),
|
||||
rate< rt::reservoir_gas, injector > ), duration ) },
|
||||
|
||||
{ "GWPR", rate< rt::wat, producer > },
|
||||
{ "GOPR", rate< rt::oil, producer > },
|
||||
|
||||
@@ -371,9 +371,13 @@ BOOST_AUTO_TEST_CASE(well_keywords) {
|
||||
BOOST_CHECK_CLOSE( 30.0, ecl_sum_get_well_var( resp, 1, "W_3", "WWIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 30.2, ecl_sum_get_well_var( resp, 1, "W_3", "WGIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 30.3, ecl_sum_get_well_var( resp, 1, "W_3", "WNIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( (30.6 + 30.7 + 30.8),
|
||||
ecl_sum_get_well_var( resp, 1, "W_3", "WVIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 2 * 30.0, ecl_sum_get_well_var( resp, 2, "W_3", "WWIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 2 * 30.2, ecl_sum_get_well_var( resp, 2, "W_3", "WGIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 2 * 30.3, ecl_sum_get_well_var( resp, 2, "W_3", "WNIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 2* (30.6 + 30.7 + 30.8),
|
||||
ecl_sum_get_well_var( resp, 2, "W_3", "WVIT" ), 1e-5 );
|
||||
|
||||
/* Injection rates (history) */
|
||||
BOOST_CHECK_CLOSE( 30.0, ecl_sum_get_well_var( resp, 1, "W_3", "WWIRH" ), 1e-5 );
|
||||
@@ -514,14 +518,20 @@ BOOST_AUTO_TEST_CASE(group_keywords) {
|
||||
BOOST_CHECK_CLOSE( 30.0, ecl_sum_get_group_var( resp, 1, "G_2", "GWIR" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 30.2, ecl_sum_get_group_var( resp, 1, "G_2", "GGIR" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 30.3, ecl_sum_get_group_var( resp, 1, "G_2", "GNIR" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( (30.6 + 30.7 + 30.8),
|
||||
ecl_sum_get_group_var( resp, 1, "G_2", "GVIR" ), 1e-5 );
|
||||
|
||||
/* Injection totals */
|
||||
BOOST_CHECK_CLOSE( 30.0, ecl_sum_get_group_var( resp, 1, "G_2", "GWIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 30.2, ecl_sum_get_group_var( resp, 1, "G_2", "GGIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 30.3, ecl_sum_get_group_var( resp, 1, "G_2", "GNIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( (30.6 + 30.7 + 30.8),
|
||||
ecl_sum_get_group_var( resp, 1, "G_2", "GVIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 2 * 30.0, ecl_sum_get_group_var( resp, 2, "G_2", "GWIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 2 * 30.2, ecl_sum_get_group_var( resp, 2, "G_2", "GGIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 2 * 30.3, ecl_sum_get_group_var( resp, 2, "G_2", "GNIT" ), 1e-5 );
|
||||
BOOST_CHECK_CLOSE( 2 * (30.6 + 30.7 + 30.8),
|
||||
ecl_sum_get_group_var( resp, 2, "G_2", "GVIT" ), 1e-5 );
|
||||
|
||||
/* Injection totals (history) */
|
||||
BOOST_CHECK_CLOSE( 30.0, ecl_sum_get_group_var( resp, 1, "G_2", "GWITH" ), 1e-5 );
|
||||
|
||||
Reference in New Issue
Block a user