diff --git a/ApplicationCode/Commands/CompletionExportCommands/RicWellPathExportCompletionDataFeatureImpl.cpp b/ApplicationCode/Commands/CompletionExportCommands/RicWellPathExportCompletionDataFeatureImpl.cpp index 58efe0524a..888a20b56f 100644 --- a/ApplicationCode/Commands/CompletionExportCommands/RicWellPathExportCompletionDataFeatureImpl.cpp +++ b/ApplicationCode/Commands/CompletionExportCommands/RicWellPathExportCompletionDataFeatureImpl.cpp @@ -1008,12 +1008,6 @@ void RicWellPathExportCompletionDataFeatureImpl::exportCompdatTableUsingFormatte for ( const RigCompletionData& data : completionData ) { - if ( data.transmissibility() == 0.0 || data.wpimult() == 0.0 ) - { - // Don't export completions without transmissibility - continue; - } - if ( currentCompletionType != data.completionType() ) { // The completions are sorted by completion type, write out a heading when completion type changes @@ -1032,6 +1026,13 @@ void RicWellPathExportCompletionDataFeatureImpl::exportCompdatTableUsingFormatte { formatter.comment( QString( "%1 : %2" ).arg( metadata.name ).arg( metadata.comment ) ); } + + if ( data.transmissibility() == 0.0 || data.wpimult() == 0.0 ) + { + // Don't export completions without transmissibility + continue; + } + formatter.add( data.wellName() ); if ( !gridName.isEmpty() ) diff --git a/ApplicationCode/ReservoirDataModel/RigTransmissibilityEquations.cpp b/ApplicationCode/ReservoirDataModel/RigTransmissibilityEquations.cpp index a87c1dd1e3..cc54d09602 100644 --- a/ApplicationCode/ReservoirDataModel/RigTransmissibilityEquations.cpp +++ b/ApplicationCode/ReservoirDataModel/RigTransmissibilityEquations.cpp @@ -35,6 +35,13 @@ double RigTransmissibilityEquations::wellBoreTransmissibilityComponent( double c { double K = cvf::Math::sqrt( permeabilityNormalDirection1 * permeabilityNormalDirection2 ); + const double lowerLimit = 1.0e-9; + if ( std::fabs( permeabilityNormalDirection1 * permeabilityNormalDirection2 ) < lowerLimit ) + { + // Guard further computations to avoid nan values + return 0.0; + } + double nominator = cDarcyForRelevantUnit * 2 * cvf::PI_D * K * cellPerforationVectorComponent; double peaceManRad = peacemanRadius( permeabilityNormalDirection1,