mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#7871 StimPlan Model: Add check-box for EQLNUM pressure interpolation
This commit is contained in:
parent
56a86eee5f
commit
511439277a
@ -183,6 +183,7 @@ bool RimStimPlanModelPressureCalculator::extractValuesForProperty( RiaDefines::C
|
||||
values = results;
|
||||
}
|
||||
|
||||
bool useEqlnumForPressureInterpolation = stimPlanModel->stimPlanModelTemplate()->useEqlnumForPressureInterpolation();
|
||||
if ( curveProperty == RiaDefines::CurveProperty::INITIAL_PRESSURE )
|
||||
{
|
||||
auto hasMissingValues = []( const std::vector<double>& vec ) {
|
||||
@ -191,7 +192,7 @@ bool RimStimPlanModelPressureCalculator::extractValuesForProperty( RiaDefines::C
|
||||
|
||||
if ( hasMissingValues( values ) )
|
||||
{
|
||||
if ( !interpolateInitialPressureByEquilibrationRegion( curveProperty,
|
||||
if ( useEqlnumForPressureInterpolation && !interpolateInitialPressureByEquilibrationRegion( curveProperty,
|
||||
stimPlanModel,
|
||||
timeStep,
|
||||
measuredDepthValues,
|
||||
@ -210,7 +211,8 @@ bool RimStimPlanModelPressureCalculator::extractValuesForProperty( RiaDefines::C
|
||||
{
|
||||
std::vector<double> initialPressureValues = values;
|
||||
values.clear();
|
||||
if ( !interpolatePressureDifferenceByEquilibrationRegion( curveProperty,
|
||||
if ( useEqlnumForPressureInterpolation &&
|
||||
!interpolatePressureDifferenceByEquilibrationRegion( curveProperty,
|
||||
stimPlanModel,
|
||||
timeStep,
|
||||
measuredDepthValues,
|
||||
|
@ -95,6 +95,14 @@ RimStimPlanModelTemplate::RimStimPlanModelTemplate()
|
||||
|
||||
CAF_PDM_InitScriptableFieldNoDefault( &m_staticEclipseCase, "StaticEclipseCase", "Static Case", "", "", "" );
|
||||
|
||||
CAF_PDM_InitField( &m_useEqlnumForPressureInterpolation,
|
||||
"UseEqlNumForPressureInterpolation",
|
||||
true,
|
||||
"Use EQLNUM For Pressure Interpolation",
|
||||
"",
|
||||
"",
|
||||
"" );
|
||||
|
||||
CAF_PDM_InitScriptableField( &m_defaultPorosity,
|
||||
"DefaultPorosity",
|
||||
RiaDefines::defaultPorosity(),
|
||||
@ -312,6 +320,7 @@ void RimStimPlanModelTemplate::defineUiOrdering( QString uiConfigName, caf::PdmU
|
||||
pressureDataSourceGroup->add( &m_useTableForInitialPressure, { true, 2, 1 } );
|
||||
pressureDataSourceGroup->add( &m_editPressureTable, { false, 1, 0 } );
|
||||
pressureDataSourceGroup->add( &m_useTableForPressure );
|
||||
pressureDataSourceGroup->add( &m_useEqlnumForPressureInterpolation );
|
||||
m_initialPressureEclipseCase.uiCapability()->setUiReadOnly( m_useTableForInitialPressure() );
|
||||
|
||||
caf::PdmUiOrdering* defaultsGroup = uiOrdering.addNewGroup( "Defaults" );
|
||||
@ -912,3 +921,11 @@ bool RimStimPlanModelTemplate::usePressureTableForProperty( RiaDefines::CurvePro
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
bool RimStimPlanModelTemplate::useEqlnumForPressureInterpolation() const
|
||||
{
|
||||
return m_useEqlnumForPressureInterpolation;
|
||||
}
|
||||
|
@ -118,6 +118,8 @@ public:
|
||||
|
||||
bool usePressureTableForProperty( RiaDefines::CurveProperty curveProperty ) const;
|
||||
|
||||
bool useEqlnumForPressureInterpolation() const;
|
||||
|
||||
protected:
|
||||
void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override;
|
||||
|
||||
@ -148,6 +150,7 @@ private:
|
||||
caf::PdmPtrField<RimEclipseCase*> m_initialPressureEclipseCase;
|
||||
caf::PdmField<bool> m_useTableForInitialPressure;
|
||||
caf::PdmField<bool> m_useTableForPressure;
|
||||
caf::PdmField<bool> m_useEqlnumForPressureInterpolation;
|
||||
caf::PdmField<bool> m_editPressureTable;
|
||||
caf::PdmPtrField<RimEclipseCase*> m_staticEclipseCase;
|
||||
caf::PdmField<double> m_defaultPorosity;
|
||||
|
Loading…
Reference in New Issue
Block a user