mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#2659 Ensemble statistics. Small fixes
This commit is contained in:
parent
ca17037209
commit
2eee3f770b
@ -16,6 +16,9 @@
|
||||
//
|
||||
/////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include <cvfConfigCore.h>
|
||||
#include <cvfAssert.h>
|
||||
|
||||
#include "RiaTimeHistoryCurveResampler.h"
|
||||
|
||||
//QString tostring(const QDateTime& dt)
|
||||
@ -47,6 +50,7 @@ void RiaTimeHistoryCurveResampler::setCurveData(const std::vector<double>& value
|
||||
{
|
||||
CVF_ASSERT(values.size() == timeSteps.size());
|
||||
|
||||
clearData();
|
||||
m_originalValues = std::make_pair(values, timeSteps);
|
||||
}
|
||||
|
||||
|
@ -21,6 +21,8 @@
|
||||
#include "RimEnsembleStatisticsCase.h"
|
||||
|
||||
|
||||
static const std::vector<time_t> EMPTY_TIME_STEPS_VECTOR;
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -44,6 +46,7 @@ RifEnsembleStatisticsReader::RifEnsembleStatisticsReader(RimEnsembleStatisticsCa
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
const std::vector<time_t>& RifEnsembleStatisticsReader::timeSteps(const RifEclipseSummaryAddress& resultAddress) const
|
||||
{
|
||||
if (!resultAddress.isValid()) return EMPTY_TIME_STEPS_VECTOR;
|
||||
return m_ensembleStatCase->timeSteps();
|
||||
}
|
||||
|
||||
|
@ -213,7 +213,6 @@ void RimEnsembleCurveSet::loadDataAndUpdate(bool updateParentPlot)
|
||||
m_yValuesUiFilterResultSelection = m_yValuesCurveVariable->address();
|
||||
|
||||
updateAllCurves();
|
||||
updateStatisticsCurves(true);
|
||||
|
||||
if (updateParentPlot)
|
||||
{
|
||||
@ -404,6 +403,15 @@ EnsembleParameter::Type RimEnsembleCurveSet::currentEnsembleParameterType() cons
|
||||
return EnsembleParameter::TYPE_NONE;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimEnsembleCurveSet::updateAllCurves()
|
||||
{
|
||||
updateEnsembleCurves();
|
||||
updateStatisticsCurves(true);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -432,7 +440,6 @@ void RimEnsembleCurveSet::fieldChangedByUi(const caf::PdmFieldHandle* changedFie
|
||||
m_yValuesCurveVariable->setAddress(m_yValuesUiFilterResultSelection());
|
||||
|
||||
updateAllCurves();
|
||||
updateStatisticsCurves(true);
|
||||
|
||||
updateTextInPlot = true;
|
||||
}
|
||||
@ -441,7 +448,6 @@ void RimEnsembleCurveSet::fieldChangedByUi(const caf::PdmFieldHandle* changedFie
|
||||
// Empty address cache
|
||||
m_allAddressesCache.clear();
|
||||
updateAllCurves();
|
||||
updateStatisticsCurves(true);
|
||||
|
||||
updateTextInPlot = true;
|
||||
}
|
||||
@ -873,7 +879,7 @@ void RimEnsembleCurveSet::updateQwtPlotAxis()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimEnsembleCurveSet::updateAllCurves()
|
||||
void RimEnsembleCurveSet::updateEnsembleCurves()
|
||||
{
|
||||
RimSummaryPlot* plot = nullptr;
|
||||
firstAncestorOrThisOfType(plot);
|
||||
@ -881,6 +887,7 @@ void RimEnsembleCurveSet::updateAllCurves()
|
||||
|
||||
deleteEnsembleCurves();
|
||||
m_qwtPlotCurveForLegendText->detach();
|
||||
deleteStatisticsCurves();
|
||||
|
||||
RimSummaryCaseCollection* group = m_yValuesSummaryGroup();
|
||||
RimSummaryAddress* addr = m_yValuesCurveVariable();
|
||||
@ -930,6 +937,8 @@ void RimEnsembleCurveSet::updateStatisticsCurves(bool calculate = true)
|
||||
{
|
||||
using SAddr = RifEclipseSummaryAddress;
|
||||
|
||||
if (m_yValuesCurveVariable->address().category() == RifEclipseSummaryAddress::SUMMARY_INVALID) return;
|
||||
|
||||
if (calculate)
|
||||
{
|
||||
// Calculate
|
||||
|
@ -96,6 +96,7 @@ public:
|
||||
EnsembleParameter::Type currentEnsembleParameterType() const;
|
||||
|
||||
void updateAllCurves();
|
||||
void updateEnsembleCurves();
|
||||
void updateStatisticsCurves(bool calculate);
|
||||
RimEnsembleCurveSet* clone() const;
|
||||
void showCurves(bool show);
|
||||
|
@ -129,6 +129,8 @@ void RimEnsembleStatisticsCase::calculate(const std::vector<RimSummaryCase*> sum
|
||||
std::vector<time_t> allTimeSteps;
|
||||
std::vector<std::vector<double>> allValues;
|
||||
|
||||
if (!inputAddress.isValid()) return;
|
||||
|
||||
allValues.reserve(sumCases.size());
|
||||
for (const auto& sumCase : sumCases)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user