#3032 Completion Export Fracture Header : Exclude truncated cells

This commit is contained in:
Magne Sjaastad
2018-09-11 14:28:31 +02:00
parent d5b10546b8
commit 251dc050d0
3 changed files with 13 additions and 6 deletions

View File

@@ -72,7 +72,7 @@ void RigEclipseToStimPlanCalculator::computeValues()
if (!fractureCell.hasNonZeroConductivity()) continue;
RigEclipseToStimPlanCellTransmissibilityCalculator eclToFractureTransCalc(
m_case, m_fractureTransform, m_fractureSkinFactor, m_cDarcy, fractureCell, reservoirCellIndicesOpenForFlow);
m_case, m_fractureTransform, m_fractureSkinFactor, m_cDarcy, fractureCell, reservoirCellIndicesOpenForFlow, m_fracture);
const std::vector<size_t>& fractureCellContributingEclipseCells =
eclToFractureTransCalc.globalIndiciesToContributingEclipseCells();

View File

@@ -29,6 +29,7 @@
#include "RigResultAccessorFactory.h"
#include "RimEclipseCase.h"
#include "RimFracture.h"
#include "RiaLogging.h"
@@ -43,12 +44,14 @@ RigEclipseToStimPlanCellTransmissibilityCalculator::RigEclipseToStimPlanCellTran
double skinFactor,
double cDarcy,
const RigFractureCell& stimPlanCell,
const std::set<size_t>& reservoirCellIndicesOpenForFlow)
const std::set<size_t>& reservoirCellIndicesOpenForFlow,
const RimFracture* fracture)
: m_case(caseToApply)
, m_fractureTransform(fractureTransform)
, m_fractureSkinFactor(skinFactor)
, m_cDarcy(cDarcy)
, m_stimPlanCell(stimPlanCell)
, m_fracture(fracture)
{
calculateStimPlanCellsMatrixTransmissibility(reservoirCellIndicesOpenForFlow);
}
@@ -191,9 +194,9 @@ void RigEclipseToStimPlanCellTransmissibilityCalculator::calculateStimPlanCellsM
std::vector<size_t> reservoirCellIndices = getPotentiallyFracturedCellsForPolygon(stimPlanPolygonTransformed);
for (size_t reservoirCellIndex : reservoirCellIndices)
{
if (reservoirCellIndicesOpenForFlow.count(reservoirCellIndex) == 0) continue;
const RigMainGrid* mainGrid = m_case->eclipseCaseData()->mainGrid();
if (!m_fracture->isEclipseCellOpenForFlow(mainGrid, reservoirCellIndicesOpenForFlow, reservoirCellIndex)) continue;
const RigMainGrid* mainGrid = m_case->eclipseCaseData()->mainGrid();
std::array<cvf::Vec3d, 8> hexCorners;
mainGrid->cellCornerVertices(reservoirCellIndex, hexCorners.data());

View File

@@ -31,6 +31,7 @@ class QString;
class RimEclipseCase;
class RigFractureCell;
class RigResultAccessor;
class RimFracture;
//==================================================================================================
///
@@ -47,7 +48,8 @@ public:
double skinFactor,
double cDarcy,
const RigFractureCell& stimPlanCell,
const std::set<size_t>& reservoirCellIndicesOpenForFlow);
const std::set<size_t>& reservoirCellIndicesOpenForFlow,
const RimFracture* fracture);
// These three vectors have the same size
const std::vector<size_t>& globalIndiciesToContributingEclipseCells() const;
@@ -69,7 +71,9 @@ private:
static cvf::ref<RigResultAccessor> createResultAccessor(const RimEclipseCase* eclipseCase, const QString& uiResultName);
private:
const RimEclipseCase* m_case;
const RimEclipseCase* m_case;
const RimFracture* m_fracture;
double m_cDarcy;
double m_fractureSkinFactor;
cvf::Mat4d m_fractureTransform;