#12670 Skip completions with negative or invalid transmissibility

This commit is contained in:
Magne Sjaastad committed 2025-08-05 15:26:46 +02:00
1 parent 7e95a1f8cd
commit 91e628da24
1 file changed
+7 -3
@@ -23,6 +23,7 @@
#include "RiaFractureDefines.h"
#include "RiaLogging.h"
#include "RiaPreferencesSystem.h"
#include "RiaStatisticsTools.h"
#include "RiaWeightedMeanCalculator.h"
#include "ExportCommands/RicExportLgrFeature.h"
@@ -489,13 +490,16 @@ RigCompletionData RicWellPathExportCompletionDataFeatureImpl::combineEclipseCell
RiaWeightedMeanCalculator<double> diameterCalculator;
RiaWeightedMeanCalculator<double> skinFactorCalculator;
auto isValidTransmissibility = []( double transmissibility )
{ return RiaStatisticsTools::isValidNumber<double>( transmissibility ) && transmissibility >= 0.0; };
for ( const RigCompletionData& completion : completions )
{
double transmissibility = completion.transmissibility();
if ( transmissibility < 0.0 )
if ( !isValidTransmissibility( transmissibility ) )
{
QString errorMessage = QString( "Negative transmissibility value (%1) in cell %3" )
QString errorMessage = QString( "Invalid or negative transmissibility value (%1) in cell %3" )
.arg( transmissibility )
.arg( cellIndexIJK.oneBasedLocalCellIndexString() );
RiaLogging::error( errorMessage );
@@ -526,7 +530,7 @@ RigCompletionData RicWellPathExportCompletionDataFeatureImpl::combineEclipseCell
for ( const RigCompletionData& completion : completions )
{
// Error is reported in the loop above, so we can skip this completion
if ( completion.transmissibility() < 0.0 ) continue;
if ( !isValidTransmissibility( completion.transmissibility() ) ) continue;
resultCompletion.m_metadata.reserve( resultCompletion.m_metadata.size() + completion.m_metadata.size() );
resultCompletion.m_metadata.insert( resultCompletion.m_metadata.end(), completion.m_metadata.begin(), completion.m_metadata.end() );