#3711 Report only pressure depletion tables when we do scaling.

This commit is contained in:
Gaute Lindkvist
2018-11-20 13:23:27 +01:00
parent b41217455f
commit d51f66179a
4 changed files with 73 additions and 51 deletions

View File

@@ -359,9 +359,9 @@ std::vector<RigCompletionData> RicExportFractureCompletionsImpl::generateCompdat
RicWellPathFractureReportItem reportItem( RicWellPathFractureReportItem reportItem(
wellPathName, fracture->name(), fracTemplate->name(), fracture->fractureMD()); wellPathName, fracture->name(), fracTemplate->name(), fracture->fractureMD());
reportItem.setUnitSystem(fracTemplate->fractureTemplateUnit()); reportItem.setUnitSystem(fracTemplate->fractureTemplateUnit());
reportItem.setPressureDepletionParameters(performPressureDepletionScaling ? "True" : "False", reportItem.setPressureDepletionParameters(performPressureDepletionScaling,
caf::AppEnum<PressureDepletionWBHPSource>::uiTextFromIndex(pdParams.wbhpSource), caf::AppEnum<PressureDepletionWBHPSource>::uiTextFromIndex(pdParams.wbhpSource),
pdParams.userWBHP, minPressureDrop, maxPressureDrop); pdParams.userWBHP, currentWellPressure, minPressureDrop, maxPressureDrop);
RicExportFractureCompletionsImpl::calculateAndSetReportItemData( RicExportFractureCompletionsImpl::calculateAndSetReportItemData(
allCompletionsForOneFracture, eclToFractureCalc, reportItem); allCompletionsForOneFracture, eclToFractureCalc, reportItem);

View File

