Changed EclipseGridParser and CornerpointChopper to handle NTG

This commit is contained in:
Kari B. Skjerve
2013-10-08 16:33:19 +02:00
parent b5387bae69
commit d53e06ec7c
2 changed files with 22 additions and 3 deletions
@@ -53,6 +53,16 @@ namespace Opm
std::cout << "Parsed grdecl file with dimensions ("
<< dims_[0] << ", " << dims_[1] << ", " << dims_[2] << ")" << std::endl;
// Set NTG=1 if this is missing in file
if (!parser_.hasField("NTG")) {
std::vector<double> NTG_dummy(dims_[0]*dims_[1]*dims_[2],1.0);
parser_.setFloatingPointField("NTG", NTG_dummy);
has_NTG_ = false;
}
else {
has_NTG_ = true;
}
}
@@ -235,6 +245,7 @@ namespace Opm
filterIntegerField("ACTNUM", new_ACTNUM_);
filterDoubleField("PORO", new_PORO_);
filterDoubleField("NTG", new_NTG_);
filterDoubleField("PERMX", new_PERMX_);
filterDoubleField("PERMY", new_PERMY_);
filterDoubleField("PERMZ", new_PERMZ_);
@@ -262,6 +273,7 @@ namespace Opm
sp.setFloatingPointField("ZCORN", new_ZCORN_);
if (!new_ACTNUM_.empty()) sp.setIntegerField("ACTNUM", new_ACTNUM_);
if (!new_PORO_.empty()) sp.setFloatingPointField("PORO", new_PORO_);
if (!new_NTG_.empty()) sp.setFloatingPointField("NTG", new_NTG_);
if (!new_PERMX_.empty()) sp.setFloatingPointField("PERMX", new_PERMX_);
if (!new_PERMY_.empty()) sp.setFloatingPointField("PERMY", new_PERMY_);
if (!new_PERMZ_.empty()) sp.setFloatingPointField("PERMZ", new_PERMZ_);
@@ -305,12 +317,17 @@ namespace Opm
outputField(out, new_ACTNUM_, "ACTNUM");
outputField(out, new_PORO_, "PORO");
outputField(out, new_NTG_, "NTG");
outputField(out, new_PERMX_, "PERMX");
outputField(out, new_PERMY_, "PERMY");
outputField(out, new_PERMZ_, "PERMZ");
outputField(out, new_SATNUM_, "SATNUM");
}
bool hasNTG() {
return has_NTG_;
}
private:
EclipseGridParser parser_;
double botmax_;
@@ -321,6 +338,8 @@ namespace Opm
std::vector<double> new_ZCORN_;
std::vector<int> new_ACTNUM_;
std::vector<double> new_PORO_;
std::vector<double> new_NTG_;
bool has_NTG_;
std::vector<double> new_PERMX_;
std::vector<double> new_PERMY_;
std::vector<double> new_PERMZ_;
+3 -3
View File
@@ -101,7 +101,7 @@ namespace EclipseKeywords
string("DEPTHZ"), string("TOPS"), string("MAPAXES"),
string("SWCR"), string("SWL"), string("SWU"),
string("SOWCR"), string("KRW"), string("KRWR"),
string("KRO"), string("KRORW")
string("KRO"), string("KRORW"), string("NTG")
};
const int num_floating_fields = sizeof(floating_fields) / sizeof(floating_fields[0]);
@@ -131,7 +131,7 @@ namespace EclipseKeywords
string ignore_with_data[] =
{ string("MAPUNITS"), string("GRIDUNIT"),
string("NTG"), string("REGDIMS"), string("WELLDIMS"),
string("REGDIMS"), string("WELLDIMS"),
string("NSTACK"), string("SATNUM"),
string("RPTRST"), string("ROIP"), string("RWIP"),
string("RWSAT"), string("RPR"), string("WBHP"),
@@ -559,7 +559,7 @@ void EclipseGridParser::convertToSI()
key == "LAMEMOD" || key == "SHEARMOD" || key == "POISSONMOD" ||
key == "PWAVEMOD" || key == "MULTPV" || key == "PWAVEMOD" ||
key == "SGAS" || key == "SWAT" || key == "SOIL" ||
key == "SWCR" || key == "SWL" ||
key == "NTG" || key == "SWCR" || key == "SWL" ||
key == "SWU" || key == "SOWCR" || key == "KRW" ||
key == "KRWR" || key == "KRORW" || key == "KRO") {
unit = 1.0;