mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#1087 - pre-proto - Checking units of case and fractures in export, if mismatch is detected export is aborted.
This commit is contained in:
parent
41836a4930
commit
3fac46b1a9
@ -36,6 +36,7 @@
|
|||||||
#include <QFile>
|
#include <QFile>
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QTextStream>
|
#include <QTextStream>
|
||||||
|
#include <QDebug>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -61,6 +62,12 @@ RifEclipseExportTools::~RifEclipseExportTools()
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
bool RifEclipseExportTools::writeFracturesToTextFile(const QString& fileName, const std::vector< RimFracture*>& fractures, RimEclipseCase* caseToApply)
|
bool RifEclipseExportTools::writeFracturesToTextFile(const QString& fileName, const std::vector< RimFracture*>& fractures, RimEclipseCase* caseToApply)
|
||||||
{
|
{
|
||||||
|
if (!(unitsMatchCaseAndFractures(caseToApply, fractures)))
|
||||||
|
{
|
||||||
|
qDebug() << "ERROR: The case selected and relevant fractures does not have consistent unit system.";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
RiaApplication* app = RiaApplication::instance();
|
RiaApplication* app = RiaApplication::instance();
|
||||||
RimView* activeView = RiaApplication::instance()->activeReservoirView();
|
RimView* activeView = RiaApplication::instance()->activeReservoirView();
|
||||||
if (!activeView) return false;
|
if (!activeView) return false;
|
||||||
@ -131,6 +138,36 @@ bool RifEclipseExportTools::writeFracturesToTextFile(const QString& fileName, c
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
bool RifEclipseExportTools::unitsMatchCaseAndFractures(RimEclipseCase* caseToApply, const std::vector<RimFracture *>& fractures)
|
||||||
|
{
|
||||||
|
bool unitsMatch = true;
|
||||||
|
RigEclipseCaseData::UnitsType caseUnit = caseToApply->reservoirData()->unitsType();
|
||||||
|
for (RimFracture* fracture : fractures)
|
||||||
|
{
|
||||||
|
if (fracture->attachedFractureDefinition())
|
||||||
|
{
|
||||||
|
if ((fracture->attachedFractureDefinition()->fractureTemplateUnit) == RimFractureTemplate::UNITS_METRIC)
|
||||||
|
{
|
||||||
|
if (!(caseUnit == RigEclipseCaseData::UNITS_METRIC))
|
||||||
|
{
|
||||||
|
unitsMatch = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if ((fracture->attachedFractureDefinition()->fractureTemplateUnit) == RimFractureTemplate::UNITS_FIELD)
|
||||||
|
{
|
||||||
|
if (!(caseUnit == RigEclipseCaseData::UNITS_FIELD))
|
||||||
|
{
|
||||||
|
unitsMatch = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return unitsMatch;
|
||||||
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
@ -51,6 +51,8 @@ public:
|
|||||||
|
|
||||||
static bool writeFracturesToTextFile(const QString& fileName, const std::vector<RimFracture*>& fractures, RimEclipseCase* caseToApply);
|
static bool writeFracturesToTextFile(const QString& fileName, const std::vector<RimFracture*>& fractures, RimEclipseCase* caseToApply);
|
||||||
|
|
||||||
|
static bool unitsMatchCaseAndFractures(RimEclipseCase* caseToApply, const std::vector<RimFracture *>& fractures);
|
||||||
|
|
||||||
static void printCOMPDATvalues(QTextStream & out, RigFractureData &fracData, RimFracture* fracture, RimWellPath* wellPath, RimEclipseWell* simWell, const RigMainGrid* mainGrid);
|
static void printCOMPDATvalues(QTextStream & out, RigFractureData &fracData, RimFracture* fracture, RimWellPath* wellPath, RimEclipseWell* simWell, const RigMainGrid* mainGrid);
|
||||||
|
|
||||||
static void printBackgroundDataHeaderLine(QTextStream & out);
|
static void printBackgroundDataHeaderLine(QTextStream & out);
|
||||||
|
Loading…
Reference in New Issue
Block a user