6365 additional stimplan xml parameters (#7318)

* #6365 StimPlan XML: Parse formation dip and fracture orientation.
* #6365 Fracture: Use formation dip and fracture orientation from XML.
* #6365 Fracture: Compare case insensitive, use enum class

Co-authored-by: Magne Sjaastad <magne.sjaastad@ceetronsolutions.com>
This commit is contained in:
Kristian Bendiksen
2021-02-02 14:29:17 +01:00
committed by GitHub
parent 88b7a5807d
commit 751ebf7eb6
9 changed files with 673 additions and 30 deletions

View File

@@ -886,8 +886,10 @@ void RimFracture::setFractureTemplate( RimFractureTemplate* fractureTemplate )
RimStimPlanFractureTemplate* stimPlanFracTemplate = dynamic_cast<RimStimPlanFractureTemplate*>( fractureTemplate );
if ( stimPlanFracTemplate )
{
m_stimPlanTimeIndexToPlot = stimPlanFracTemplate->activeTimeStepIndex();
m_wellPathDepthAtFracture = stimPlanFracTemplate->wellPathDepthAtFracture();
m_stimPlanTimeIndexToPlot = stimPlanFracTemplate->activeTimeStepIndex();
m_wellPathDepthAtFracture = stimPlanFracTemplate->wellPathDepthAtFracture();
double templateFormationDip = stimPlanFracTemplate->formationDip();
if ( templateFormationDip != HUGE_VAL ) m_dip = templateFormationDip;
}
else
{

View File

@@ -218,6 +218,15 @@ void RimStimPlanFractureTemplate::setDefaultsBasedOnXMLfile()
else
RiaLogging::info( QString( "Property for polygon calculation not set." ) );
if ( m_stimPlanFractureDefinitionData->orientation() == RigStimPlanFractureDefinition::Orientation::TRANSVERSE )
{
m_orientationType = TRANSVERSE_WELL_PATH;
}
else if ( m_stimPlanFractureDefinitionData->orientation() == RigStimPlanFractureDefinition::Orientation::LONGITUDINAL )
{
m_orientationType = ALONG_WELL_PATH;
}
if ( !m_stimPlanFractureDefinitionData->conductivityResultNames().isEmpty() )
{
m_conductivityResultNameOnFile = m_stimPlanFractureDefinitionData->conductivityResultNames().front();
@@ -264,11 +273,12 @@ void RimStimPlanFractureTemplate::loadDataAndUpdate()
if ( m_readError ) return;
m_stimPlanFractureDefinitionData = RifStimPlanXmlReader::readStimPlanXMLFile( m_stimPlanFileName().path(),
m_conductivityScaleFactor(),
RifStimPlanXmlReader::MIRROR_AUTO,
fractureTemplateUnit(),
&errorMessage );
m_stimPlanFractureDefinitionData =
RifStimPlanXmlReader::readStimPlanXMLFile( m_stimPlanFileName().path(),
m_conductivityScaleFactor(),
RifStimPlanXmlReader::MirrorMode::MIRROR_AUTO,
fractureTemplateUnit(),
&errorMessage );
if ( errorMessage.size() > 0 ) RiaLogging::error( errorMessage );
if ( m_stimPlanFractureDefinitionData.notNull() )
@@ -1121,3 +1131,13 @@ QString RimStimPlanFractureTemplate::wellPathDepthAtFractureUiName() const
{
return "Well/Fracture Intersection Depth";
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
double RimStimPlanFractureTemplate::formationDip() const
{
if ( m_stimPlanFractureDefinitionData.isNull() ) return HUGE_VAL;
return m_stimPlanFractureDefinitionData->formationDip();
}

View File

@@ -99,6 +99,8 @@ public:
void convertToUnitSystem( RiaDefines::EclipseUnitSystem neededUnit ) override;
double formationDip() const;
protected:
void initAfterRead() override;