Remove use of GroupTree from opm-common

This commit is contained in:
Joakim Hove
2019-07-31 11:53:20 +02:00
parent 2a1d42edcb
commit 63e55bfa8f
8 changed files with 27 additions and 41 deletions

View File

@@ -30,7 +30,6 @@
#include <opm/parser/eclipse/EclipseState/Schedule/Well/Well2.hpp>
#include <opm/parser/eclipse/EclipseState/Schedule/Schedule.hpp>
#include <opm/parser/eclipse/EclipseState/Schedule/Group/Group2.hpp>
#include <opm/parser/eclipse/EclipseState/Schedule/Group/GroupTree.hpp>
using namespace Opm;
@@ -51,10 +50,10 @@ BOOST_AUTO_TEST_CASE(AddWellsAndGroupToCollection) {
// Add groups to WellCollection
const auto& fieldGroup = sched.getGroup2("FIELD", 2);
collection.addField(fieldGroup, 2, pu);
collection.addField(fieldGroup, pu);
collection.addGroup( sched.getGroup2( "G1", 2 ), fieldGroup.name(), 2, pu);
collection.addGroup( sched.getGroup2( "G2", 2 ), fieldGroup.name(), 2, pu);
collection.addGroup( sched.getGroup2( "G1", 2 ), fieldGroup.name(), pu);
collection.addGroup( sched.getGroup2( "G2", 2 ), fieldGroup.name(), pu);
BOOST_CHECK_EQUAL("FIELD", collection.findNode("FIELD")->name());
BOOST_CHECK_EQUAL("FIELD", collection.findNode("G1")->getParent()->name());
@@ -64,7 +63,7 @@ BOOST_AUTO_TEST_CASE(AddWellsAndGroupToCollection) {
WellCollection wellCollection;
const auto wells = sched.getWells2atEnd();
for (size_t i=0; i<wells.size(); i++) {
collection.addWell(wells[i], summaryState, 2, pu);
collection.addWell(wells[i], summaryState, pu);
}
BOOST_CHECK_EQUAL("G1", collection.findNode("INJ1")->getParent()->name());
@@ -90,9 +89,9 @@ BOOST_AUTO_TEST_CASE(EfficiencyFactor) {
WellCollection collection;
// Add groups to WellCollection
const auto& fieldGroup = sched.getGroup2("FIELD", timestep);
collection.addField(fieldGroup, timestep, pu);
collection.addGroup( sched.getGroup2( "G1", timestep ), fieldGroup.name(), timestep, pu);
collection.addGroup( sched.getGroup2( "G2", timestep ), fieldGroup.name(), timestep, pu);
collection.addField(fieldGroup, pu);
collection.addGroup( sched.getGroup2( "G1", timestep ), fieldGroup.name(), pu);
collection.addGroup( sched.getGroup2( "G2", timestep ), fieldGroup.name(), pu);
BOOST_CHECK_EQUAL(1.0, collection.findNode("FIELD")->efficiencyFactor());
BOOST_CHECK_EQUAL(1.0, collection.findNode("G1")->getParent()->efficiencyFactor());
@@ -101,7 +100,7 @@ BOOST_AUTO_TEST_CASE(EfficiencyFactor) {
// Add wells to WellCollection
const auto wells1 = sched.getWells2(timestep);
for (size_t i=0; i<wells1.size(); i++) {
collection.addWell(wells1[i], summaryState, timestep, pu);
collection.addWell(wells1[i], summaryState, pu);
}
// 0.5(inj1) * 0.8(G1)

View File

@@ -34,8 +34,6 @@
#include <opm/parser/eclipse/Parser/Parser.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>
#include <opm/parser/eclipse/EclipseState/Schedule/Well/Well2.hpp>
#include <opm/parser/eclipse/EclipseState/EclipseState.hpp>
@@ -92,14 +90,10 @@ BOOST_AUTO_TEST_CASE(ConstructGroupFromGroup) {
const Opm::Runspec runspec (deck);
const Schedule sched(deck, grid, eclipseProperties, runspec);
const auto& nodes = sched.getGroupTree(2);
for( const auto& grp_name : sched.groupNames() ) {
if( !nodes.exists( grp_name ) ) continue;
const auto& group = sched.getGroup2(grp_name, 2);
std::shared_ptr<WellsGroupInterface> wellsGroup = createGroupWellsGroup(group, 2, pu);
std::shared_ptr<WellsGroupInterface> wellsGroup = createGroupWellsGroup(group, pu);
BOOST_CHECK_EQUAL(group.name(), wellsGroup->name());
if (group.isInjectionGroup()) {
const auto& injection = group.injectionProperties();
@@ -134,12 +128,10 @@ BOOST_AUTO_TEST_CASE(EfficiencyFactor) {
const Schedule sched(deck, grid, eclipseProperties, runspec);
const auto& nodes = sched.getGroupTree(2);
for( const auto& grp_name : sched.groupNames() ) {
if( !nodes.exists( grp_name ) ) continue;
const auto& group = sched.getGroup2(grp_name, 2);
std::shared_ptr<WellsGroupInterface> wellsGroup = createGroupWellsGroup(group, 2, pu);
std::shared_ptr<WellsGroupInterface> wellsGroup = createGroupWellsGroup(group, pu);
BOOST_CHECK_EQUAL(group.name(), wellsGroup->name());
BOOST_CHECK_EQUAL(group.getGroupEfficiencyFactor(), wellsGroup->efficiencyFactor());
BOOST_CHECK_EQUAL(group.getGroupEfficiencyFactor(), wellsGroup->efficiencyFactor());