mirror of
https://github.com/OPM/ResInsight.git
synced 2026-10-16 10:22:15 -05:00
#6212 Fracture Model Plot: Add option use data from other curves when missing values
This commit is contained in:
1 parent
7d7840bb5f
commit
b8890defa2
9 files changed
+67
-15
No files matched your search
@@ -18,6 +18,7 @@
|
||||
|
||||
#include "RimFractureModelCurve.h"
|
||||
|
||||
#include "RiaFractureModelDefines.h"
|
||||
#include "RigEclipseCaseData.h"
|
||||
#include "RigEclipseWellLogExtractor.h"
|
||||
#include "RigResultAccessorFactory.h"
|
||||
@@ -61,6 +62,9 @@ void caf::AppEnum<RimFractureModelCurve::MissingValueStrategy>::setUp()
|
||||
addItem( RimFractureModelCurve::MissingValueStrategy::LINEAR_INTERPOLATION,
|
||||
"LINEAR_INTERPOLATION",
|
||||
"Linear interpolation" );
|
||||
addItem( RimFractureModelCurve::MissingValueStrategy::OTHER_CURVE_PROPERTY,
|
||||
"OTHER_CURVE_PROPERTY",
|
||||
"Other Curve Property" );
|
||||
|
||||
setDefault( RimFractureModelCurve::MissingValueStrategy::DEFAULT_VALUE );
|
||||
}
|
||||
@@ -279,12 +283,36 @@ void RimFractureModelCurve::performDataExtraction( bool* isUsingPseudoLength )
|
||||
replaceMissingValues( values, defaultValue );
|
||||
}
|
||||
}
|
||||
else
|
||||
else if ( m_missingValueStrategy() == RimFractureModelCurve::MissingValueStrategy::LINEAR_INTERPOLATION )
|
||||
{
|
||||
RiaLogging::info(
|
||||
QString( "Interpolating missing values for %1" ).arg( m_eclipseResultDefinition()->resultVariable() ) );
|
||||
RiaInterpolationTools::interpolateMissingValues( measuredDepthValues, values );
|
||||
}
|
||||
else
|
||||
{
|
||||
// Get the missing data from other curve
|
||||
RimFractureModelPlot* fractureModelPlot;
|
||||
firstAncestorOrThisOfType( fractureModelPlot );
|
||||
if ( !fractureModelPlot )
|
||||
{
|
||||
RiaLogging::error( QString( "No replacement data found for fracture model curve." ) );
|
||||
return;
|
||||
}
|
||||
|
||||
RiaDefines::CurveProperty replacementProperty = m_fractureModel->getDefaultPropertyForMissingValues(
|
||||
m_eclipseResultDefinition.value()->resultVariable() );
|
||||
|
||||
std::vector<double> initialValues;
|
||||
fractureModelPlot->getCurvePropertyValues( replacementProperty, initialValues );
|
||||
if ( initialValues.empty() )
|
||||
{
|
||||
RiaLogging::error( QString( "Empty replacement data found for fracture model curve." ) );
|
||||
return;
|
||||
}
|
||||
|
||||
replaceMissingValues( values, initialValues );
|
||||
}
|
||||
}
|
||||
|
||||
RiaEclipseUnitTools::UnitSystem eclipseUnitsType = eclipseCase->eclipseCaseData()->unitsType();
|
||||
|
||||
Reference in new issue
Block a user