New implementation of WELOPEN

This commit is contained in:
Joakim Hove
2018-06-25 18:45:01 +02:00
parent 1f1ecebec5
commit 9d16cc8ec4
12 changed files with 80 additions and 96 deletions

View File

@@ -64,7 +64,7 @@ BOOST_AUTO_TEST_CASE(testGetFunctions) {
BOOST_CHECK_EQUAL( 11 , completion.getJ() );
BOOST_CHECK_EQUAL( 12 , completion.getK() );
BOOST_CHECK_EQUAL( Opm::WellCompletion::OPEN , completion.getState());
BOOST_CHECK_EQUAL( Opm::WellCompletion::OPEN , completion.state);
BOOST_CHECK_EQUAL( 99.88 , completion.getConnectionTransmissibilityFactor());
BOOST_CHECK_EQUAL( 22.33 , completion.getDiameter());
BOOST_CHECK_EQUAL( 33.22 , completion.getSkinFactor());

View File

@@ -654,25 +654,25 @@ BOOST_AUTO_TEST_CASE(CreateScheduleDeckWellsAndConnectionDataWithWELOPEN) {
constexpr auto open = WellCompletion::StateEnum::OPEN;
BOOST_CHECK_EQUAL( 7U, cs.size() );
BOOST_CHECK_EQUAL(open, cs.getFromIJK( 7, 6, 2 ).getState());
BOOST_CHECK_EQUAL(open, cs.getFromIJK( 7, 6, 3 ).getState());
BOOST_CHECK_EQUAL(open, cs.getFromIJK( 7, 6, 4 ).getState());
BOOST_CHECK_EQUAL(open, cs.getFromIJK( 7, 7, 2 ).getState());
BOOST_CHECK_EQUAL(open, cs.getFromIJK( 7, 6, 2 ).state);
BOOST_CHECK_EQUAL(open, cs.getFromIJK( 7, 6, 3 ).state);
BOOST_CHECK_EQUAL(open, cs.getFromIJK( 7, 6, 4 ).state);
BOOST_CHECK_EQUAL(open, cs.getFromIJK( 7, 7, 2 ).state);
const auto& cs2 = well->getConnections( 4 );
BOOST_CHECK_EQUAL(open, cs2.getFromIJK( 7, 6, 2 ).getState());
BOOST_CHECK_EQUAL(open, cs2.getFromIJK( 7, 6, 3 ).getState());
BOOST_CHECK_EQUAL(open, cs2.getFromIJK( 7, 6, 4 ).getState());
BOOST_CHECK_EQUAL(open, cs2.getFromIJK( 7, 7, 2 ).getState());
BOOST_CHECK_EQUAL(open, cs2.getFromIJK( 7, 6, 2 ).state);
BOOST_CHECK_EQUAL(open, cs2.getFromIJK( 7, 6, 3 ).state);
BOOST_CHECK_EQUAL(open, cs2.getFromIJK( 7, 6, 4 ).state);
BOOST_CHECK_EQUAL(open, cs2.getFromIJK( 7, 7, 2 ).state);
well = schedule.getWell("OP_3");
const auto& cs3 = well->getConnections( 3 );
BOOST_CHECK_EQUAL(shut, cs3.get( 0 ).getState());
BOOST_CHECK_EQUAL(shut, cs3.get( 0 ).state);
const auto& cs4 = well->getConnections( 4 );
BOOST_CHECK_EQUAL(open, cs4.get( 0 ).getState());
BOOST_CHECK_EQUAL(open, cs4.get( 0 ).state);
well = schedule.getWell("OP_1");
BOOST_CHECK_EQUAL(WellCommon::StatusEnum::SHUT, well->getStatus( 3 ));
@@ -1848,15 +1848,15 @@ BOOST_AUTO_TEST_CASE( complump ) {
//BOOST_CHECK_EQUAL( 1, sc0.getFromIJK( 2, 2, 2 ).complnum );
//BOOST_CHECK_EQUAL( 4, sc0.getFromIJK( 2, 2, 3 ).complnum );
//BOOST_CHECK_EQUAL( shut, sc0.getFromIJK( 2, 2, 0 ).getState() );
//BOOST_CHECK_EQUAL( shut, sc0.getFromIJK( 2, 2, 1 ).getState() );
//BOOST_CHECK_EQUAL( shut, sc0.getFromIJK( 2, 2, 2 ).getState() );
//BOOST_CHECK_EQUAL( shut, sc0.getFromIJK( 2, 2, 0 ).state );
//BOOST_CHECK_EQUAL( shut, sc0.getFromIJK( 2, 2, 1 ).state );
//BOOST_CHECK_EQUAL( shut, sc0.getFromIJK( 2, 2, 2 ).state );
//const auto& sc1 = well.getConnections( 1 );
//BOOST_CHECK_EQUAL( open, sc1.getFromIJK( 2, 2, 0 ).getState() );
//BOOST_CHECK_EQUAL( open, sc1.getFromIJK( 2, 2, 1 ).getState() );
//BOOST_CHECK_EQUAL( open, sc1.getFromIJK( 2, 2, 2 ).getState() );
//BOOST_CHECK_EQUAL( shut, sc1.getFromIJK( 2, 2, 3 ).getState() );
//BOOST_CHECK_EQUAL( open, sc1.getFromIJK( 2, 2, 0 ).state );
//BOOST_CHECK_EQUAL( open, sc1.getFromIJK( 2, 2, 1 ).state );
//BOOST_CHECK_EQUAL( open, sc1.getFromIJK( 2, 2, 2 ).state );
//BOOST_CHECK_EQUAL( shut, sc1.getFromIJK( 2, 2, 3 ).state );
}
BOOST_AUTO_TEST_CASE( COMPLUMP_specific_coordinates ) {
@@ -1918,25 +1918,25 @@ BOOST_AUTO_TEST_CASE( COMPLUMP_specific_coordinates ) {
const auto& cs2 = well.getConnections( 2 );
BOOST_CHECK_EQUAL( 9U, cs1.size() );
//BOOST_CHECK_EQUAL( open, cs1.getFromIJK( 0, 0, 0 ).getState() );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 0, 0, 1 ).getState() );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 2, 2, 0 ).getState() );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 2, 2, 1 ).getState() );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 2, 2, 2 ).getState() );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 1, 1, 0 ).getState() );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 1, 1, 3 ).getState() );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 1, 1, 4 ).getState() );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 1, 1, 5 ).getState() );
//BOOST_CHECK_EQUAL( open, cs1.getFromIJK( 0, 0, 0 ).state );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 0, 0, 1 ).state );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 2, 2, 0 ).state );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 2, 2, 1 ).state );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 2, 2, 2 ).state );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 1, 1, 0 ).state );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 1, 1, 3 ).state );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 1, 1, 4 ).state );
//BOOST_CHECK_EQUAL( shut, cs1.getFromIJK( 1, 1, 5 ).state );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 0, 0, 0 ).getState() );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 0, 0, 1 ).getState() );
//BOOST_CHECK_EQUAL( shut, cs2.getFromIJK( 2, 2, 0 ).getState() );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 2, 2, 1 ).getState() );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 2, 2, 2 ).getState() );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 1, 1, 0 ).getState() );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 1, 1, 3 ).getState() );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 1, 1, 4 ).getState() );
//BOOST_CHECK_EQUAL( shut, cs2.getFromIJK( 1, 1, 5 ).getState() );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 0, 0, 0 ).state );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 0, 0, 1 ).state );
//BOOST_CHECK_EQUAL( shut, cs2.getFromIJK( 2, 2, 0 ).state );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 2, 2, 1 ).state );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 2, 2, 2 ).state );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 1, 1, 0 ).state );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 1, 1, 3 ).state );
//BOOST_CHECK_EQUAL( open, cs2.getFromIJK( 1, 1, 4 ).state );
//BOOST_CHECK_EQUAL( shut, cs2.getFromIJK( 1, 1, 5 ).state );
}
BOOST_AUTO_TEST_CASE(TestCompletionStateEnum2String) {

View File

@@ -349,13 +349,13 @@ BOOST_AUTO_TEST_CASE(WellTestCOMPDAT) {
const auto& connections = well1->getConnections(3);
BOOST_CHECK_EQUAL(4U, connections.size());
BOOST_CHECK_EQUAL(WellCompletion::OPEN, connections.get(3).getState());
BOOST_CHECK_EQUAL(WellCompletion::OPEN, connections.get(3).state);
BOOST_CHECK_EQUAL(2.2836805555555556e-12 , connections.get(3).getConnectionTransmissibilityFactor());
BOOST_CHECK_EQUAL(0.311/Metric::Length, connections.get(3).getDiameter());
BOOST_CHECK_EQUAL(3.3, connections.get(3).getSkinFactor());
BOOST_CHECK_EQUAL(4U, well1->getConnections( 7 ).size() );
BOOST_CHECK_EQUAL(WellCompletion::SHUT, well1->getConnections( 7 ).get( 3 ).getState() );
BOOST_CHECK_EQUAL(WellCompletion::SHUT, well1->getConnections( 7 ).get( 3 ).state );
}
}