From df2fbd0ab3c1de7792863334e9cfdfe48b9f1a5b Mon Sep 17 00:00:00 2001 From: Joakim Hove Date: Sat, 19 Jun 2021 13:38:41 +0200 Subject: [PATCH] Update AggregateUDQTest to output valid restart file --- tests/test_AggregateUDQData.cpp | 55 ++++++++++++++++++++++++++++----- 1 file changed, 47 insertions(+), 8 deletions(-) diff --git a/tests/test_AggregateUDQData.cpp b/tests/test_AggregateUDQData.cpp index 2b9ecc458..700778e1e 100644 --- a/tests/test_AggregateUDQData.cpp +++ b/tests/test_AggregateUDQData.cpp @@ -2,6 +2,9 @@ #include +#include +#include +#include #include #include #include @@ -27,6 +30,10 @@ #include #include #include +#include +#include +#include +#include #include @@ -185,14 +192,6 @@ BOOST_AUTO_TEST_CASE (Declared_UDQ_data) // Report Step 1: 2008-10-10 --> 2011-01-20 const auto rptStep = std::size_t{1}; - std::string outputDir = "./"; - std::string baseName = "TEST_UDQRST"; - Opm::EclIO::OutputStream::Restart rstFile { - Opm::EclIO::OutputStream::ResultSet { outputDir, baseName }, - rptStep, - Opm::EclIO::OutputStream::Formatted { ioConfig.getFMTOUT() }, - Opm::EclIO::OutputStream::Unified { ioConfig.getUNIFOUT() } - }; double secs_elapsed = 3.1536E07; const auto ih = Opm::RestartIO::Helpers:: @@ -204,10 +203,49 @@ BOOST_AUTO_TEST_CASE (Declared_UDQ_data) const auto dh = Opm::RestartIO::Helpers::createDoubHead(es, sched, rptStep, secs_elapsed, next_step_size); + const auto& lh = Opm::RestartIO::Helpers::createLogiHead(es); + const auto udqDims = Opm::RestartIO::Helpers::createUdqDims(sched, rptStep, ih); auto udqData = Opm::RestartIO::Helpers::AggregateUDQData(udqDims); udqData.captureDeclaredUDQData(sched, rptStep, udq_state, ih); + { + std::string outputDir = "./"; + std::string baseName = "TEST_UDQRST"; + Opm::EclIO::OutputStream::Restart rstFile { + Opm::EclIO::OutputStream::ResultSet { outputDir, baseName }, + rptStep, + Opm::EclIO::OutputStream::Formatted { ioConfig.getFMTOUT() }, + Opm::EclIO::OutputStream::Unified { ioConfig.getUNIFOUT() } + }; + rstFile.write("INTEHEAD", ih); + rstFile.write("DOUBHEAD", dh); + rstFile.write("LOGIHEAD", lh); + { + auto group_aggregator = Opm::RestartIO::Helpers::AggregateGroupData(ih); + group_aggregator.captureDeclaredGroupData(sched, es.getUnits(), rptStep, st, ih); + rstFile.write("IGRP", group_aggregator.getIGroup()); + rstFile.write("SGRP", group_aggregator.getSGroup()); + rstFile.write("XGRP", group_aggregator.getXGroup()); + rstFile.write("ZGRP", group_aggregator.getZGroup()); + } + { + auto action_state = Opm::Action::State{}; + auto well_aggregator = Opm::RestartIO::Helpers::AggregateWellData(ih); + well_aggregator.captureDeclaredWellData(sched, es.getUnits(), rptStep, action_state, st, ih); + rstFile.write("IWEL", well_aggregator.getIWell()); + rstFile.write("SWEL", well_aggregator.getSWell()); + rstFile.write("XWEL", well_aggregator.getXWell()); + rstFile.write("ZWEL", well_aggregator.getZWell()); + } + { + auto conn_aggregator = Opm::RestartIO::Helpers::AggregateConnectionData(ih); + auto xw = Opm::data::Wells{}; + conn_aggregator.captureDeclaredConnData(sched, grid, es.getUnits(), xw, st, rptStep); + rstFile.write("ICON", conn_aggregator.getIConn()); + rstFile.write("SCON", conn_aggregator.getSConn()); + rstFile.write("XCON", conn_aggregator.getXConn()); + } rstFile.write("ZUDN", udqData.getZUDN()); rstFile.write("ZUDL", udqData.getZUDL()); rstFile.write("IUDQ", udqData.getIUDQ()); @@ -217,6 +255,7 @@ BOOST_AUTO_TEST_CASE (Declared_UDQ_data) rstFile.write("IUAD", udqData.getIUAD()); rstFile.write("IUAP", udqData.getIUAP()); rstFile.write("IGPH", udqData.getIGPH()); + } { /*