mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Added faults to mock models
This commit is contained in:
@@ -248,6 +248,8 @@ void RigReservoirBuilderMock::populateReservoir(RigCaseData* eclipseCase)
|
|||||||
|
|
||||||
addWellData(eclipseCase, eclipseCase->mainGrid());
|
addWellData(eclipseCase, eclipseCase->mainGrid());
|
||||||
|
|
||||||
|
addFaults(eclipseCase);
|
||||||
|
|
||||||
// Set all cells active
|
// Set all cells active
|
||||||
RigActiveCellInfo* activeCellInfo = eclipseCase->activeCellInfo(RifReaderInterface::MATRIX_RESULTS);
|
RigActiveCellInfo* activeCellInfo = eclipseCase->activeCellInfo(RifReaderInterface::MATRIX_RESULTS);
|
||||||
activeCellInfo->setGlobalCellCount(eclipseCase->mainGrid()->cells().size());
|
activeCellInfo->setGlobalCellCount(eclipseCase->mainGrid()->cells().size());
|
||||||
@@ -479,3 +481,43 @@ void RigReservoirBuilderMock::addWellData(RigCaseData* eclipseCase, RigGridBase*
|
|||||||
eclipseCase->setWellResults(wells);
|
eclipseCase->setWellResults(wells);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RigReservoirBuilderMock::addFaults(RigCaseData* eclipseCase)
|
||||||
|
{
|
||||||
|
if (!eclipseCase) return;
|
||||||
|
|
||||||
|
RigMainGrid* grid = eclipseCase->mainGrid();
|
||||||
|
if (!grid) return;
|
||||||
|
|
||||||
|
cvf::Collection<RigFault> faults;
|
||||||
|
|
||||||
|
{
|
||||||
|
cvf::ref<RigFault> fault = new RigFault;
|
||||||
|
fault->setName("Fault A");
|
||||||
|
|
||||||
|
cvf::Vec3st min = cvf::Vec3st::ZERO;
|
||||||
|
cvf::Vec3st max(0, 0, cellDimension().z() - 2);
|
||||||
|
|
||||||
|
if (cellDimension().x() > 5)
|
||||||
|
{
|
||||||
|
min.x() = cellDimension().x() / 2;
|
||||||
|
max.x() = min.x() + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (cellDimension().y() > 5)
|
||||||
|
{
|
||||||
|
min.y() = cellDimension().y() / 2;
|
||||||
|
max.y() = cellDimension().y() / 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
cvf::CellRange cellRange(min, max);
|
||||||
|
|
||||||
|
fault->addCellRangeForFace(cvf::StructGridInterface::POS_I, cellRange);
|
||||||
|
faults.push_back(fault.p());
|
||||||
|
}
|
||||||
|
|
||||||
|
grid->setFaults(faults);
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -62,6 +62,7 @@ public:
|
|||||||
bool dynamicResult(RigCaseData* eclipseCase, const QString& result, size_t stepIndex, std::vector<double>* values );
|
bool dynamicResult(RigCaseData* eclipseCase, const QString& result, size_t stepIndex, std::vector<double>* values );
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
void addFaults(RigCaseData* eclipseCase);
|
||||||
void addWellData(RigCaseData* eclipseCase, RigGridBase* grid);
|
void addWellData(RigCaseData* eclipseCase, RigGridBase* grid);
|
||||||
static void appendCells(size_t nodeStartIndex, size_t cellCount, RigGridBase* hostGrid, std::vector<RigCell>& cells);
|
static void appendCells(size_t nodeStartIndex, size_t cellCount, RigGridBase* hostGrid, std::vector<RigCell>& cells);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user