mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
Use class Group2 from opm-common
This commit is contained in:
@@ -29,7 +29,7 @@
|
||||
#include <opm/parser/eclipse/EclipseState/EclipseState.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Well/Well2.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Schedule.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Group/Group.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Group/Group2.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Group/GroupTree.hpp>
|
||||
|
||||
using namespace Opm;
|
||||
@@ -50,11 +50,11 @@ BOOST_AUTO_TEST_CASE(AddWellsAndGroupToCollection) {
|
||||
WellCollection collection;
|
||||
|
||||
// Add groups to WellCollection
|
||||
const auto& fieldGroup = sched.getGroup("FIELD");
|
||||
const auto& fieldGroup = sched.getGroup2("FIELD", 2);
|
||||
collection.addField(fieldGroup, 2, pu);
|
||||
|
||||
collection.addGroup( sched.getGroup( "G1" ), fieldGroup.name(), 2, pu);
|
||||
collection.addGroup( sched.getGroup( "G2" ), fieldGroup.name(), 2, pu);
|
||||
collection.addGroup( sched.getGroup2( "G1", 2 ), fieldGroup.name(), 2, pu);
|
||||
collection.addGroup( sched.getGroup2( "G2", 2 ), fieldGroup.name(), 2, pu);
|
||||
|
||||
BOOST_CHECK_EQUAL("FIELD", collection.findNode("FIELD")->name());
|
||||
BOOST_CHECK_EQUAL("FIELD", collection.findNode("G1")->getParent()->name());
|
||||
@@ -89,10 +89,10 @@ BOOST_AUTO_TEST_CASE(EfficiencyFactor) {
|
||||
size_t timestep = 2;
|
||||
WellCollection collection;
|
||||
// Add groups to WellCollection
|
||||
const auto& fieldGroup = sched.getGroup("FIELD");
|
||||
const auto& fieldGroup = sched.getGroup2("FIELD", timestep);
|
||||
collection.addField(fieldGroup, timestep, pu);
|
||||
collection.addGroup( sched.getGroup( "G1" ), fieldGroup.name(), timestep, pu);
|
||||
collection.addGroup( sched.getGroup( "G2" ), fieldGroup.name(), timestep, pu);
|
||||
collection.addGroup( sched.getGroup2( "G1", timestep ), fieldGroup.name(), timestep, pu);
|
||||
collection.addGroup( sched.getGroup2( "G2", timestep ), fieldGroup.name(), timestep, pu);
|
||||
|
||||
BOOST_CHECK_EQUAL(1.0, collection.findNode("FIELD")->efficiencyFactor());
|
||||
BOOST_CHECK_EQUAL(1.0, collection.findNode("G1")->getParent()->efficiencyFactor());
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
#include <opm/core/wells/WellsGroup.hpp>
|
||||
|
||||
#include <opm/parser/eclipse/Parser/Parser.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Group/Group.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Group/Group2.hpp>
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Group/GroupTree.hpp>
|
||||
|
||||
#include <opm/parser/eclipse/EclipseState/Schedule/Schedule.hpp>
|
||||
@@ -97,22 +97,26 @@ BOOST_AUTO_TEST_CASE(ConstructGroupFromGroup) {
|
||||
|
||||
for( const auto& grp_name : sched.groupNames() ) {
|
||||
if( !nodes.exists( grp_name ) ) continue;
|
||||
const auto& group = sched.getGroup(grp_name);
|
||||
const auto& group = sched.getGroup2(grp_name, 2);
|
||||
|
||||
std::shared_ptr<WellsGroupInterface> wellsGroup = createGroupWellsGroup(group, 2, pu);
|
||||
BOOST_CHECK_EQUAL(group.name(), wellsGroup->name());
|
||||
if (group.isInjectionGroup(2)) {
|
||||
BOOST_CHECK_EQUAL(group.getSurfaceMaxRate(2), wellsGroup->injSpec().surface_flow_max_rate_);
|
||||
BOOST_CHECK_EQUAL(group.getReservoirMaxRate(2), wellsGroup->injSpec().reservoir_flow_max_rate_);
|
||||
BOOST_CHECK_EQUAL(group.getTargetReinjectFraction(2), wellsGroup->injSpec().reinjection_fraction_target_);
|
||||
BOOST_CHECK_EQUAL(group.getTargetVoidReplacementFraction(2), wellsGroup->injSpec().voidage_replacment_fraction_);
|
||||
if (group.isInjectionGroup()) {
|
||||
const auto& injection = group.injectionProperties();
|
||||
|
||||
BOOST_CHECK_EQUAL(injection.surface_max_rate, wellsGroup->injSpec().surface_flow_max_rate_);
|
||||
BOOST_CHECK_EQUAL(injection.resv_max_rate, wellsGroup->injSpec().reservoir_flow_max_rate_);
|
||||
BOOST_CHECK_EQUAL(injection.target_reinj_fraction, wellsGroup->injSpec().reinjection_fraction_target_);
|
||||
BOOST_CHECK_EQUAL(injection.target_void_fraction, wellsGroup->injSpec().voidage_replacment_fraction_);
|
||||
}
|
||||
if (group.isProductionGroup(2)) {
|
||||
BOOST_CHECK_EQUAL(group.getReservoirVolumeTargetRate(2), wellsGroup->prodSpec().reservoir_flow_max_rate_);
|
||||
BOOST_CHECK_EQUAL(group.getGasTargetRate(2), wellsGroup->prodSpec().gas_max_rate_);
|
||||
BOOST_CHECK_EQUAL(group.getOilTargetRate(2), wellsGroup->prodSpec().oil_max_rate_);
|
||||
BOOST_CHECK_EQUAL(group.getWaterTargetRate(2), wellsGroup->prodSpec().water_max_rate_);
|
||||
BOOST_CHECK_EQUAL(group.getLiquidTargetRate(2), wellsGroup->prodSpec().liquid_max_rate_);
|
||||
|
||||
if (group.isProductionGroup()) {
|
||||
const auto& production = group.productionProperties();
|
||||
BOOST_CHECK_EQUAL(production.resv_target, wellsGroup->prodSpec().reservoir_flow_max_rate_);
|
||||
BOOST_CHECK_EQUAL(production.gas_target, wellsGroup->prodSpec().gas_max_rate_);
|
||||
BOOST_CHECK_EQUAL(production.oil_target, wellsGroup->prodSpec().oil_max_rate_);
|
||||
BOOST_CHECK_EQUAL(production.water_target, wellsGroup->prodSpec().water_max_rate_);
|
||||
BOOST_CHECK_EQUAL(production.liquid_target, wellsGroup->prodSpec().liquid_max_rate_);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -133,12 +137,12 @@ BOOST_AUTO_TEST_CASE(EfficiencyFactor) {
|
||||
const auto& nodes = sched.getGroupTree(2);
|
||||
for( const auto& grp_name : sched.groupNames() ) {
|
||||
if( !nodes.exists( grp_name ) ) continue;
|
||||
const auto& group = sched.getGroup(grp_name);
|
||||
const auto& group = sched.getGroup2(grp_name, 2);
|
||||
|
||||
std::shared_ptr<WellsGroupInterface> wellsGroup = createGroupWellsGroup(group, 2, pu);
|
||||
BOOST_CHECK_EQUAL(group.name(), wellsGroup->name());
|
||||
BOOST_CHECK_EQUAL(group.getGroupEfficiencyFactor(2), wellsGroup->efficiencyFactor());
|
||||
BOOST_CHECK_EQUAL(group.getGroupEfficiencyFactor(2), wellsGroup->efficiencyFactor());
|
||||
BOOST_CHECK_EQUAL(group.getGroupEfficiencyFactor(), wellsGroup->efficiencyFactor());
|
||||
BOOST_CHECK_EQUAL(group.getGroupEfficiencyFactor(), wellsGroup->efficiencyFactor());
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user