#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(
wellPathName, fracture->name(), fracTemplate->name(), fracture->fractureMD());
reportItem.setUnitSystem(fracTemplate->fractureTemplateUnit());
reportItem.setPressureDepletionParameters(performPressureDepletionScaling ? "True" : "False",
reportItem.setPressureDepletionParameters(performPressureDepletionScaling,
caf::AppEnum<PressureDepletionWBHPSource>::uiTextFromIndex(pdParams.wbhpSource),
pdParams.userWBHP, minPressureDrop, maxPressureDrop);
pdParams.userWBHP, currentWellPressure, minPressureDrop, maxPressureDrop);
RicExportFractureCompletionsImpl::calculateAndSetReportItemData(
allCompletionsForOneFracture, eclToFractureCalc, reportItem);

View File

@@ -32,7 +32,6 @@ RicWellPathFractureReportItem::RicWellPathFractureReportItem(const QString& well
: m_wellPathNameForExport(wellPathName)
, m_wellPathFracture(fractureName)
, m_wellPathFractureTemplate(fractureTemplateName)
, m_pressureDepletionScalingString()
, m_mesuredDepth(measuredDepth)
, m_transmissibility(0.0)
, m_connectionCount(0)
@@ -43,6 +42,9 @@ RicWellPathFractureReportItem::RicWellPathFractureReportItem(const QString& well
, m_xf(0.0)
, m_h(0.0)
, m_km(0.0)
, m_performPressureDepletionScaling(false)
, m_pressureDepletionUserWBHP(0.0)
, m_pressureDepletionActualWBHP(0.0)
, m_pressureDepletionMinPressureDrop(-1.0)
, m_pressureDepletionMaxPressureDrop(-1.0)
{
@@ -112,22 +114,6 @@ QString RicWellPathFractureReportItem::fractureTemplateName() const
return m_wellPathFractureTemplate;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RicWellPathFractureReportItem::pressureDepletionScaling() const
{
return m_pressureDepletionScalingString;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QString RicWellPathFractureReportItem::pressureDepletionWBHPString() const
{
return m_pressureDepletionWBHPString;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -139,13 +125,14 @@ 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_pressureDepletionWBHPString = wbhpString;
m_pressureDepletionUserWBHP = userWBHP;
m_pressureDepletionMinPressureDrop = minPressureDrop;
m_pressureDepletionMaxPressureDrop = maxPressureDrop;
m_performPressureDepletionScaling = performPDDScaling;
m_pressureDepletionWBHPString = wbhpString;
m_pressureDepletionUserWBHP = userWBHP;
m_pressureDepletionActualWBHP = actualWBHP;
m_pressureDepletionMinPressureDrop = minPressureDrop;
m_pressureDepletionMaxPressureDrop = maxPressureDrop;
}
//--------------------------------------------------------------------------------------------------
@@ -252,6 +239,22 @@ double RicWellPathFractureReportItem::kmxf() const
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;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
double RicWellPathFractureReportItem::pressureDepletionActualWBHP() const
{
return m_pressureDepletionActualWBHP;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------

View File

@@ -35,13 +35,11 @@ public:
void setHeightAndHalfLength(double height, double halfLength);
void setAreaWeightedTransmissibility(double transmissibility);
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 fractureName() const;
QString fractureTemplateName() const;
QString pressureDepletionScaling() const;
QString pressureDepletionWBHPString() const;
RiaEclipseUnitTools::UnitSystem unitSystem() const;
@@ -59,9 +57,12 @@ public:
double km() const;
double kmxf() const;
double pressureDepletionUserWBHP() const;
double pressureDepletionMinPressureDrop() const;
double pressureDepletionMaxPressureDrop() const;
bool performPressureDepletionScaling() const;
QString pressureDepletionWBHPString() const;
double pressureDepletionUserWBHP() const;
double pressureDepletionActualWBHP() const;
double pressureDepletionMinPressureDrop() const;
double pressureDepletionMaxPressureDrop() const;
bool operator < (const RicWellPathFractureReportItem& other) const;
@@ -70,8 +71,6 @@ private:
QString m_wellPathNameForExport;
QString m_wellPathFracture;
QString m_wellPathFractureTemplate;
QString m_pressureDepletionScalingString;
QString m_pressureDepletionWBHPString;
double m_mesuredDepth;
double m_transmissibility;
@@ -84,8 +83,11 @@ private:
double m_xf;
double m_h;
double m_km;
double m_pressureDepletionUserWBHP;
double m_pressureDepletionMinPressureDrop;
double m_pressureDepletionMaxPressureDrop;
bool m_performPressureDepletionScaling;
QString m_pressureDepletionWBHPString;
double m_pressureDepletionUserWBHP;
double m_pressureDepletionActualWBHP;
double m_pressureDepletionMinPressureDrop;
double m_pressureDepletionMaxPressureDrop;
};

View File

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