Support MINPORV

Add support for MINPORV, which is an alias for MINPV. Also added additional checks, such that only one of MINPV, MINPORV and MINPVFIL can be active in the deck
This commit is contained in:
OPMUSER 2022-07-11 14:05:34 +08:00
parent bad915fdf5
commit a5cfafe4de
2 changed files with 12 additions and 3 deletions

View File

@ -345,7 +345,11 @@ EclipseGrid::EclipseGrid(const Deck& deck, const int * actnum)
}
if (deck.hasKeyword<ParserKeywords::MINPV>() && deck.hasKeyword<ParserKeywords::MINPVFIL>()) {
throw std::invalid_argument("Can not have both MINPV and MINPVFIL in deck.");
throw std::invalid_argument("Can not have both MINPV and MINPVFIL in the deck.");
} else if(deck.hasKeyword<ParserKeywords::MINPV>() && deck.hasKeyword<ParserKeywords::MINPORV>()) {
throw std::invalid_argument("Can not have both MINPV and MINPORV in the deck.");
} else if(deck.hasKeyword<ParserKeywords::MINPORV>() && deck.hasKeyword<ParserKeywords::MINPVFIL>()) {
throw std::invalid_argument("Can not have both MINPORV and MINPVFIL in the deck.");
}
m_minpvVector.resize(getCartesianSize(), 0.0);
@ -354,6 +358,11 @@ EclipseGrid::EclipseGrid(const Deck& deck, const int * actnum)
const auto& item = record.getItem<ParserKeywords::MINPV::VALUE>( );
std::fill(m_minpvVector.begin(), m_minpvVector.end(), item.getSIDouble(0));
m_minpvMode = MinpvMode::ModeEnum::EclSTD;
} else if (deck.hasKeyword<ParserKeywords::MINPORV>()) {
const auto& record = deck.get<ParserKeywords::MINPORV>( ).back().getRecord(0);
const auto& item = record.getItem<ParserKeywords::MINPORV::VALUE>( );
std::fill(m_minpvVector.begin(), m_minpvVector.end(), item.getSIDouble(0));
m_minpvMode = MinpvMode::ModeEnum::EclSTD;
} else if(deck.hasKeyword<ParserKeywords::MINPVV>()) {
// We should use the grid properties to support BOX, but then we need the eclipseState
const auto& record = deck.get<ParserKeywords::MINPVV>( ).back().getRecord(0);

View File

@ -6,8 +6,8 @@
"size": 1,
"items": [
{
"name": "MIN_PORE_VOL",
"value_type": "DOUBLE",
"name": "VALUE",
"value_type": "DOUBLE",
"dimension": "ReservoirVolume",
"default": 1e-06
}