Add strict parsing option to flow

This commit is contained in:
Joakim Hove 2019-01-11 15:39:48 +01:00
parent eedbafb805
commit 71d4162a7e
2 changed files with 12 additions and 5 deletions

View File

@ -183,11 +183,14 @@ int main(int argc, char** argv)
Opm::ParseContext parseContext; Opm::ParseContext parseContext;
Opm::ErrorGuard errorGuard; Opm::ErrorGuard errorGuard;
parseContext.update(Opm::ParseContext::PARSE_RANDOM_SLASH, Opm::InputError::IGNORE); if (EWOMS_GET_PARAM(PreTypeTag, bool, EclStrictParsing))
parseContext.update(Opm::ParseContext::PARSE_MISSING_DIMS_KEYWORD, Opm::InputError::WARN); parseContext.update( Opm::InputError::DELAYED_EXIT1);
parseContext.update(Opm::ParseContext::SUMMARY_UNKNOWN_WELL, Opm::InputError::WARN); else {
parseContext.update(Opm::ParseContext::SUMMARY_UNKNOWN_GROUP, Opm::InputError::WARN); parseContext.update(Opm::ParseContext::PARSE_RANDOM_SLASH, Opm::InputError::IGNORE);
parseContext.update(Opm::ParseContext::PARSE_MISSING_DIMS_KEYWORD, Opm::InputError::WARN);
parseContext.update(Opm::ParseContext::SUMMARY_UNKNOWN_WELL, Opm::InputError::WARN);
parseContext.update(Opm::ParseContext::SUMMARY_UNKNOWN_GROUP, Opm::InputError::WARN);
}
deck.reset( new Opm::Deck( parser.parseFile(deckFilename , parseContext, errorGuard))); deck.reset( new Opm::Deck( parser.parseFile(deckFilename , parseContext, errorGuard)));
if ( outputCout ) { if ( outputCout ) {

View File

@ -40,10 +40,12 @@ BEGIN_PROPERTIES
NEW_PROP_TAG(EnableTerminalOutput); NEW_PROP_TAG(EnableTerminalOutput);
NEW_PROP_TAG(EnableAdaptiveTimeStepping); NEW_PROP_TAG(EnableAdaptiveTimeStepping);
NEW_PROP_TAG(EnableTuning); NEW_PROP_TAG(EnableTuning);
NEW_PROP_TAG(EclStrictParsing);
SET_BOOL_PROP(EclFlowProblem, EnableTerminalOutput, true); SET_BOOL_PROP(EclFlowProblem, EnableTerminalOutput, true);
SET_BOOL_PROP(EclFlowProblem, EnableAdaptiveTimeStepping, true); SET_BOOL_PROP(EclFlowProblem, EnableAdaptiveTimeStepping, true);
SET_BOOL_PROP(EclFlowProblem, EnableTuning, false); SET_BOOL_PROP(EclFlowProblem, EnableTuning, false);
SET_BOOL_PROP(EclFlowProblem, EclStrictParsing, false);
END_PROPERTIES END_PROPERTIES
@ -124,6 +126,8 @@ public:
"Use adaptive time stepping between report steps"); "Use adaptive time stepping between report steps");
EWOMS_REGISTER_PARAM(TypeTag, bool, EnableTuning, EWOMS_REGISTER_PARAM(TypeTag, bool, EnableTuning,
"Honor some aspects of the TUNING keyword."); "Honor some aspects of the TUNING keyword.");
EWOMS_REGISTER_PARAM(TypeTag, bool, EclStrictParsing,
"Handle input in strict mode - will terminate if any errors are found");
} }
/// Run the simulation. /// Run the simulation.