diff --git a/opm/simulators/utils/PartiallySupportedFlowKeywords.cpp b/opm/simulators/utils/PartiallySupportedFlowKeywords.cpp index 292dbedb0a..f37ba813fd 100644 --- a/opm/simulators/utils/PartiallySupportedFlowKeywords.cpp +++ b/opm/simulators/utils/PartiallySupportedFlowKeywords.cpp @@ -27,55 +27,320 @@ template <> const PartiallySupportedKeywords& partiallySupported() { - static const PartiallySupportedKeywords partially_supported_keywords_strings = { - { + static const PartiallySupportedKeywords partially_supported_keywords_strings = { + { + "BRINE", + { + {1,{false, allow_values {}, "SALTS Multi-Component Brine model not supported"}}, // NO_NAME + }, + }, + { "COMPORD", { - {2, {false, allow_values{"INPUT"}, std::nullopt}}, // ORDER_TYPE + {2,{false, allow_values {"DEPTH", "INPUT", "TRACK"}, "COMPORD should be DEPTH/INPUT/TRACK"}}, // ORDER_TYPE }, - }, - { - "ENDSCALE", + }, + { + "EDITNNC", { - {1, {false, allow_values{"NODIR"}, std::nullopt}}, // DIRECT - {2, {false, allow_values{"REVERS"}, std::nullopt}}, // IRREVERS + {12,{false, allow_values {}, "FACE1 not supported use 1* - will continue"}}, // FACE_FLOW12 + {13,{false, allow_values {}, "FACE2 not supported use 1* - will continue"}}, // FACE_FLOW21 }, - }, - { - "PINCH", - { - {2, {false, allow_values{"GAP"}, std::nullopt}}, // GAP - {4, {false, allow_values{"TOPBOT"}, std::nullopt}}, // PINCHOUT_OPTION - }, - }, - }; - - return partially_supported_keywords_strings; -} - -template <> -const PartiallySupportedKeywords& -partiallySupported() -{ - static const PartiallySupportedKeywords partially_supported_keywords_int = { - { + }, + { "EHYSTR", { - {2, {false, allow_values{0}, std::nullopt}}, // relative_perm_hyst + {5,{false, allow_values {"BOTH"}, "HYSTOPT only default value of BOTH is supported – will STOP"}}, // limiting_hyst_flag + {6,{false, allow_values {"RETR"}, "HYSTSCAN is not supported and is ignored"}}, // shape_cap_press_flag + {7,{false, allow_values {"DRAIN"}, "HYSTMOB is not supported and is ignored"}}, // init_fluid_mob_flag + {8,{false, allow_values {"OIL"}, "HYSTWET is not supported and is ignored"}}, // wetting_phase_flag + {9,{false, allow_values {"NO"}, "NOTUSED and is ignored"}}, // baker_flag_oil + {10,{false, allow_values {"NO"}, "NOTUSED and is ignored"}}, // baker_flag_gas + {11,{false, allow_values {"NO"}, "NOTUSED and is ignored"}}, // baker_flag_water }, - }, - }; + }, + { + "ENDSCALE", + { + {1,{false, allow_values {"NODIR"}, "DIRECT only default value of NODIR supported"}}, // DIRECT + {2,{false, allow_values {"REVERS"}, "IRREVERS only default value of REVERS supported"}}, // IRREVERS + }, + }, + { + "EQLOPTS", + { + {1,{false, allow_values {"THPRES"}, "MOBILE fluid critical saturation end point correction option not supported – value ignored"}}, // OPTION1 + {2,{false, allow_values {"THPRES"}, "QUIESC quiescence option not supported – value ignored"}}, // OPTION2 + {3,{false, allow_values {"THPRES"}, "THPRES invalid value for THPRES"}}, // OPTION3 + {4,{false, allow_values {"THPRES"}, "IRREVER irreversible inter-region equilibration flow option not supported - value ignored"}}, // OPTION4 + }, + }, + { + "GRIDOPTS", + { + {1,{false, allow_values {"NO"}, "TRANMULT only the NO option is supported – value ignored"}}, // TRANMULT + }, + }, + { + "MISCIBLE", + { + {3,{false, allow_values {"NONE"}, "MISOPT only option NONE is supported – value ignored"}}, // TWOPOINT + }, + }, + { + "MULTIREG", + { + {4,{false, allow_values {"F", "M", "O"}, "REGION_NAME must equal to F/M or O"}}, // NOT_DEFINED + }, + }, + { + "MULTREGP", + { + {3,{false, allow_values {"F", "M", "O"}, "REGION_NAME must equal to F/M or O"}}, // REGION_TYPE + }, + }, + { + "MULTREGT", + { + {6,{false, allow_values {"F", "M", "O"}, "REGION_NAME must equal to F/M or O"}}, // REGION_DEF + }, + }, + { + "NNC", + { + {12,{false, allow_values {}, "FACE1 not supported use 1* - will continue"}}, // VE_FACE1 + {13,{false, allow_values {}, "FACE2 not supported use 1* - will continue"}}, // VE_FACE2 + }, + }, + { + "ROCKCOMP", + { + {1,{false, allow_values {"REVERS"}, "ROCKOPT only the REVERS option is supported"}}, // HYSTERESIS + {3,{false, allow_values {"YES"}, "WATINOPT only equal to YES is supported"}}, // WATER_COMPACTION + {4,{false, allow_values {}, "PORTXROP transmissibility dependent on porosity model is not supported"}}, // PORTXROP + }, + }, + { + "SATOPTS", + { + {1,{false, allow_values {"HYSTER"}, "DIRECT directional relative permeability assignment option not supported - value ignored"}}, // options + {2,{false, allow_values {"HYSTER"}, "IRREVERS reversible directional relative permeability assignment option not supported – value ignored"}}, // IRREVERS + {3,{false, allow_values {"HYSTER"}, "HYSTER hysteresis directional relative permeability assignment option not supported - value ignored"}}, // HYSTER + {4,{false, allow_values {"HYSTER"}, "SURFTENS capillary pressure surface tension pressure dependency option not supported – value ignored"}}, // SURFTENS + }, + }, + { + "SPECGRID", + { + {5,{true, allow_values {"F"}, "TYPE only option F (Cartesian grids supported) supported – will STOP"}}, // COORD_TYPE + }, + }, + { + "TABDIMS", + { + {20,{false, allow_values {}, "NOTUSED should be defaulted (1*) - ignored as not used"}}, // ITEM20_NOT_USED + {25,{false, allow_values {}, "RESVED should be defaulted (1*) - ignored as not used"}}, // RESERVED + }, + }, + { + "UDQDIMS", + { + {11,{false, allow_values {"N"}, "RSEED option is not supported – value ignored"}}, // RESTART_NEW_SEED + }, + }, + }; - return partially_supported_keywords_int; + return partially_supported_keywords_strings; } template <> -const PartiallySupportedKeywords& +const KeywordValidation::PartiallySupportedKeywords& partiallySupported() { - static const PartiallySupportedKeywords partially_supported_keywords_double = {}; + static const KeywordValidation::PartiallySupportedKeywordspartially_supported_keywords_int = { + { + "EDITNNC", + { + {8,{false, allow_values {0}, "ISATNUM1 only default value of 0 supported – will continue"}}, // SAT_TABLE12 + {9,{false, allow_values {0}, "ISATNUM2 only default value of 0 supported – will continue"}}, // SAT_TABLE21 + {10,{false, allow_values {0}, "IPRSNUM1 only default value of 0 supported – will continue"}}, // PRESS_TABLE12 + {11,{false, allow_values {0}, "IPRSNUM2 only default value of 0 supported – will continue"}}, // PRESS_TABLE21 + }, + }, + { + "EHYSTR", + { + {2,{false, allow_values {0}, "HYSTMOD only default value of 0 (Carlson Hysteresis Model) supported"}}, // relative_perm_hyst + {13,{false, allow_values {0}, "NOTUSED and is ignored"}}, // FLAG_SOMETHING + }, + }, + { + "ENDSCALE", + { + {3,{false, allow_values {1}, "NTENDP depth end-point scaling not supported – value ignored"}}, // NTENDP + {4,{false, allow_values {20}, "NNODES depth end-point scaling not supported – value ignored"}}, // NSENDP + {5,{false, allow_values {0}, "MODE depth temperature end-point scaling not supported – value ignored"}}, // COMP_MODE + }, + }, + { + "EQLDIMS", + { + {4,{false, allow_values {1}, "NTTRVD tracer end-point depth scaling not supported – value ignored"}}, // NTTRVD + {5,{false, allow_values {20}, "NSTRVD tracer end-point depth scaling not supported – value ignored"}}, // NSTRVD + }, + }, + { + "GRIDFILE", + { + {1,{false, allow_values {0}, "NGRID only default value of 0 supported – will continue"}}, // GRID + {2,{false, allow_values {1}, "NEGRID only default value of 1 supported – will continue"}}, // EGRID + }, + }, + { + "NETWORK", + { + {3,{false, allow_values {20}, "NBCMAX option is not used and should be defaulted– value ignored"}}, // NBCMAX + }, + }, + { + "NNC", + { + {8,{false, allow_values {0}, "ISATNUM1 only default value of 0 supported – will continue"}}, // SIM_DEPENDENT1 + {9,{false, allow_values {0}, "ISATNUM2 only default value of 0 supported – will continue"}}, // SIM_DEPENDENT2 + {10,{false, allow_values {0}, "IPRSNUM1 only default value of 0 supported – will continue"}}, // PRESSURE_TABLE1 + {11,{false, allow_values {0}, "IPRSNUM2 only default value of 0 supported – will continue"}}, // PRESSURE_TABLE2 + }, + }, + { + "NUMRES", + { + {1,{true, allow_values {1}, "NUMRES only a value of one is supported – will STOP"}}, // NUM + }, + }, + { + "REGDIMS", + { + {5,{false, allow_values {0}, "NUSREG compositional TRACK regions not supported - value ignored"}}, // "MAX_ETRACK + {6,{false, allow_values {1}, "NTCREG COAL regions not supported - value ignored"}}, // NTCREG + {8,{false, allow_values {0}, "NWKDREG should be equal to 0 - value ignored"}}, // MAX_OPERATE_DWORK + {9,{false, allow_values {0}, "NWKIREG should be equal to 0 - value ignored"}}, // MAX_OPERATE_IWORK + }, + }, + { + "SPECGRID", + { + {4,{false, allow_values {1}, "NUMRES must be greater than or equal to 1"}}, // NUMRES + }, + }, + { + "TABDIMS", + { + {7,{false, allow_values {20}, "NRVPVT should be defaulted (20) – ignored as not used"}}, // MAX_RV_NODES" + {9,{false, allow_values {1}, "NMEOSR must be greater than or equal to 1"}}, // NUM_EOS_RES + {10,{false, allow_values {1}, "NMEOSS should be equal to 1 - ignored as not used"}}, // NUM_EOS_SURFACE + {12,{false, allow_values {1}, "MXNTHR should be equal to 1 - ignored as not used"}}, // MAX_THERMAL_REGIONS + {14,{false, allow_values {0}, "MXNPMR should be equal to 0 - ignored as not used"}}, // MAX_PRESSURE_MAINTAINANCE_REGIONS + {15,{false, allow_values {0}, "NTABKT should be defaulted (0) – ignored as not used"}}, // MAX_KVALUE_TABLES + {16,{false, allow_values {0}, "NTALPHA should be defaulted (0) - ignored as not used"}}, // NTALPHA + {17,{false, allow_values {10}, "NASPKA should be defaulted (10) - ignored as not used"}}, // ASPHALTENE_ASPKDAM_MAX_ROWS + {18,{false, allow_values {10}, "MXRAWG should be defaulted (10) - ignored as not used"}}, // ASPHALTENE_ASPREWG_MAX_ROWS + {19,{false, allow_values {10}, "MXRASO should be defaulted (10) - ignored as not used"}}, // ASPHALTENE_ASPVISO_MAX_ROWS + {21,{false, allow_values {5}, "MCASPP should be defaulted (5) - ignored as not used"}}, // ASPHALTENE_ASPPW2D_MAX_COLUMNS + {22,{false, allow_values {5}, "MRASPP should be defaulted (5) - ignored as not used"}}, // ASPHALTENE_ASPPW2D_MAX_ROWS + {23,{false, allow_values {5}, "MXRATF should be defaulted (5) - ignored as not used"}}, // ASPHALTENE_ASPWETF_MAX_ROWS + {24,{false, allow_values {0}, "MXNKVT should be defaulted (0) - ignored as not used"}}, // NUM_KVALUE_TABLES + }, + }, + { + "UDADIMS", + { + {2,{false, allow_values {0}, "IGNORED should be defaulted (0) – ignored as not used"}}, // IGNORED + }, + }, + { + "UDQPARAM", + { + {1,{false, allow_values {1}, "RSEED option not supported – value ignored"}}, // RANDOM_SEED + }, + }, + { + "WELLDIMS", + { + {5,{false, allow_values {5}, "MXSTAGE option not supported – value ignored"}}, // MAX_STAGES + {6,{false, allow_values {10}, "MXSTRMS option not supported – value ignored"}}, // MAX_STREAMS + {7,{false, allow_values {5}, "MXMIS option not supported – value ignored"}}, // MAX_MIXTURES + {8,{false, allow_values {4}, "MXSEPS option not supported – value ignored"}}, // MAX_SEPARATORS + {9,{false, allow_values {3}, "MXCOMPS option not supported – value ignored"}}, // MAX_MIXTURE_ITEMS + {10,{false, allow_values {0}, "MXDOCOMP option not supported – value ignored"}}, // MAX_COMPLETION_X + {11,{false, allow_values {1}, "MXWSLIST option not supported – value ignored"}}, // MAX_WELLIST_PR_WELL + {12,{false, allow_values {1}, "MXWLISTS option not supported – value ignored"}}, // MAX_DYNAMIC_WELLIST + {13,{false, allow_values {10}, "MXWSECD option not supported – value ignored"}}, // MAX_SECONDARY_WELLS + {14,{false, allow_values {201}, "MXNGPP option not supported – value ignored"}}, // NO_JASON_ENTRY + }, + }, + }; - return partially_supported_keywords_double; + return partially_supported_keywords_int; +} + +template <> +const KeywordValidation::PartiallySupportedKeywords& +partiallySupported() +{ + static const KeywordValidation::PartiallySupportedKeywords partially_supported_keywords_double = { + { + "AQUCON", + { + {12,{false, allow_values {1}, "VEOPT1 Vertical Equilibrium option one– not used"}}, // VEFRAC + {13,{false, allow_values {1}, "VEOPI2 Vertical Equilibrium option two– not used"}}, // VEFRACP + }, + }, + { + "AQUCT", + { + {12,{false, allow_values {0}, "SALTCON option is not used and should be defaulted – value ignored"}}, // INI_SALT + {13,{false, allow_values {}, "TEMP option is not used and should be defaulted – value ignored"}}, // TEMP_AQUIFER + }, + }, + { + "EDITNNC", + { + {14,{false, allow_values {0}, "DIFFNNC not supported – will continue"}}, // DIFFM + }, + }, + { + "EHYSTR", + { + {1,{false, allow_values {0.1}, "HYSTRCP option not supported – value ignored"}}, // curvature_caplillary_pressure_hyst + {3,{false, allow_values {1.00}, "HYSTREL is not supported and is ignored"}}, // curvature_param_killough_wetting + {4,{false, allow_values {0.1}, "HYSTSGR is not supported and is ignored"}}, // mod_param_trapped + {12,{false, allow_values {0}, "NOTUSED and is ignored"}}, // threshold_saturation + }, + }, + { + "MULTFLT", + { + {3,{false, allow_values {}, "FLT-DIF the diffusivity multiplier option is not supported – will continue"}}, // NOT_DEFINED + }, + }, + { + "NNC", + { + {14,{false, allow_values {0}, "DIFFNNC not supported – will continue"}}, // DIFFUSIVITY + {15,{false, allow_values {0}, "DISPNNC not supported – will continue"}}, // SIM_DEPENDENT3 + {16,{false, allow_values {0}, "AREANNC not supported – will continue"}}, // VDFLOW_AREA + {17,{false, allow_values {0}, "PERMNNC only default value of 0 supported – will continue"}}, // VDFLOW_PERM + }, + }, + { + "ROCKCOMP", + { + {4,{false, allow_values {0}, "CARKZEXP transmissibility dependent on porosity model is not supported"}}, // CARKZEXP + }, + }, + }; + + return partially_supported_keywords_double; } } // namespace Opm::FlowKeywordValidation diff --git a/opm/simulators/utils/UnsupportedFlowKeywords.cpp b/opm/simulators/utils/UnsupportedFlowKeywords.cpp index 1430cbc518..c5771b7de9 100644 --- a/opm/simulators/utils/UnsupportedFlowKeywords.cpp +++ b/opm/simulators/utils/UnsupportedFlowKeywords.cpp @@ -425,7 +425,6 @@ const KeywordValidation::UnsupportedKeywords& unsupportedKeywords() {"NORSSPEC", {false, std::nullopt}}, {"NOWARN", {false, std::nullopt}}, {"NSTACK", {false, std::nullopt}}, - {"NUMRES", {false, std::nullopt}}, {"NWATREM", {false, std::nullopt}}, {"NXFIN", {false, std::nullopt}}, {"NYFIN", {false, std::nullopt}},