mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#5706 Refactored EnsembleParameter usage.
Cache the list in SummaryCaseCollection Removed the name, EnsembleParameter pair usage Add operator< to be able to insert them in a set
This commit is contained in:
@@ -6,7 +6,18 @@
|
||||
|
||||
#include <QDebug>
|
||||
|
||||
class RimSummaryCaseCollection_TESTER
|
||||
{
|
||||
public:
|
||||
static void test1();
|
||||
};
|
||||
|
||||
TEST( RimSummaryCaseCollection, EnsembleParameter )
|
||||
{
|
||||
RimSummaryCaseCollection_TESTER::test1();
|
||||
}
|
||||
|
||||
void RimSummaryCaseCollection_TESTER::test1()
|
||||
{
|
||||
std::random_device rd;
|
||||
std::mt19937 gen( rd() );
|
||||
@@ -15,7 +26,7 @@ TEST( RimSummaryCaseCollection, EnsembleParameter )
|
||||
std::uniform_int_distribution<size_t> countDistribution( 1u, 1000u );
|
||||
size_t N = 1000;
|
||||
|
||||
std::vector<EnsembleParameter::NameParameterPair> parameters;
|
||||
std::vector<EnsembleParameter> parameters;
|
||||
for ( size_t i = 0; i < N; ++i )
|
||||
{
|
||||
EnsembleParameter param;
|
||||
@@ -41,19 +52,20 @@ TEST( RimSummaryCaseCollection, EnsembleParameter )
|
||||
double normStdDev = param.normalizedStdDeviation();
|
||||
EXPECT_GE( normStdDev, 0.0 );
|
||||
EXPECT_LE( normStdDev, std::sqrt( 2.0 ) );
|
||||
parameters.push_back( std::make_pair( QString( "%1" ).arg( i ), param ) );
|
||||
param.name = QString( "%1" ).arg( i );
|
||||
parameters.push_back( param );
|
||||
}
|
||||
size_t previousSize = parameters.size();
|
||||
EnsembleParameter::sortByBinnedVariation( parameters );
|
||||
RimSummaryCaseCollection::sortByBinnedVariation( parameters );
|
||||
size_t currentSize = parameters.size();
|
||||
EXPECT_EQ( previousSize, currentSize );
|
||||
|
||||
int currentVariation = (int)EnsembleParameter::HIGH_VARIATION;
|
||||
for ( const EnsembleParameter::NameParameterPair& nameParamPair : parameters )
|
||||
for ( const EnsembleParameter& nameParamPair : parameters )
|
||||
{
|
||||
EXPECT_GE( nameParamPair.second.variationBin, (int)EnsembleParameter::LOW_VARIATION );
|
||||
EXPECT_LE( nameParamPair.second.variationBin, (int)EnsembleParameter::HIGH_VARIATION );
|
||||
EXPECT_LE( nameParamPair.second.variationBin, currentVariation );
|
||||
currentVariation = nameParamPair.second.variationBin;
|
||||
EXPECT_GE( nameParamPair.variationBin, (int)EnsembleParameter::LOW_VARIATION );
|
||||
EXPECT_LE( nameParamPair.variationBin, (int)EnsembleParameter::HIGH_VARIATION );
|
||||
EXPECT_LE( nameParamPair.variationBin, currentVariation );
|
||||
currentVariation = nameParamPair.variationBin;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user