#748 Added cell property sum to Info box statistics

This commit is contained in:
Magne Sjaastad
2016-08-04 14:15:59 +02:00
parent c3328003d0
commit 24abb27674
7 changed files with 110 additions and 8 deletions

View File

@@ -190,6 +190,51 @@ void RigStatisticsDataCache::meanCellScalarValues(size_t timeStepIndex, double&
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RigStatisticsDataCache::sumCellScalarValues(double& sumValue)
{
if (!m_statsAllTimesteps.m_isValueSumCalculated)
{
double aggregatedSum = 0.0;
for (size_t i = 0; i < m_statisticsCalculator->timeStepCount(); i++)
{
double valueSum = 0.0;
this->sumCellScalarValues(i, valueSum);
aggregatedSum += valueSum;
}
m_statsAllTimesteps.m_valueSum = aggregatedSum;
m_statsAllTimesteps.m_isValueSumCalculated = true;
}
sumValue = m_statsAllTimesteps.m_valueSum;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RigStatisticsDataCache::sumCellScalarValues(size_t timeStepIndex, double& sumValue)
{
if (timeStepIndex >= m_statsPrTs.size())
{
m_statsPrTs.resize(timeStepIndex + 1);
}
if (!m_statsPrTs[timeStepIndex].m_isValueSumCalculated)
{
double valueSum = 0.0;
size_t sampleCount = 0;
m_statisticsCalculator->valueSumAndSampleCount(timeStepIndex, valueSum, sampleCount);
m_statsPrTs[timeStepIndex].m_valueSum = valueSum;
m_statsPrTs[timeStepIndex].m_isValueSumCalculated = true;
}
sumValue = m_statsPrTs[timeStepIndex].m_valueSum;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------

View File

@@ -49,6 +49,9 @@ public:
void meanCellScalarValues(double& meanValue);
void meanCellScalarValues(size_t timeStepIndex, double& meanValue);
void sumCellScalarValues(double& sumValue);
void sumCellScalarValues(size_t timeStepIndex, double& sumValue);
const std::vector<size_t>& cellScalarValuesHistogram();
const std::vector<size_t>& cellScalarValuesHistogram(size_t timeStepIndex);
@@ -71,6 +74,8 @@ private:
m_isClosestToZeroCalculated = false;
m_p10 = HUGE_VAL;
m_p90 = HUGE_VAL;
m_valueSum = 0.0;
m_isValueSumCalculated = false;
}
double m_minValue;
@@ -87,6 +92,9 @@ private:
double m_p10;
double m_p90;
double m_valueSum;
bool m_isValueSumCalculated;
std::vector<size_t> m_histogram;
};