From f6402e2bc811e13416157b0e679bc588ca10c5a1 Mon Sep 17 00:00:00 2001 From: goncalvesmachadoc Date: Thu, 16 Mar 2023 10:50:59 +0100 Subject: [PATCH] extra keywords --- .../input/eclipse/EclipseState/Runspec.cpp | 14 ++-- .../share/keywords/001_Eclipse300/F/FIELDSEP | 67 +++++++++++++++++++ .../share/keywords/001_Eclipse300/H/HWELLS | 6 ++ .../share/keywords/001_Eclipse300/S/SOLID | 6 ++ .../eclipse/share/keywords/keyword_list.cmake | 3 + 5 files changed, 87 insertions(+), 9 deletions(-) create mode 100644 src/opm/input/eclipse/share/keywords/001_Eclipse300/F/FIELDSEP create mode 100644 src/opm/input/eclipse/share/keywords/001_Eclipse300/H/HWELLS create mode 100644 src/opm/input/eclipse/share/keywords/001_Eclipse300/S/SOLID diff --git a/src/opm/input/eclipse/EclipseState/Runspec.cpp b/src/opm/input/eclipse/EclipseState/Runspec.cpp index 97e0beb51..5204e5cb5 100644 --- a/src/opm/input/eclipse/EclipseState/Runspec.cpp +++ b/src/opm/input/eclipse/EclipseState/Runspec.cpp @@ -49,12 +49,11 @@ namespace { { return { deck.hasKeyword(), - deck.hasKeyword(), - deck.hasKeyword(), + deck.hasKeyword() || deck.hasKeyword(), + deck.hasKeyword() || deck.hasKeyword(), deck.hasKeyword(), deck.hasKeyword(), - deck.hasKeyword() || - deck.hasKeyword(), + deck.hasKeyword() || deck.hasKeyword(), deck.hasKeyword(), deck.hasKeyword(), deck.hasKeyword(), @@ -81,9 +80,9 @@ namespace { inferKeywordFamily(const Opm::Deck& deck) { const auto phases = inferActivePhases(deck); - const auto wat = phases.active(Opm::Phase::WATER) || deck.hasKeyword(); + const auto wat = phases.active(Opm::Phase::WATER); const auto oil = phases.active(Opm::Phase::OIL); - const auto gas = phases.active(Opm::Phase::GAS) || deck.hasKeyword(); + const auto gas = phases.active(Opm::Phase::GAS); const auto threeP = gas && oil && wat; const auto twoP = (!gas && oil && wat) || (gas && oil && !wat); @@ -607,9 +606,6 @@ Runspec::Runspec( const Deck& deck ) std::string msg = "The CO2 storage option is given. PVT properties from the Brine-CO2 system is used \n" "See the OPM manual for details on the used models."; OpmLog::note(msg); - } else if (runspecSection.hasKeyword()) { - // TODO: Make sure gas and water phases are actived internally - throw std::runtime_error("The CO2 storage option is given with GASWAT activated. Activate GAS and WATER instead."); } else { throw std::runtime_error("The CO2 storage option is given. Activate GAS, plus WATER or OIL "); } diff --git a/src/opm/input/eclipse/share/keywords/001_Eclipse300/F/FIELDSEP b/src/opm/input/eclipse/share/keywords/001_Eclipse300/F/FIELDSEP new file mode 100644 index 000000000..6a9df0cca --- /dev/null +++ b/src/opm/input/eclipse/share/keywords/001_Eclipse300/F/FIELDSEP @@ -0,0 +1,67 @@ +{ + "name": "FIELDSEP", + "sections": [ + "SOLUTION" + ], +"items": [ + { + "item": 1, + "name": "STAGE", + "value_type": "INT" + }, + { + "item": 2, + "name": "TEMPERATURE", + "value_type": "DOUBLE", + "dimension": "Temperature", + "default": 15.56 + }, + { + "item": 3, + "name": "PRESSURE", + "value_type": "DOUBLE", + "dimension": "Pressure", + "default": 1.01325 + }, + { + "item": 4, + "name": "LIQ_DESTINATION", + "value_type": "INT" + }, + { + "item": 5, + "name": "VAP_DESTINATION", + "value_type": "INT" + }, + { + "item": 6, + "name": "KVALUE", + "value_type": "DOUBLE", + "dimension": "1", + "default": 0 + }, + { + "item": 7, + "name": "TABLE_NUM", + "value_type": "INT", + "default": 0 + }, + { + "item": 8, + "name": "EOS_NUM", + "value_type": "INT" + }, + { + "item": 9, + "name": "REF_TEMP", + "value_type": "DOUBLE", + "dimension": "Temperature" + }, + { + "item": 10, + "name": "REF_PRESS", + "value_type": "DOUBLE", + "dimension": "Pressure" + } +] +} \ No newline at end of file diff --git a/src/opm/input/eclipse/share/keywords/001_Eclipse300/H/HWELLS b/src/opm/input/eclipse/share/keywords/001_Eclipse300/H/HWELLS new file mode 100644 index 000000000..86f331ef2 --- /dev/null +++ b/src/opm/input/eclipse/share/keywords/001_Eclipse300/H/HWELLS @@ -0,0 +1,6 @@ +{ + "name": "HWELLS", + "sections": [ + "RUNSPEC" + ] +} diff --git a/src/opm/input/eclipse/share/keywords/001_Eclipse300/S/SOLID b/src/opm/input/eclipse/share/keywords/001_Eclipse300/S/SOLID new file mode 100644 index 000000000..9be8b1939 --- /dev/null +++ b/src/opm/input/eclipse/share/keywords/001_Eclipse300/S/SOLID @@ -0,0 +1,6 @@ +{ + "name": "SOLID", + "sections": [ + "RUNSPEC" + ] +} diff --git a/src/opm/input/eclipse/share/keywords/keyword_list.cmake b/src/opm/input/eclipse/share/keywords/keyword_list.cmake index 23adc3085..25ae4b832 100644 --- a/src/opm/input/eclipse/share/keywords/keyword_list.cmake +++ b/src/opm/input/eclipse/share/keywords/keyword_list.cmake @@ -1055,12 +1055,14 @@ set( keywords 001_Eclipse300/D/DREF 001_Eclipse300/D/DREFS 001_Eclipse300/D/DZV + 001_Eclipse300/F/FIELDSEP 001_Eclipse300/G/GASVISCT 001_Eclipse300/G/GASWAT 001_Eclipse300/G/GCONPROD 001_Eclipse300/G/GSF 001_Eclipse300/H/HEATCR 001_Eclipse300/H/HEATCRT + 001_Eclipse300/H/HWELLS 001_Eclipse300/L/LIVEOIL 001_Eclipse300/M/MW 001_Eclipse300/M/MWS @@ -1073,6 +1075,7 @@ set( keywords 001_Eclipse300/P/PREFS 001_Eclipse300/R/REGION2REGION_PROBE_E300 001_Eclipse300/S/SALINITY + 001_Eclipse300/S/SOLID 001_Eclipse300/S/STCOND 001_Eclipse300/T/TEMPI 001_Eclipse300/T/TEMPVD