Add reference well to well log extraction curve eclipse case (#9516)

This commit is contained in:
Jørgen Herje
2022-11-30 23:13:39 +01:00
committed by GitHub
parent eb390100bd
commit 278828b08f
13 changed files with 450 additions and 113 deletions

View File

@@ -20,6 +20,9 @@
#pragma once
#include "RigWbsParameter.h"
#include "RimEclipseCase.h"
#include "RimGeoMechCase.h"
#include "RimWellLogCurve.h"
#include "cafPdmChildField.h"
@@ -137,4 +140,28 @@ protected:
caf::PdmField<bool> m_addDateToCurveName;
std::vector<const RigWellPath*> m_wellPathsWithExtractors;
private:
struct WellLogExtractionCurveData
{
std::vector<double> values = std::vector<double>();
std::vector<double> measuredDepthValues = std::vector<double>();
std::vector<double> tvDepthValues = std::vector<double>();
double rkbDiff = 0.0;
RiaDefines::DepthUnitType depthUnit = RiaDefines::DepthUnitType::UNIT_METER;
QString xUnits = RiaWellLogUnitTools<double>::noUnitString();
};
private:
WellLogExtractionCurveData extractEclipseData( RimEclipseCase* eclipseCase, bool* isUsingPseudoLength );
WellLogExtractionCurveData extractGeomData( RimGeoMechCase* geomCase,
bool* isUsingPseudoLength,
bool performDataSmoothing = false,
double smoothingThreshold = -1.0 );
void adjustWellDepthValuesToReferenceWell( std::vector<double>& rMeasuredDepthValues,
std::vector<double>& rTvDepthValues,
const std::vector<double>& indexKValues,
const std::vector<double>& refWellMeasuredDepthValues,
const std::vector<double>& refWellTvDepthValues,
const std::vector<double>& refWellIndexKValues );
};