mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Fracture : Move code to cpp
This commit is contained in:
@@ -22,16 +22,63 @@
|
|||||||
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RigFractureCell::RigFractureCell(std::vector<cvf::Vec3d> polygon, size_t i, size_t j)
|
RigFractureCell::RigFractureCell(std::vector<cvf::Vec3d> polygon, size_t i, size_t j)
|
||||||
|
: m_polygon(polygon)
|
||||||
|
, m_i(i)
|
||||||
|
, m_j(j)
|
||||||
|
, m_concutivityValue(0.0)
|
||||||
{
|
{
|
||||||
m_polygon = polygon;
|
}
|
||||||
m_i = i;
|
|
||||||
m_j = j;
|
//--------------------------------------------------------------------------------------------------
|
||||||
m_concutivityValue = 0.0;
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
const std::vector<cvf::Vec3d>& RigFractureCell::getPolygon() const
|
||||||
|
{
|
||||||
|
return m_polygon;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
double RigFractureCell::getConductivtyValue() const
|
||||||
|
{
|
||||||
|
return m_concutivityValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
size_t RigFractureCell::getI() const
|
||||||
|
{
|
||||||
|
return m_i;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
size_t RigFractureCell::getJ() const
|
||||||
|
{
|
||||||
|
return m_j;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
bool RigFractureCell::hasNonZeroConductivity() const
|
||||||
|
{
|
||||||
|
return m_concutivityValue > 1e-7;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RigFractureCell::setConductivityValue(double cond)
|
||||||
|
{
|
||||||
|
m_concutivityValue = cond;
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@@ -39,8 +86,8 @@ RigFractureCell::RigFractureCell(std::vector<cvf::Vec3d> polygon, size_t i, size
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
double RigFractureCell::cellSizeX() const
|
double RigFractureCell::cellSizeX() const
|
||||||
{
|
{
|
||||||
//The polygon corners are always stored in the same order
|
// The polygon corners are always stored in the same order
|
||||||
if (m_polygon.size()>1) return (m_polygon[1] - m_polygon[0]).length();
|
if (m_polygon.size() > 1) return (m_polygon[1] - m_polygon[0]).length();
|
||||||
return cvf::UNDEFINED_DOUBLE;
|
return cvf::UNDEFINED_DOUBLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -49,8 +96,6 @@ double RigFractureCell::cellSizeX() const
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
double RigFractureCell::cellSizeZ() const
|
double RigFractureCell::cellSizeZ() const
|
||||||
{
|
{
|
||||||
if (m_polygon.size()>2) return (m_polygon[2] - m_polygon[1]).length();
|
if (m_polygon.size() > 2) return (m_polygon[2] - m_polygon[1]).length();
|
||||||
return cvf::UNDEFINED_DOUBLE;
|
return cvf::UNDEFINED_DOUBLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -33,13 +33,13 @@ class RigFractureCell
|
|||||||
public:
|
public:
|
||||||
RigFractureCell(std::vector<cvf::Vec3d> polygon, size_t i, size_t j);
|
RigFractureCell(std::vector<cvf::Vec3d> polygon, size_t i, size_t j);
|
||||||
|
|
||||||
const std::vector<cvf::Vec3d>& getPolygon() const { return m_polygon; }
|
const std::vector<cvf::Vec3d>& getPolygon() const;
|
||||||
double getConductivtyValue() const { return m_concutivityValue; }
|
double getConductivtyValue() const;
|
||||||
size_t getI() const { return m_i; }
|
size_t getI() const;
|
||||||
size_t getJ() const { return m_j; }
|
size_t getJ() const;
|
||||||
|
|
||||||
bool hasNonZeroConductivity() const { return m_concutivityValue > 1e-7; }
|
bool hasNonZeroConductivity() const;
|
||||||
void setConductivityValue(double cond) { m_concutivityValue = cond; }
|
void setConductivityValue(double cond);
|
||||||
|
|
||||||
double cellSizeX() const;
|
double cellSizeX() const;
|
||||||
double cellSizeZ() const;
|
double cellSizeZ() const;
|
||||||
@@ -50,4 +50,3 @@ private:
|
|||||||
size_t m_i;
|
size_t m_i;
|
||||||
size_t m_j;
|
size_t m_j;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -17,17 +17,58 @@
|
|||||||
/////////////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#include "RigFractureGrid.h"
|
#include "RigFractureGrid.h"
|
||||||
|
|
||||||
#include "RiaLogging.h"
|
#include "RiaLogging.h"
|
||||||
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RigFractureGrid::RigFractureGrid()
|
RigFractureGrid::RigFractureGrid()
|
||||||
: m_iCellCount(0),
|
: m_iCellCount(0)
|
||||||
m_jCellCount(0)
|
, m_jCellCount(0)
|
||||||
{
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RigFractureGrid::setFractureCells(std::vector<RigFractureCell> fractureCells)
|
||||||
|
{
|
||||||
|
m_fractureCells = fractureCells;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RigFractureGrid::setWellCenterFractureCellIJ(std::pair<size_t, size_t> wellCenterFractureCellIJ)
|
||||||
|
{
|
||||||
|
m_wellCenterFractureCellIJ = wellCenterFractureCellIJ;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RigFractureGrid::setICellCount(size_t iCellCount)
|
||||||
|
{
|
||||||
|
m_iCellCount = iCellCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RigFractureGrid::setJCellCount(size_t jCellCount)
|
||||||
|
{
|
||||||
|
m_jCellCount = jCellCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
const std::vector<RigFractureCell>& RigFractureGrid::fractureCells() const
|
||||||
|
{
|
||||||
|
return m_fractureCells;
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@@ -50,7 +91,7 @@ const RigFractureCell& RigFractureGrid::cellFromIndex(size_t index) const
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//TODO: Better error handling?
|
// TODO: Better error handling?
|
||||||
RiaLogging::error(QString("Requesting non-existent StimPlanCell"));
|
RiaLogging::error(QString("Requesting non-existent StimPlanCell"));
|
||||||
RiaLogging::error(QString("Returning cell 0, results will be invalid"));
|
RiaLogging::error(QString("Returning cell 0, results will be invalid"));
|
||||||
const RigFractureCell& cell = m_fractureCells[0];
|
const RigFractureCell& cell = m_fractureCells[0];
|
||||||
@@ -58,4 +99,26 @@ const RigFractureCell& RigFractureGrid::cellFromIndex(size_t index) const
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
size_t RigFractureGrid::jCellCount() const
|
||||||
|
{
|
||||||
|
return m_jCellCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
size_t RigFractureGrid::iCellCount() const
|
||||||
|
{
|
||||||
|
return m_iCellCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
std::pair<size_t, size_t> RigFractureGrid::fractureCellAtWellCenter() const
|
||||||
|
{
|
||||||
|
return m_wellCenterFractureCellIJ;
|
||||||
|
}
|
||||||
|
|||||||
@@ -31,23 +31,22 @@ class RigFractureCell;
|
|||||||
///
|
///
|
||||||
//==================================================================================================
|
//==================================================================================================
|
||||||
class RigFractureGrid : public cvf::Object
|
class RigFractureGrid : public cvf::Object
|
||||||
|
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
RigFractureGrid();
|
RigFractureGrid();
|
||||||
|
|
||||||
void setFractureCells(std::vector<RigFractureCell> fractureCells) { m_fractureCells = fractureCells; }
|
void setFractureCells(std::vector<RigFractureCell> fractureCells);
|
||||||
void setWellCenterFractureCellIJ(std::pair<size_t, size_t> wellCenterFractureCellIJ) { m_wellCenterFractureCellIJ = wellCenterFractureCellIJ; }
|
void setWellCenterFractureCellIJ(std::pair<size_t, size_t> wellCenterFractureCellIJ);
|
||||||
void setICellCount(size_t iCellCount) { m_iCellCount = iCellCount; }
|
void setICellCount(size_t iCellCount);
|
||||||
void setJCellCount(size_t jCellCount) { m_jCellCount = jCellCount; }
|
void setJCellCount(size_t jCellCount);
|
||||||
|
|
||||||
const std::vector<RigFractureCell>& fractureCells() const { return m_fractureCells; }
|
const std::vector<RigFractureCell>& fractureCells() const;
|
||||||
size_t getGlobalIndexFromIJ(size_t i, size_t j) const;
|
size_t getGlobalIndexFromIJ(size_t i, size_t j) const;
|
||||||
const RigFractureCell& cellFromIndex(size_t index) const;
|
const RigFractureCell& cellFromIndex(size_t index) const;
|
||||||
size_t jCellCount() const { return m_jCellCount; }
|
size_t jCellCount() const;
|
||||||
size_t iCellCount() const { return m_iCellCount; }
|
size_t iCellCount() const;
|
||||||
|
|
||||||
std::pair<size_t, size_t> fractureCellAtWellCenter() const { return m_wellCenterFractureCellIJ; }
|
std::pair<size_t, size_t> fractureCellAtWellCenter() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
std::vector<RigFractureCell> m_fractureCells;
|
std::vector<RigFractureCell> m_fractureCells;
|
||||||
@@ -55,4 +54,3 @@ private:
|
|||||||
size_t m_iCellCount;
|
size_t m_iCellCount;
|
||||||
size_t m_jCellCount;
|
size_t m_jCellCount;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user