diff --git a/ApplicationCode/ReservoirDataModel/RigEclipseNativeStatCalc.cpp b/ApplicationCode/ReservoirDataModel/RigEclipseNativeStatCalc.cpp index a152114abf..1a0c0a1665 100644 --- a/ApplicationCode/ReservoirDataModel/RigEclipseNativeStatCalc.cpp +++ b/ApplicationCode/ReservoirDataModel/RigEclipseNativeStatCalc.cpp @@ -70,27 +70,9 @@ void RigEclipseNativeStatCalc::posNegClosestToZero(size_t timeStepIndex, double& { std::vector& values = m_resultsData->cellScalarResults(m_scalarResultIndex, timeStepIndex); - size_t i; - for (i = 0; i < values.size(); i++) - { - if (values[i] == HUGE_VAL) - { - continue; - } - - if (values[i] < pos && values[i] > 0) - { - pos = values[i]; - } - - if (values[i] > neg && values[i] < 0) - { - neg = values[i]; - } - } + RigStatisticsCalculator::posNegClosestToZero(values, pos, neg); } - //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- @@ -101,8 +83,6 @@ void RigEclipseNativeStatCalc::addDataToHistogramCalculator(size_t timeStepIndex histogramCalculator.addData(values); } - - //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- diff --git a/ApplicationCode/ResultStatisticsCache/RigStatisticsCalculator.cpp b/ApplicationCode/ResultStatisticsCache/RigStatisticsCalculator.cpp index 80270f146d..b02b942cb5 100644 --- a/ApplicationCode/ResultStatisticsCache/RigStatisticsCalculator.cpp +++ b/ApplicationCode/ResultStatisticsCache/RigStatisticsCalculator.cpp @@ -87,3 +87,28 @@ void RigStatisticsCalculator::addDataToHistogramCalculator(RigHistogramCalculato } } +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RigStatisticsCalculator::posNegClosestToZero(const std::vector& values, double& pos, double& neg) +{ + size_t i; + for (i = 0; i < values.size(); i++) + { + if (values[i] == HUGE_VAL) + { + continue; + } + + if (values[i] < pos && values[i] > 0) + { + pos = values[i]; + } + + if (values[i] > neg && values[i] < 0) + { + neg = values[i]; + } + } +} + diff --git a/ApplicationCode/ResultStatisticsCache/RigStatisticsCalculator.h b/ApplicationCode/ResultStatisticsCache/RigStatisticsCalculator.h index d3ab541e54..2ddfd404eb 100644 --- a/ApplicationCode/ResultStatisticsCache/RigStatisticsCalculator.h +++ b/ApplicationCode/ResultStatisticsCache/RigStatisticsCalculator.h @@ -46,4 +46,6 @@ public: virtual void addDataToHistogramCalculator(size_t timeStepIndex, RigHistogramCalculator& histogramCalculator) = 0; virtual size_t timeStepCount() = 0; + + static void posNegClosestToZero(const std::vector& values, double& pos, double& neg); };