Add Well and Group Level Efficiency Factor Summary Vectors
This commit adds support for the GEFF, WEFF, and WEFFG summary vectors that report the efficiency factors at the well (WEFAC) and group (GEFAC) levels. WEFFG additionally accounts for efficiency factors in a well's superior groups in the group tree.
This commit is contained in:
parent
7b31522fdd
commit
0a287ca914
@ -1577,6 +1577,73 @@ quantity well_guiderate(const fn_args& args)
|
|||||||
return guiderate_value<i>(xwPos->second.guide_rates);
|
return guiderate_value<i>(xwPos->second.guide_rates);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
quantity well_efficiency_factor(const fn_args& args)
|
||||||
|
{
|
||||||
|
const auto zero = quantity { 0.0, measure::identity };
|
||||||
|
|
||||||
|
if (args.schedule_wells.empty()) {
|
||||||
|
return zero;
|
||||||
|
}
|
||||||
|
|
||||||
|
const auto* well = args.schedule_wells.front();
|
||||||
|
|
||||||
|
auto xwPos = args.wells.find(well->name());
|
||||||
|
if ((xwPos == args.wells.end()) ||
|
||||||
|
(xwPos->second.dynamicStatus == Opm::Well::Status::SHUT))
|
||||||
|
{
|
||||||
|
// Non-flowing wells have a zero efficiency factor
|
||||||
|
return zero;
|
||||||
|
}
|
||||||
|
|
||||||
|
return { well->getEfficiencyFactor(), measure::identity };
|
||||||
|
}
|
||||||
|
|
||||||
|
quantity well_efficiency_factor_grouptree(const fn_args& args)
|
||||||
|
{
|
||||||
|
const auto zero = quantity { 0.0, measure::identity };
|
||||||
|
|
||||||
|
if (args.schedule_wells.empty()) {
|
||||||
|
return zero;
|
||||||
|
}
|
||||||
|
|
||||||
|
const auto* well = args.schedule_wells.front();
|
||||||
|
|
||||||
|
auto xwPos = args.wells.find(well->name());
|
||||||
|
if ((xwPos == args.wells.end()) ||
|
||||||
|
(xwPos->second.dynamicStatus == Opm::Well::Status::SHUT))
|
||||||
|
{
|
||||||
|
// Non-flowing wells have a zero efficiency factor
|
||||||
|
return zero;
|
||||||
|
}
|
||||||
|
|
||||||
|
auto factor = well->getEfficiencyFactor();
|
||||||
|
auto parent = well->groupName();
|
||||||
|
while (parent != "FIELD") {
|
||||||
|
const auto& grp = args.schedule[args.sim_step].groups(parent);
|
||||||
|
factor *= grp.getGroupEfficiencyFactor();
|
||||||
|
|
||||||
|
const auto prnt = grp.control_group();
|
||||||
|
parent = prnt.has_value() ? prnt.value() : "FIELD";
|
||||||
|
}
|
||||||
|
|
||||||
|
return { factor, measure::identity };
|
||||||
|
}
|
||||||
|
|
||||||
|
quantity group_efficiency_factor(const fn_args& args)
|
||||||
|
{
|
||||||
|
const auto zero = quantity { 0.0, measure::identity };
|
||||||
|
|
||||||
|
if (args.schedule_wells.empty()) {
|
||||||
|
return zero;
|
||||||
|
}
|
||||||
|
|
||||||
|
const auto gefac =
|
||||||
|
args.schedule[args.sim_step].groups(args.group_name)
|
||||||
|
.getGroupEfficiencyFactor();
|
||||||
|
|
||||||
|
return { gefac, measure::identity };
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* A small DSL, really poor man's function composition, to avoid massive
|
* A small DSL, really poor man's function composition, to avoid massive
|
||||||
* repetition when declaring the handlers for each individual keyword. bin_op
|
* repetition when declaring the handlers for each individual keyword. bin_op
|
||||||
@ -2117,6 +2184,11 @@ static const std::unordered_map< std::string, ofun > funs = {
|
|||||||
{ "WGPI", potential_rate< rt::well_potential_gas , false, true>},
|
{ "WGPI", potential_rate< rt::well_potential_gas , false, true>},
|
||||||
{ "WGIP", potential_rate< rt::well_potential_gas , false, true>}, // Alias for 'WGPI'
|
{ "WGIP", potential_rate< rt::well_potential_gas , false, true>}, // Alias for 'WGPI'
|
||||||
{ "ROEW", roew },
|
{ "ROEW", roew },
|
||||||
|
|
||||||
|
// Efficiency factors
|
||||||
|
{"GEFF" , group_efficiency_factor},
|
||||||
|
{"WEFF" , well_efficiency_factor},
|
||||||
|
{"WEFFG", well_efficiency_factor_grouptree},
|
||||||
};
|
};
|
||||||
|
|
||||||
static const std::unordered_map< std::string, Opm::UnitSystem::measure> single_values_units = {
|
static const std::unordered_map< std::string, Opm::UnitSystem::measure> single_values_units = {
|
||||||
|
@ -74,6 +74,10 @@ WOIR
|
|||||||
/
|
/
|
||||||
WOIT
|
WOIT
|
||||||
/
|
/
|
||||||
|
WEFF
|
||||||
|
/
|
||||||
|
WEFFG
|
||||||
|
/
|
||||||
|
|
||||||
GOPR
|
GOPR
|
||||||
/
|
/
|
||||||
@ -98,6 +102,8 @@ GGPI
|
|||||||
/
|
/
|
||||||
GWPI
|
GWPI
|
||||||
/
|
/
|
||||||
|
GEFF
|
||||||
|
/
|
||||||
|
|
||||||
FOPR
|
FOPR
|
||||||
|
|
||||||
|
@ -2293,6 +2293,12 @@ BOOST_AUTO_TEST_CASE(efficiency_factor) {
|
|||||||
BOOST_CHECK_CLOSE( 10.1, ecl_sum_get_well_var( resp, 1, "W_1", "WOPT" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 10.1, ecl_sum_get_well_var( resp, 1, "W_1", "WOPT" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 2 * 10.1, ecl_sum_get_well_var( resp, 2, "W_1", "WOPT" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 2 * 10.1, ecl_sum_get_well_var( resp, 2, "W_1", "WOPT" ), 1e-5 );
|
||||||
|
|
||||||
|
BOOST_CHECK_CLOSE( 1.0, ecl_sum_get_well_var( resp, 1, "W_1", "WEFF" ), 1.0e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 1.0, ecl_sum_get_well_var( resp, 2, "W_1", "WEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
|
BOOST_CHECK_CLOSE( 1.0, ecl_sum_get_well_var( resp, 1, "W_1", "WEFFG" ), 1.0e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 1.0, ecl_sum_get_well_var( resp, 2, "W_1", "WEFFG" ), 1.0e-5 );
|
||||||
|
|
||||||
BOOST_CHECK_CLOSE( 10.1, ecl_sum_get_well_var( resp, 1, "W_1", "WOPR" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 10.1, ecl_sum_get_well_var( resp, 1, "W_1", "WOPR" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 10.1, ecl_sum_get_well_var( resp, 1, "W_1", "WOPT" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 10.1, ecl_sum_get_well_var( resp, 1, "W_1", "WOPT" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 2 * 10.1, ecl_sum_get_well_var( resp, 2, "W_1", "WOPT" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 2 * 10.1, ecl_sum_get_well_var( resp, 2, "W_1", "WOPT" ), 1e-5 );
|
||||||
@ -2309,6 +2315,9 @@ BOOST_AUTO_TEST_CASE(efficiency_factor) {
|
|||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_1", "GWPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_1", "GWPI" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_1", "GGPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_1", "GGPI" ), 1e-5 );
|
||||||
|
|
||||||
|
BOOST_CHECK_CLOSE( 1.0, ecl_sum_get_group_var( resp, 1, "G_1", "GEFF" ), 1.0e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 1.0, ecl_sum_get_group_var( resp, 2, "G_1", "GEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
/* WEFAC 0.2 assigned to W_2.
|
/* WEFAC 0.2 assigned to W_2.
|
||||||
* W_2 assigned to group G2. GEFAC G2 = 0.01 */
|
* W_2 assigned to group G2. GEFAC G2 = 0.01 */
|
||||||
BOOST_CHECK_CLOSE( 20.1, ecl_sum_get_well_var( resp, 1, "W_2", "WOPR" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 20.1, ecl_sum_get_well_var( resp, 1, "W_2", "WOPR" ), 1e-5 );
|
||||||
@ -2317,6 +2326,12 @@ BOOST_AUTO_TEST_CASE(efficiency_factor) {
|
|||||||
BOOST_CHECK_CLOSE( 23.4, ecl_sum_get_well_connection_var( resp, 1, "W_2", "CVPR", 2, 1, 1 ), 1e-5 );
|
BOOST_CHECK_CLOSE( 23.4, ecl_sum_get_well_connection_var( resp, 1, "W_2", "CVPR", 2, 1, 1 ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 234.5, ecl_sum_get_well_connection_var( resp, 2, "W_2", "CVPR", 2, 1, 2 ), 1e-5 );
|
BOOST_CHECK_CLOSE( 234.5, ecl_sum_get_well_connection_var( resp, 2, "W_2", "CVPR", 2, 1, 2 ), 1e-5 );
|
||||||
|
|
||||||
|
BOOST_CHECK_CLOSE( 0.2, ecl_sum_get_well_var( resp, 1, "W_2", "WEFF" ), 1.0e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 0.2, ecl_sum_get_well_var( resp, 2, "W_2", "WEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
|
BOOST_CHECK_CLOSE( 0.2 * 0.01, ecl_sum_get_well_var( resp, 1, "W_2", "WEFFG" ), 1.0e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 0.2 * 0.01, ecl_sum_get_well_var( resp, 2, "W_2", "WEFFG" ), 1.0e-5 );
|
||||||
|
|
||||||
BOOST_CHECK_CLOSE( 23.4 * 0.2 * 0.01, ecl_sum_get_well_connection_var( resp, 1, "W_2", "CVPT", 2, 1, 1 ), 1e-5 );
|
BOOST_CHECK_CLOSE( 23.4 * 0.2 * 0.01, ecl_sum_get_well_connection_var( resp, 1, "W_2", "CVPT", 2, 1, 1 ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 2 * 234.5 * 0.2 * 0.01, ecl_sum_get_well_connection_var( resp, 2, "W_2", "CVPT", 2, 1, 2 ), 1e-5 );
|
BOOST_CHECK_CLOSE( 2 * 234.5 * 0.2 * 0.01, ecl_sum_get_well_connection_var( resp, 2, "W_2", "CVPT", 2, 1, 2 ), 1e-5 );
|
||||||
|
|
||||||
@ -2326,23 +2341,30 @@ BOOST_AUTO_TEST_CASE(efficiency_factor) {
|
|||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_2", "GWPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_2", "GWPI" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_2", "GGPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_2", "GGPI" ), 1e-5 );
|
||||||
|
|
||||||
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_2", "GWPI" ), 1e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_2", "GGPI" ), 1e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 0.01 , ecl_sum_get_group_var( resp, 1, "G_2", "GEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
BOOST_CHECK_CLOSE( -10.13 - (20.13 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 1, "G", "GWPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( -10.13 - (20.13 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 1, "G", "GWPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( -10.14 - (20.14 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 1, "G", "GOPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( -10.14 - (20.14 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 1, "G", "GOPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( -10.15 - (20.15 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 1, "G", "GGPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( -10.15 - (20.15 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 1, "G", "GGPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G", "GWPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G", "GWPI" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G", "GGPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G", "GGPI" ), 1e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 1.0 , ecl_sum_get_group_var( resp, 1, "G", "GEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
BOOST_CHECK_CLOSE( -20.13 * 0.2, ecl_sum_get_group_var( resp, 2, "G_2", "GWPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( -20.13 * 0.2, ecl_sum_get_group_var( resp, 2, "G_2", "GWPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( -20.14 * 0.2, ecl_sum_get_group_var( resp, 2, "G_2", "GOPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( -20.14 * 0.2, ecl_sum_get_group_var( resp, 2, "G_2", "GOPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( -20.15 * 0.2, ecl_sum_get_group_var( resp, 2, "G_2", "GGPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( -20.15 * 0.2, ecl_sum_get_group_var( resp, 2, "G_2", "GGPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_2", "GWPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_2", "GWPI" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_2", "GGPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_2", "GGPI" ), 1e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 0.01 , ecl_sum_get_group_var( resp, 2, "G_2", "GEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
BOOST_CHECK_CLOSE( -10.13 - (20.13 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 2, "G", "GWPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( -10.13 - (20.13 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 2, "G", "GWPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( -10.14 - (20.14 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 2, "G", "GOPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( -10.14 - (20.14 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 2, "G", "GOPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( -10.15 - (20.15 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 2, "G", "GGPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( -10.15 - (20.15 * 0.2 * 0.01), ecl_sum_get_group_var( resp, 2, "G", "GGPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G", "GWPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G", "GWPI" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G", "GGPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G", "GGPI" ), 1e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 1.0 , ecl_sum_get_group_var( resp, 2, "G", "GEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
/* WEFAC 0.3 assigned to W_3.
|
/* WEFAC 0.3 assigned to W_3.
|
||||||
* W_3 assigned to group G3. GEFAC G_3 = 0.02
|
* W_3 assigned to group G3. GEFAC G_3 = 0.02
|
||||||
@ -2351,6 +2373,12 @@ BOOST_AUTO_TEST_CASE(efficiency_factor) {
|
|||||||
|
|
||||||
BOOST_CHECK_CLOSE( 300.2 / 300.1, ecl_sum_get_well_connection_var( resp, 2, "W_3", "CGOR", 3, 1, 1 ), 1e-5 );
|
BOOST_CHECK_CLOSE( 300.2 / 300.1, ecl_sum_get_well_connection_var( resp, 2, "W_3", "CGOR", 3, 1, 1 ), 1e-5 );
|
||||||
|
|
||||||
|
BOOST_CHECK_CLOSE( 0.3, ecl_sum_get_well_var( resp, 1, "W_3", "WEFF" ), 1.0e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 0.3, ecl_sum_get_well_var( resp, 2, "W_3", "WEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
|
BOOST_CHECK_CLOSE( 0.3 * 0.02 * 0.03, ecl_sum_get_well_var( resp, 1, "W_3", "WEFFG" ), 1.0e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 0.3 * 0.02 * 0.04, ecl_sum_get_well_var( resp, 2, "W_3", "WEFFG" ), 1.0e-5 );
|
||||||
|
|
||||||
BOOST_CHECK_CLOSE( 432.1 * 0.3 * 0.02 * 0.03,
|
BOOST_CHECK_CLOSE( 432.1 * 0.3 * 0.02 * 0.03,
|
||||||
ecl_sum_get_well_connection_var( resp, 1, "W_3", "CVPT", 3, 1, 1 ), 1e-5 );
|
ecl_sum_get_well_connection_var( resp, 1, "W_3", "CVPT", 3, 1, 1 ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 432.1 * 0.3 * 0.02 * 0.03 +
|
BOOST_CHECK_CLOSE( 432.1 * 0.3 * 0.02 * 0.03 +
|
||||||
@ -2366,24 +2394,28 @@ BOOST_AUTO_TEST_CASE(efficiency_factor) {
|
|||||||
BOOST_CHECK_CLOSE( 30.15 * 0.3, ecl_sum_get_group_var( resp, 1, "G_3", "GGPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 30.15 * 0.3, ecl_sum_get_group_var( resp, 1, "G_3", "GGPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_3", "GWPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_3", "GWPI" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_3", "GGPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_3", "GGPI" ), 1e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 0.02 , ecl_sum_get_group_var( resp, 1, "G_3", "GEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
BOOST_CHECK_CLOSE( 30.13 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 1, "G_4", "GWPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 30.13 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 1, "G_4", "GWPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 30.14 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 1, "G_4", "GOPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 30.14 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 1, "G_4", "GOPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 30.15 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 1, "G_4", "GGPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 30.15 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 1, "G_4", "GGPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_4", "GWPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_4", "GWPI" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_4", "GGPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 1, "G_4", "GGPI" ), 1e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 0.03 , ecl_sum_get_group_var( resp, 1, "G_4", "GEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
BOOST_CHECK_CLOSE( 30.13 * 0.3, ecl_sum_get_group_var( resp, 2, "G_3", "GWPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 30.13 * 0.3, ecl_sum_get_group_var( resp, 2, "G_3", "GWPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 30.14 * 0.3, ecl_sum_get_group_var( resp, 2, "G_3", "GOPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 30.14 * 0.3, ecl_sum_get_group_var( resp, 2, "G_3", "GOPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 30.15 * 0.3, ecl_sum_get_group_var( resp, 2, "G_3", "GGPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 30.15 * 0.3, ecl_sum_get_group_var( resp, 2, "G_3", "GGPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_3", "GWPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_3", "GWPI" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_3", "GGPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_3", "GGPI" ), 1e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 0.02 , ecl_sum_get_group_var( resp, 2, "G_3", "GEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
BOOST_CHECK_CLOSE( 30.13 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 2, "G_4", "GWPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 30.13 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 2, "G_4", "GWPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 30.14 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 2, "G_4", "GOPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 30.14 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 2, "G_4", "GOPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 30.15 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 2, "G_4", "GGPP" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 30.15 * 0.3 * 0.02, ecl_sum_get_group_var( resp, 2, "G_4", "GGPP" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_4", "GWPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_4", "GWPI" ), 1e-5 );
|
||||||
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_4", "GGPI" ), 1e-5 );
|
BOOST_CHECK_CLOSE( 0.0 , ecl_sum_get_group_var( resp, 2, "G_4", "GGPI" ), 1e-5 );
|
||||||
|
BOOST_CHECK_CLOSE( 0.04 , ecl_sum_get_group_var( resp, 2, "G_4", "GEFF" ), 1.0e-5 );
|
||||||
|
|
||||||
BOOST_CHECK_CLOSE( - 10.13
|
BOOST_CHECK_CLOSE( - 10.13
|
||||||
- (20.13 * 0.2 * 0.01)
|
- (20.13 * 0.2 * 0.01)
|
||||||
|
Loading…
Reference in New Issue
Block a user