#13218 Fix display of relative permeability plots for LGR

This commit is contained in:
Magne Sjaastad committed 2025-11-21 21:38:04 +01:00
1 parent b54a335270
commit 526cae24d9
4 files changed
+94 -55

No files matched your search

@@ -29,18 +29,18 @@
#include "RigCaseCellResultsData.h"
#include "RigEclipseCaseData.h"
#include "RigEclipseResultAddress.h"
#include "RigFlowDiagInterfaceTools.h"
#include "RimEclipseCase.h"
#include "RimEclipseResultCase.h"
#include "RimFlowDiagSolution.h"
#include "opm/flowdiagnostics/DerivedQuantities.hpp"
#include "opm/utility/ECLPropertyUnitConversion.hpp"
#include "opm/utility/ECLPvtCurveCollection.hpp"
#include "opm/utility/ECLSaturationFunc.hpp"
#include "RimEclipseCase.h"
#include "RimEclipseResultCase.h"
#include "RimFlowDiagSolution.h"
#include "cafProgressInfo.h"
#include "cvfTrace.h"
@@ -661,7 +661,8 @@ RigFlowDiagDefines::FlowCharacteristicsResultFrame
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
std::vector<RigFlowDiagDefines::RelPermCurve> RigFlowDiagSolverInterface::calculateRelPermCurves( size_t activeCellIndex )
std::vector<RigFlowDiagDefines::RelPermCurve> RigFlowDiagSolverInterface::calculateRelPermCurves( const std::string& gridName,
size_t gridLocalActiveCellIndex )
{
using RawCurve = Opm::ECLSaturationFunc::RawCurve;
@@ -749,12 +750,11 @@ std::vector<RigFlowDiagDefines::RelPermCurve> RigFlowDiagSolverInterface::calcul
scaling.enable = static_cast<unsigned char>( 0 );
}
std::string gridID = "";
std::vector<Opm::FlowDiagnostics::Graph> graphArr =
m_opmFlowDiagStaticData->m_eclSaturationFunc->getSatFuncCurve( satFuncRequests,
m_opmFlowDiagStaticData->m_initData,
gridID,
static_cast<int>( activeCellIndex ),
gridName,
static_cast<int>( gridLocalActiveCellIndex ),
scaling );
// Process results - now includes both drainage and imbibition curves
@@ -79,7 +79,7 @@ public:
const std::vector<size_t>& selected_cell_indices,
double max_pv_fraction );
std::vector<RigFlowDiagDefines::RelPermCurve> calculateRelPermCurves( size_t activeCellIndex );
std::vector<RigFlowDiagDefines::RelPermCurve> calculateRelPermCurves( const std::string& gridName, size_t gridLocalActiveCellIndex );
std::vector<RigFlowDiagDefines::PvtCurve> calculatePvtCurves( RigFlowDiagDefines::PvtCurveType pvtCurveType, int pvtNum );
bool calculatePvtDynamicPropertiesFvf( int pvtNum, double pressure, double rs, double rv, double* bo, double* bg );