From 5b62184e2f47cb65e35dbcc00299df507343ce85 Mon Sep 17 00:00:00 2001 From: astridkbjorke Date: Mon, 3 Jul 2017 13:55:59 +0200 Subject: [PATCH] #1678 Giving an error message and not calculating transmissibiliities if using a stimPlan file without conductivity and finite conductivity in fracture. --- .../RicExportFractureCompletionsImpl.cpp | 30 ++++++++++++++++--- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/ApplicationCode/Commands/CompletionCommands/RicExportFractureCompletionsImpl.cpp b/ApplicationCode/Commands/CompletionCommands/RicExportFractureCompletionsImpl.cpp index e61c59704b..e8dfff4647 100644 --- a/ApplicationCode/Commands/CompletionCommands/RicExportFractureCompletionsImpl.cpp +++ b/ApplicationCode/Commands/CompletionCommands/RicExportFractureCompletionsImpl.cpp @@ -26,6 +26,7 @@ #include "RimFractureTemplate.h" #include "RimEclipseWell.h" #include "RimSimWellFractureCollection.h" +#include "RimStimPlanFractureTemplate.h" #include "RimSimWellFracture.h" #include "RigEclipseCaseData.h" @@ -120,14 +121,35 @@ std::vector RicExportFractureCompletionsImpl::generateCompdat for (RimFracture* fracture : fractures) { - bool useFiniteConductivityInFracture = (fracture->fractureTemplate()->conductivityType() == RimFractureTemplate::FINITE_CONDUCTIVITY); - - using CellIdxSpace = RigTransmissibilityCondenser::CellAddress; - + RimFractureTemplate* fracTemplate = fracture->fractureTemplate(); const RigFractureGrid* fractureGrid = fracTemplate->fractureGrid(); + //If finite cond chosen and conductivity not present in stimplan file, do not calculate trans for this fracture + if (useFiniteConductivityInFracture) + { + if (dynamic_cast(fracTemplate)) + { + RimStimPlanFractureTemplate* fracTemplateStimPlan = dynamic_cast(fracTemplate); + bool conductivityInFile = false; + for (auto parameterUnit : fracTemplateStimPlan->resultNamesWithUnit()) + { + if (parameterUnit.first == "CONDUCTIVITY") conductivityInFile = true; + } + if (!conductivityInFile) + { + RiaLogging::error("Trying to export completion data for stimPlan fracture without conductivity data for " + fracture->name()); + RiaLogging::error("No transmissibilities will be calculated for " + fracture->name()); + + continue; + + } + } + } + + + using CellIdxSpace = RigTransmissibilityCondenser::CellAddress; RigTransmissibilityCondenser transCondenser; //////