mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#1554 Implementing handling of infinite/finite conductivity in fracture during transmissibility calculation. Setting default value to finite conductivity (in fracture templates).
This commit is contained in:
parent
8679af2dbc
commit
f46e31e673
@ -56,6 +56,9 @@ std::vector<RigCompletionData> RicExportFractureCompletionsImpl::generateFractur
|
||||
|
||||
for (RimFracture* fracture : fracturesAlongWellPath)
|
||||
{
|
||||
|
||||
bool fractureFiniteCond = (fracture->attachedFractureDefinition()->fractureConductivity() == RimFractureTemplate::FINITE_CONDUCTIVITY);
|
||||
|
||||
using CellIdxSpace = RigTransmissibilityCondenser::CellAddress;
|
||||
|
||||
RimFractureTemplate* fracTemplate = fracture->attachedFractureDefinition();
|
||||
@ -84,16 +87,28 @@ std::vector<RigCompletionData> RicExportFractureCompletionsImpl::generateFractur
|
||||
size_t stimPlanCellIndex = fractureGrid->getGlobalIndexFromIJ(fractureCell.getI(), fractureCell.getJ());
|
||||
|
||||
for (size_t i = 0; i < fractureCellContributingEclipseCells.size(); i++)
|
||||
{
|
||||
if (fractureFiniteCond)
|
||||
{
|
||||
transCondenser.addNeighborTransmissibility({ true, CellIdxSpace::ECLIPSE, fractureCellContributingEclipseCells[i] },
|
||||
{ false, CellIdxSpace::STIMPLAN, stimPlanCellIndex },
|
||||
fractureCellContributingEclipseCellTransmissibilities[i]);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
transCondenser.addNeighborTransmissibility({ true, CellIdxSpace::ECLIPSE, fractureCellContributingEclipseCells[i] },
|
||||
{ true, CellIdxSpace::WELL, 1 },
|
||||
fractureCellContributingEclipseCellTransmissibilities[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//////
|
||||
// Calculate Transmissibility in the fracture: From one StimPlan Cell to the other
|
||||
|
||||
if (fractureFiniteCond)
|
||||
{
|
||||
for (size_t i = 0; i < fractureGrid->iCellCount(); i++)
|
||||
{
|
||||
for (size_t j = 0; j < fractureGrid->jCellCount(); j++)
|
||||
@ -144,10 +159,13 @@ std::vector<RigCompletionData> RicExportFractureCompletionsImpl::generateFractur
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/////
|
||||
// Calculate transmissibility into the well
|
||||
|
||||
if (fractureFiniteCond)
|
||||
{
|
||||
////
|
||||
//If fracture has orientation Azimuth or Transverse, assume only radial inflow
|
||||
if (fracture->attachedFractureDefinition()->orientation() == RimFractureTemplate::AZIMUTH
|
||||
@ -216,7 +234,7 @@ std::vector<RigCompletionData> RicExportFractureCompletionsImpl::generateFractur
|
||||
totalWellTrans);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/////
|
||||
// Insert total transmissibility from eclipse-cell to well for this fracture into the map
|
||||
|
@ -78,7 +78,7 @@ RimFractureTemplate::RimFractureTemplate(void)
|
||||
perforationEfficiency.uiCapability()->setUiEditorTypeName(caf::PdmUiDoubleSliderEditor::uiEditorTypeName());
|
||||
CAF_PDM_InitField(&wellDiameter, "wellDiameter", 0.216, "Well Diameter at Fracture", "", "", "");
|
||||
|
||||
CAF_PDM_InitField(&fractureConductivity, "FractureCondictivity", caf::AppEnum<FracConductivityEnum>(INFINITE_CONDUCTIVITY), "Conductivity in Fracture", "", "", "");
|
||||
CAF_PDM_InitField(&fractureConductivity, "FractureCondictivity", caf::AppEnum<FracConductivityEnum>(FINITE_CONDUCTIVITY), "Conductivity in Fracture", "", "", "");
|
||||
|
||||
CAF_PDM_InitFieldNoDefault(&m_fractureContainmentField, "fractureContainmentField", "Fracture Containment", "", "", "");
|
||||
m_fractureContainmentField = new RimFractureContainment();
|
||||
|
Loading…
Reference in New Issue
Block a user