Restart Tag System: Introduce Tag for OPM Extended Vectors

This is intended to supersede the RESTART_AUXILIARY tag.  There is
no practical difference between vectors that are needed for restart
and vectors that are not needed for restart.  They all go into the
SOLUTION section of a restart file.

Vectors tagged as RESTART_OPM_EXTENDED will not be output unless the
user does requests OPM-extended restart files.
This commit is contained in:
Bård Skaflestad
2020-03-23 16:52:36 +01:00
parent 4fcd85526a
commit a4a04ebf51
2 changed files with 11 additions and 5 deletions

View File

@@ -36,10 +36,10 @@ namespace data {
from the TargetType enum which indicates why they they have been
added to the container - and where they are headed.
RESTART_SOLUTION : Fields which represent primary variables, and
are reqired for restart. Typically pressure and
suturation. WIll end up in the SOLUTION section of the restart
file.
RESTART_SOLUTION : Cell-based quantities that are output to the
SOLUTION section of the restart file. ECLIPSE-compatible names.
Many, but not necessarily all, of these quantities are required
for restarting the simulator.
RESTART_AUXILIARY : Fields with extra information, not required
for restart. Examples of this include fluid in place values or
@@ -52,6 +52,10 @@ namespace data {
will not be output anywhere else.
INIT : Fields which should go to the INIT file.
RESTART_OPM_EXTENDED: Cell-based quantities that are specific to
OPM-Flow. Output only to extended OPM restart files. Specifically
not output to ECLIPSE-compatible restart files.
*/
@@ -60,6 +64,7 @@ namespace data {
RESTART_AUXILIARY,
SUMMARY,
INIT,
RESTART_OPM_EXTENDED,
};
/**

View File

@@ -479,7 +479,8 @@ namespace {
vectors.reserve(value.solution.size());
for (const auto& [name, vector] : value.solution) {
if (vector.target == data::TargetType::RESTART_AUXILIARY)
if ((vector.target == data::TargetType::RESTART_AUXILIARY) ||
(vector.target == data::TargetType::RESTART_OPM_EXTENDED))
{
vectors.push_back(name);
}