@@ -32,7 +32,6 @@ RicWellPathFractureReportItem::RicWellPathFractureReportItem(const QString& well
: m_wellPathNameForExport(wellPathName) : m_wellPathNameForExport(wellPathName)
, m_wellPathFracture(fractureName) , m_wellPathFracture(fractureName)
, m_wellPathFractureTemplate(fractureTemplateName) , m_wellPathFractureTemplate(fractureTemplateName)
, m_pressureDepletionScalingString()
, m_mesuredDepth(measuredDepth) , m_mesuredDepth(measuredDepth)
, m_transmissibility(0.0) , m_transmissibility(0.0)
, m_connectionCount(0) , m_connectionCount(0)
@@ -43,6 +42,9 @@ RicWellPathFractureReportItem::RicWellPathFractureReportItem(const QString& well
, m_xf(0.0) , m_xf(0.0)
, m_h(0.0) , m_h(0.0)
, m_km(0.0) , m_km(0.0)
, m_performPressureDepletionScaling(false)
, m_pressureDepletionUserWBHP(0.0)
, m_pressureDepletionActualWBHP(0.0)
, m_pressureDepletionMinPressureDrop(-1.0) , m_pressureDepletionMinPressureDrop(-1.0)
, m_pressureDepletionMaxPressureDrop(-1.0) , m_pressureDepletionMaxPressureDrop(-1.0)
{ {
@@ -112,22 +114,6 @@ QString RicWellPathFractureReportItem::fractureTemplateName() const
return m_wellPathFractureTemplate; return m_wellPathFractureTemplate;
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RicWellPathFractureReportItem::pressureDepletionScaling() const
{
return m_pressureDepletionScalingString;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RicWellPathFractureReportItem::pressureDepletionWBHPString() const
{
return m_pressureDepletionWBHPString;
}
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
@@ -139,11 +125,12 @@ void RicWellPathFractureReportItem::setUnitSystem(RiaEclipseUnitTools::UnitSyste
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void RicWellPathFractureReportItem::setPressureDepletionParameters(QString scalingString, QString wbhpString, double userWBHP, double minPressureDrop, double maxPressureDrop) void RicWellPathFractureReportItem::setPressureDepletionParameters(bool performPDDScaling, QString wbhpString, double userWBHP, double actualWBHP, double minPressureDrop, double maxPressureDrop)
{ {
m_pressureDepletionScalingString = scalingString; m_performPressureDepletionScaling = performPDDScaling;
m_pressureDepletionWBHPString = wbhpString; m_pressureDepletionWBHPString = wbhpString;
m_pressureDepletionUserWBHP = userWBHP; m_pressureDepletionUserWBHP = userWBHP;
m_pressureDepletionActualWBHP = actualWBHP;
m_pressureDepletionMinPressureDrop = minPressureDrop; m_pressureDepletionMinPressureDrop = minPressureDrop;
m_pressureDepletionMaxPressureDrop = maxPressureDrop; m_pressureDepletionMaxPressureDrop = maxPressureDrop;
} }
@@ -252,6 +239,22 @@ double RicWellPathFractureReportItem::kmxf() const
return m_km * m_xf; return m_km * m_xf;
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RicWellPathFractureReportItem::performPressureDepletionScaling() const
{
return m_performPressureDepletionScaling;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RicWellPathFractureReportItem::pressureDepletionWBHPString() const
{
return m_pressureDepletionWBHPString;
}
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
@@ -260,6 +263,14 @@ double RicWellPathFractureReportItem::pressureDepletionUserWBHP() const
return m_pressureDepletionUserWBHP; return m_pressureDepletionUserWBHP;
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
double RicWellPathFractureReportItem::pressureDepletionActualWBHP() const
{
return m_pressureDepletionActualWBHP;
}
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------

View File

@@ -35,13 +35,11 @@ public:
void setHeightAndHalfLength(double height, double halfLength); void setHeightAndHalfLength(double height, double halfLength);
void setAreaWeightedTransmissibility(double transmissibility); void setAreaWeightedTransmissibility(double transmissibility);
void setUnitSystem(RiaEclipseUnitTools::UnitSystem unitSystem); void setUnitSystem(RiaEclipseUnitTools::UnitSystem unitSystem);
void setPressureDepletionParameters(QString scalingString, QString wbhpString, double userWBHP, double minPressureDrop, double maxPressureDrop); void setPressureDepletionParameters(bool performPressureDepletionScaling, QString wbhpString, double userWBHP, double actualWBHP, double minPressureDrop, double maxPressureDrop);
QString wellPathNameForExport() const; QString wellPathNameForExport() const;
QString fractureName() const; QString fractureName() const;
QString fractureTemplateName() const; QString fractureTemplateName() const;
QString pressureDepletionScaling() const;
QString pressureDepletionWBHPString() const;
RiaEclipseUnitTools::UnitSystem unitSystem() const; RiaEclipseUnitTools::UnitSystem unitSystem() const;
@@ -59,7 +57,10 @@ public:
double km() const; double km() const;
double kmxf() const; double kmxf() const;
bool performPressureDepletionScaling() const;
QString pressureDepletionWBHPString() const;
double pressureDepletionUserWBHP() const; double pressureDepletionUserWBHP() const;
double pressureDepletionActualWBHP() const;
double pressureDepletionMinPressureDrop() const; double pressureDepletionMinPressureDrop() const;
double pressureDepletionMaxPressureDrop() const; double pressureDepletionMaxPressureDrop() const;
@@ -70,8 +71,6 @@ private:
QString m_wellPathNameForExport; QString m_wellPathNameForExport;
QString m_wellPathFracture; QString m_wellPathFracture;
QString m_wellPathFractureTemplate; QString m_wellPathFractureTemplate;
QString m_pressureDepletionScalingString;
QString m_pressureDepletionWBHPString;
double m_mesuredDepth; double m_mesuredDepth;
double m_transmissibility; double m_transmissibility;
@@ -85,7 +84,10 @@ private:
double m_h; double m_h;
double m_km; double m_km;
bool m_performPressureDepletionScaling;
QString m_pressureDepletionWBHPString;
double m_pressureDepletionUserWBHP; double m_pressureDepletionUserWBHP;
double m_pressureDepletionActualWBHP;
double m_pressureDepletionMinPressureDrop; double m_pressureDepletionMinPressureDrop;
double m_pressureDepletionMaxPressureDrop; double m_pressureDepletionMaxPressureDrop;
}; };

View File

@@ -709,30 +709,39 @@ QString RicWellPathFractureTextReportFeatureImpl::createFracturePressureDepletio
std::vector<RifEclipseOutputTableColumn> header = { std::vector<RifEclipseOutputTableColumn> header = {
RifEclipseOutputTableColumn("Well"), RifEclipseOutputTableColumn("Well"),
RifEclipseOutputTableColumn("Fracture"), RifEclipseOutputTableColumn("Fracture"),
RifEclipseOutputTableColumn("PDD Scaling"),
RifEclipseOutputTableColumn("WBHP Source"), RifEclipseOutputTableColumn("WBHP Source"),
RifEclipseOutputTableColumn("User WBHP"), RifEclipseOutputTableColumn("User WBHP"),
RifEclipseOutputTableColumn("Actual WBHP"),
RifEclipseOutputTableColumn("Min Pressure Drop"), RifEclipseOutputTableColumn("Min Pressure Drop"),
RifEclipseOutputTableColumn("Max Pressure Drop") RifEclipseOutputTableColumn("Max Pressure Drop")
}; };
formatter.header(header); bool createdTable = false;
formatter.addHorizontalLine('-');
for (const auto& reportItem : wellPathFractureReportItems) for (const auto& reportItem : wellPathFractureReportItems)
{ {
if (reportItem.performPressureDepletionScaling())
{
if (!createdTable)
{
formatter.header(header);
formatter.addHorizontalLine('-');
createdTable = true;
}
formatter.add(reportItem.wellPathNameForExport()); formatter.add(reportItem.wellPathNameForExport());
formatter.add(reportItem.fractureName()); formatter.add(reportItem.fractureName());
formatter.add(reportItem.pressureDepletionScaling());
formatter.add(reportItem.pressureDepletionWBHPString()); formatter.add(reportItem.pressureDepletionWBHPString());
formatter.add(reportItem.pressureDepletionUserWBHP()); formatter.add(reportItem.pressureDepletionUserWBHP());
formatter.add(reportItem.pressureDepletionActualWBHP());
formatter.add(reportItem.pressureDepletionMinPressureDrop()); formatter.add(reportItem.pressureDepletionMinPressureDrop());
formatter.add(reportItem.pressureDepletionMaxPressureDrop()); formatter.add(reportItem.pressureDepletionMaxPressureDrop());
formatter.rowCompleted(); formatter.rowCompleted();
} }
}
if (createdTable)
{
formatter.tableCompleted(); formatter.tableCompleted();
}
return tableText; return tableText;
} }