support MINPVF.

This commit is contained in:
Liu Ming 2015-02-09 11:27:10 +08:00
parent 3b742e0093
commit 6cd0c47b94

View File

@ -94,15 +94,20 @@ namespace Opm
// Get original grid cell volume. // Get original grid cell volume.
EclipseGridConstPtr eclgrid = eclState->getEclipseGrid(); EclipseGridConstPtr eclgrid = eclState->getEclipseGrid();
// Pore volume // Pore volume.
// New keywords MINPVF will add some PV due to OPM cpgrid process algorithm.
// But the default behavior is to get the comparable pore volume with ECLIPSE.
for (int cellIdx = 0; cellIdx < numCells; ++cellIdx) { for (int cellIdx = 0; cellIdx < numCells; ++cellIdx) {
int cartesianCellIdx = AutoDiffGrid::globalCell(grid)[cellIdx]; int cartesianCellIdx = AutoDiffGrid::globalCell(grid)[cellIdx];
pvol_[cellIdx] = pvol_[cellIdx] =
props.porosity()[cellIdx] props.porosity()[cellIdx]
* multpv[cartesianCellIdx] * multpv[cartesianCellIdx]
* ntg[cartesianCellIdx] * ntg[cartesianCellIdx];
* eclgrid->getCellVolume(cartesianCellIdx); if (eclgrid->isMinpvfActive()) {
// * AutoDiffGrid::cellVolume(grid, cellIdx); pvol_[cellIdx] *= AutoDiffGrid::cellVolume(grid, cellIdx);
} else {
pvol_[cellIdx] *= eclgrid->getCellVolume(cartesianCellIdx);
}
} }
// Transmissibility // Transmissibility