mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#1487 Renaming functions for calculating transmissibilities. Simplifying names and using fractureCell instead of stimPlanCell in names
This commit is contained in:
parent
7f00de3e0b
commit
a1738d8e3a
@ -277,7 +277,7 @@ void RifFractureExportTools::exportWellPathFracturesToEclipseDataInputFile(const
|
|||||||
const RigFractureCell fractureCellNeighbourX = fractureGrid->cellFromIndex(fractureCellNeighbourXIndex);
|
const RigFractureCell fractureCellNeighbourX = fractureGrid->cellFromIndex(fractureCellNeighbourXIndex);
|
||||||
|
|
||||||
double horizontalTransToXneigbour =
|
double horizontalTransToXneigbour =
|
||||||
RigFractureTransmissibilityEquations::computeStimPlanCellTransmissibilityInFractureCenterToCenterForTwoCells(fractureCell.getConductivtyValue(),
|
RigFractureTransmissibilityEquations::centerToCenterFractureCellTrans(fractureCell.getConductivtyValue(),
|
||||||
fractureCell.cellSizeX(),
|
fractureCell.cellSizeX(),
|
||||||
fractureCell.cellSizeZ(),
|
fractureCell.cellSizeZ(),
|
||||||
fractureCellNeighbourX.getConductivtyValue(),
|
fractureCellNeighbourX.getConductivtyValue(),
|
||||||
@ -297,7 +297,7 @@ void RifFractureExportTools::exportWellPathFracturesToEclipseDataInputFile(const
|
|||||||
const RigFractureCell fractureCellNeighbourZ = fractureGrid->cellFromIndex(fractureCellNeighbourZIndex);
|
const RigFractureCell fractureCellNeighbourZ = fractureGrid->cellFromIndex(fractureCellNeighbourZIndex);
|
||||||
|
|
||||||
double verticalTransToZneigbour =
|
double verticalTransToZneigbour =
|
||||||
RigFractureTransmissibilityEquations::computeStimPlanCellTransmissibilityInFractureCenterToCenterForTwoCells(fractureCell.getConductivtyValue(),
|
RigFractureTransmissibilityEquations::centerToCenterFractureCellTrans(fractureCell.getConductivtyValue(),
|
||||||
fractureCell.cellSizeZ(),
|
fractureCell.cellSizeZ(),
|
||||||
fractureCell.cellSizeX(),
|
fractureCell.cellSizeX(),
|
||||||
fractureCellNeighbourZ.getConductivtyValue(),
|
fractureCellNeighbourZ.getConductivtyValue(),
|
||||||
@ -329,7 +329,7 @@ void RifFractureExportTools::exportWellPathFracturesToEclipseDataInputFile(const
|
|||||||
double radialTrans = 0.0;
|
double radialTrans = 0.0;
|
||||||
if (intersection.endpointCount)
|
if (intersection.endpointCount)
|
||||||
{
|
{
|
||||||
radialTrans = RigFractureTransmissibilityEquations::computeRadialTransmissibilityToWellinStimPlanCell(fractureWellCell.getConductivtyValue(),
|
radialTrans = RigFractureTransmissibilityEquations::fractureCellToWellRadialTrans(fractureWellCell.getConductivtyValue(),
|
||||||
fractureWellCell.cellSizeX(),
|
fractureWellCell.cellSizeX(),
|
||||||
fractureWellCell.cellSizeZ(),
|
fractureWellCell.cellSizeZ(),
|
||||||
fracture->wellRadius(),
|
fracture->wellRadius(),
|
||||||
@ -340,7 +340,7 @@ void RifFractureExportTools::exportWellPathFracturesToEclipseDataInputFile(const
|
|||||||
double linearTrans = 0.0;
|
double linearTrans = 0.0;
|
||||||
if (intersection.hlength > 0.0 || intersection.vlength > 0.0 )
|
if (intersection.hlength > 0.0 || intersection.vlength > 0.0 )
|
||||||
{
|
{
|
||||||
linearTrans = RigFractureTransmissibilityEquations::computeLinearTransmissibilityToWellinStimPlanCell(fractureWellCell.getConductivtyValue(),
|
linearTrans = RigFractureTransmissibilityEquations::fractureCellToWellLinearTrans(fractureWellCell.getConductivtyValue(),
|
||||||
fractureWellCell.cellSizeX(),
|
fractureWellCell.cellSizeX(),
|
||||||
fractureWellCell.cellSizeZ(),
|
fractureWellCell.cellSizeZ(),
|
||||||
intersection.vlength,
|
intersection.vlength,
|
||||||
@ -623,11 +623,11 @@ void RifFractureExportTools::printStimPlanFractureTrans(const std::vector<RimFra
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
double verticalTrans = RigFractureTransmissibilityEquations::computeStimPlanCellTransmissibilityInFracture(stimPlanCell.getConductivtyValue(),
|
double verticalTrans = RigFractureTransmissibilityEquations::centerToEdgeFractureCellTrans(stimPlanCell.getConductivtyValue(),
|
||||||
stimPlanCell.cellSizeX(),
|
stimPlanCell.cellSizeX(),
|
||||||
stimPlanCell.cellSizeZ(),
|
stimPlanCell.cellSizeZ(),
|
||||||
cDarcyInCorrectUnit);
|
cDarcyInCorrectUnit);
|
||||||
double horizontalTrans = RigFractureTransmissibilityEquations::computeStimPlanCellTransmissibilityInFracture(stimPlanCell.getConductivtyValue(),
|
double horizontalTrans = RigFractureTransmissibilityEquations::centerToEdgeFractureCellTrans(stimPlanCell.getConductivtyValue(),
|
||||||
stimPlanCell.cellSizeZ(),
|
stimPlanCell.cellSizeZ(),
|
||||||
stimPlanCell.cellSizeX(),
|
stimPlanCell.cellSizeX(),
|
||||||
cDarcyInCorrectUnit);
|
cDarcyInCorrectUnit);
|
||||||
@ -850,7 +850,7 @@ void RifFractureExportTools::printTransmissibilityFractureToWell(const std::vect
|
|||||||
//RigStimPlanCell* stimPlanCell = fracTemplateStimPlan->getStimPlanCellAtIJ(wellCenterStimPlanCellIJ.first, wellCenterStimPlanCellIJ.second);
|
//RigStimPlanCell* stimPlanCell = fracTemplateStimPlan->getStimPlanCellAtIJ(wellCenterStimPlanCellIJ.first, wellCenterStimPlanCellIJ.second);
|
||||||
const RigFractureCell& stimPlanCell = fracTemplateStimPlan->fractureGrid()->cellFromIndex(fracTemplateStimPlan->fractureGrid()->getGlobalIndexFromIJ(wellCenterStimPlanCellIJ.first, wellCenterStimPlanCellIJ.second));
|
const RigFractureCell& stimPlanCell = fracTemplateStimPlan->fractureGrid()->cellFromIndex(fracTemplateStimPlan->fractureGrid()->getGlobalIndexFromIJ(wellCenterStimPlanCellIJ.first, wellCenterStimPlanCellIJ.second));
|
||||||
|
|
||||||
double linTransInStimPlanCell = RigFractureTransmissibilityEquations::computeLinearTransmissibilityToWellinStimPlanCell(stimPlanCell.getConductivtyValue(),
|
double linTransInStimPlanCell = RigFractureTransmissibilityEquations::fractureCellToWellLinearTrans(stimPlanCell.getConductivtyValue(),
|
||||||
stimPlanCell.cellSizeX(),
|
stimPlanCell.cellSizeX(),
|
||||||
stimPlanCell.cellSizeZ(),
|
stimPlanCell.cellSizeZ(),
|
||||||
perforationLengthVert,
|
perforationLengthVert,
|
||||||
@ -884,7 +884,7 @@ void RifFractureExportTools::printTransmissibilityFractureToWell(const std::vect
|
|||||||
|
|
||||||
const RigFractureCell& stimPlanCell = fracTemplateStimPlan->fractureGrid()->cellFromIndex(fracTemplateStimPlan->fractureGrid()->getGlobalIndexFromIJ(wellCenterStimPlanCellIJ.first, wellCenterStimPlanCellIJ.second));
|
const RigFractureCell& stimPlanCell = fracTemplateStimPlan->fractureGrid()->cellFromIndex(fracTemplateStimPlan->fractureGrid()->getGlobalIndexFromIJ(wellCenterStimPlanCellIJ.first, wellCenterStimPlanCellIJ.second));
|
||||||
|
|
||||||
double radTransInStimPlanCell = RigFractureTransmissibilityEquations::computeRadialTransmissibilityToWellinStimPlanCell(stimPlanCell.getConductivtyValue(),
|
double radTransInStimPlanCell = RigFractureTransmissibilityEquations::fractureCellToWellRadialTrans(stimPlanCell.getConductivtyValue(),
|
||||||
stimPlanCell.cellSizeX(),
|
stimPlanCell.cellSizeX(),
|
||||||
stimPlanCell.cellSizeZ(),
|
stimPlanCell.cellSizeZ(),
|
||||||
fracture->wellRadius(),
|
fracture->wellRadius(),
|
||||||
|
@ -212,9 +212,9 @@ void RigEclipseToStimPlanCellTransmissibilityCalculator::calculateStimPlanCellsM
|
|||||||
|
|
||||||
double fractureAreaWeightedlength = totalAreaXLength / fractureArea;
|
double fractureAreaWeightedlength = totalAreaXLength / fractureArea;
|
||||||
|
|
||||||
double transmissibility_X = RigFractureTransmissibilityEquations::calculateMatrixTransmissibility(permY, NTG, Ay, dx, m_fractureSkinFactor, fractureAreaWeightedlength, m_cDarcy);
|
double transmissibility_X = RigFractureTransmissibilityEquations::matrixToFractureTrans(permY, NTG, Ay, dx, m_fractureSkinFactor, fractureAreaWeightedlength, m_cDarcy);
|
||||||
double transmissibility_Y = RigFractureTransmissibilityEquations::calculateMatrixTransmissibility(permX, NTG, Ax, dy, m_fractureSkinFactor, fractureAreaWeightedlength, m_cDarcy);
|
double transmissibility_Y = RigFractureTransmissibilityEquations::matrixToFractureTrans(permX, NTG, Ax, dy, m_fractureSkinFactor, fractureAreaWeightedlength, m_cDarcy);
|
||||||
double transmissibility_Z = RigFractureTransmissibilityEquations::calculateMatrixTransmissibility(permZ, 1.0, Az, dz, m_fractureSkinFactor, fractureAreaWeightedlength, m_cDarcy);
|
double transmissibility_Z = RigFractureTransmissibilityEquations::matrixToFractureTrans(permZ, 1.0, Az, dz, m_fractureSkinFactor, fractureAreaWeightedlength, m_cDarcy);
|
||||||
|
|
||||||
double transmissibility = sqrt(transmissibility_X * transmissibility_X
|
double transmissibility = sqrt(transmissibility_X * transmissibility_X
|
||||||
+ transmissibility_Y * transmissibility_Y
|
+ transmissibility_Y * transmissibility_Y
|
||||||
|
@ -221,9 +221,9 @@ std::vector<RigFracturedEclipseCellExportData> RigFractureTransCalc::computeTra
|
|||||||
double fractureAreaWeightedlength = totalAreaXLength / fractureArea;
|
double fractureAreaWeightedlength = totalAreaXLength / fractureArea;
|
||||||
double skinfactor = m_fracture->attachedFractureDefinition()->skinFactor;
|
double skinfactor = m_fracture->attachedFractureDefinition()->skinFactor;
|
||||||
|
|
||||||
double transmissibility_X = RigFractureTransmissibilityEquations::calculateMatrixTransmissibility(permY, NTG, Ay, dx, skinfactor, fractureAreaWeightedlength, cDarchy);
|
double transmissibility_X = RigFractureTransmissibilityEquations::matrixToFractureTrans(permY, NTG, Ay, dx, skinfactor, fractureAreaWeightedlength, cDarchy);
|
||||||
double transmissibility_Y = RigFractureTransmissibilityEquations::calculateMatrixTransmissibility(permX, NTG, Ax, dy, skinfactor, fractureAreaWeightedlength, cDarchy);
|
double transmissibility_Y = RigFractureTransmissibilityEquations::matrixToFractureTrans(permX, NTG, Ax, dy, skinfactor, fractureAreaWeightedlength, cDarchy);
|
||||||
double transmissibility_Z = RigFractureTransmissibilityEquations::calculateMatrixTransmissibility(permZ, 1.0, Az, dz, skinfactor, fractureAreaWeightedlength, cDarchy);
|
double transmissibility_Z = RigFractureTransmissibilityEquations::matrixToFractureTrans(permZ, 1.0, Az, dz, skinfactor, fractureAreaWeightedlength, cDarchy);
|
||||||
|
|
||||||
double transmissibility = sqrt(transmissibility_X * transmissibility_X
|
double transmissibility = sqrt(transmissibility_X * transmissibility_X
|
||||||
+ transmissibility_Y * transmissibility_Y
|
+ transmissibility_Y * transmissibility_Y
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
double RigFractureTransmissibilityEquations::computeStimPlanCellTransmissibilityInFracture(double conductivity,
|
double RigFractureTransmissibilityEquations::centerToEdgeFractureCellTrans(double conductivity,
|
||||||
double sideLengthParallellTrans,
|
double sideLengthParallellTrans,
|
||||||
double sideLengthNormalTrans,
|
double sideLengthNormalTrans,
|
||||||
double cDarcyForRelevantUnit)
|
double cDarcyForRelevantUnit)
|
||||||
@ -37,7 +37,7 @@ double RigFractureTransmissibilityEquations::computeStimPlanCellTransmissibility
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
double RigFractureTransmissibilityEquations::computeStimPlanCellTransmissibilityInFractureCenterToCenterForTwoCells(double conductivityCell1,
|
double RigFractureTransmissibilityEquations::centerToCenterFractureCellTrans(double conductivityCell1,
|
||||||
double sideLengthParallellTransCell1,
|
double sideLengthParallellTransCell1,
|
||||||
double sideLengthNormalTransCell1,
|
double sideLengthNormalTransCell1,
|
||||||
double conductivityCell2,
|
double conductivityCell2,
|
||||||
@ -45,8 +45,8 @@ double RigFractureTransmissibilityEquations::computeStimPlanCellTransmissibility
|
|||||||
double sideLengthNormalTransCell2,
|
double sideLengthNormalTransCell2,
|
||||||
double cDarcyForRelevantUnit)
|
double cDarcyForRelevantUnit)
|
||||||
{
|
{
|
||||||
double transCell1 = computeStimPlanCellTransmissibilityInFracture(conductivityCell1, sideLengthParallellTransCell1, sideLengthNormalTransCell1, cDarcyForRelevantUnit);
|
double transCell1 = centerToEdgeFractureCellTrans(conductivityCell1, sideLengthParallellTransCell1, sideLengthNormalTransCell1, cDarcyForRelevantUnit);
|
||||||
double transCell2 = computeStimPlanCellTransmissibilityInFracture(conductivityCell2, sideLengthParallellTransCell2, sideLengthNormalTransCell2, cDarcyForRelevantUnit);
|
double transCell2 = centerToEdgeFractureCellTrans(conductivityCell2, sideLengthParallellTransCell2, sideLengthNormalTransCell2, cDarcyForRelevantUnit);
|
||||||
|
|
||||||
double totalTrans = 1 / ( (1 / transCell1) + (1 / transCell2));
|
double totalTrans = 1 / ( (1 / transCell1) + (1 / transCell2));
|
||||||
|
|
||||||
@ -56,17 +56,17 @@ double RigFractureTransmissibilityEquations::computeStimPlanCellTransmissibility
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
double RigFractureTransmissibilityEquations::computeRadialTransmissibilityToWellinStimPlanCell(double stimPlanCellConductivity,
|
double RigFractureTransmissibilityEquations::fractureCellToWellRadialTrans(double fractureCellConductivity,
|
||||||
double stimPlanCellSizeX,
|
double fractureCellSizeX,
|
||||||
double stimPlanCellSizeZ,
|
double fractureCellSizeZ,
|
||||||
double wellRadius,
|
double wellRadius,
|
||||||
double skinFactor,
|
double skinFactor,
|
||||||
double cDarcyForRelevantUnit)
|
double cDarcyForRelevantUnit)
|
||||||
{
|
{
|
||||||
double ro = 0.14 * cvf::Math::sqrt(
|
double ro = 0.14 * cvf::Math::sqrt(
|
||||||
pow(stimPlanCellSizeX, 2.0) + pow(stimPlanCellSizeZ, 2));
|
pow(fractureCellSizeX, 2.0) + pow(fractureCellSizeZ, 2));
|
||||||
|
|
||||||
double Tc = 2 * cvf::PI_D * cDarcyForRelevantUnit * stimPlanCellConductivity /
|
double Tc = 2 * cvf::PI_D * cDarcyForRelevantUnit * fractureCellConductivity /
|
||||||
(log(ro / wellRadius) + skinFactor );
|
(log(ro / wellRadius) + skinFactor );
|
||||||
|
|
||||||
return Tc;
|
return Tc;
|
||||||
@ -75,25 +75,25 @@ double RigFractureTransmissibilityEquations::computeRadialTransmissibilityToWell
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
double RigFractureTransmissibilityEquations::computeLinearTransmissibilityToWellinStimPlanCell(double stimPlanConductivity,
|
double RigFractureTransmissibilityEquations::fractureCellToWellLinearTrans(double fractureCellConductivity,
|
||||||
double stimPlanCellSizeX,
|
double fractureCellSizeX,
|
||||||
double stimPlanCellSizeZ,
|
double fractureCellSizeZ,
|
||||||
double perforationLengthVertical,
|
double perforationLengthVertical,
|
||||||
double perforationLengthHorizontal,
|
double perforationLengthHorizontal,
|
||||||
double perforationEfficiency,
|
double perforationEfficiency,
|
||||||
double skinfactor,
|
double skinfactor,
|
||||||
double cDarcyForRelevantUnit)
|
double cDarcyForRelevantUnit)
|
||||||
{
|
{
|
||||||
double TcPrefix = 8 * cDarcyForRelevantUnit * stimPlanConductivity;
|
double TcPrefix = 8 * cDarcyForRelevantUnit * fractureCellConductivity;
|
||||||
|
|
||||||
double DzPerf = perforationLengthVertical * perforationEfficiency;
|
double DzPerf = perforationLengthVertical * perforationEfficiency;
|
||||||
double DxPerf = perforationLengthHorizontal * perforationEfficiency;
|
double DxPerf = perforationLengthHorizontal * perforationEfficiency;
|
||||||
|
|
||||||
double TcZ = TcPrefix * DzPerf /
|
double TcZ = TcPrefix * DzPerf /
|
||||||
(stimPlanCellSizeX + skinfactor * DzPerf / cvf::PI_D);
|
(fractureCellSizeX + skinfactor * DzPerf / cvf::PI_D);
|
||||||
|
|
||||||
double TcX = TcPrefix * DxPerf /
|
double TcX = TcPrefix * DxPerf /
|
||||||
(stimPlanCellSizeZ + skinfactor* DxPerf / cvf::PI_D);
|
(fractureCellSizeZ + skinfactor* DxPerf / cvf::PI_D);
|
||||||
|
|
||||||
double Tc = cvf::Math::sqrt(pow(TcX, 2) + pow(TcZ, 2));
|
double Tc = cvf::Math::sqrt(pow(TcX, 2) + pow(TcZ, 2));
|
||||||
return Tc;
|
return Tc;
|
||||||
@ -103,7 +103,7 @@ double RigFractureTransmissibilityEquations::computeLinearTransmissibilityToWell
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
double RigFractureTransmissibilityEquations::calculateMatrixTransmissibility(double perm,
|
double RigFractureTransmissibilityEquations::matrixToFractureTrans(double perm,
|
||||||
double NTG,
|
double NTG,
|
||||||
double A,
|
double A,
|
||||||
double cellSizeLength,
|
double cellSizeLength,
|
||||||
|
@ -21,37 +21,37 @@
|
|||||||
|
|
||||||
class RigFractureTransmissibilityEquations
|
class RigFractureTransmissibilityEquations
|
||||||
{
|
{
|
||||||
public: // centerToEdgeStimPlanCellTrans
|
public:
|
||||||
static double computeStimPlanCellTransmissibilityInFracture(double conductivity,
|
static double centerToEdgeFractureCellTrans(double conductivity,
|
||||||
double sideLengthParallellTrans,
|
double sideLengthParallellTrans,
|
||||||
double sideLengthNormalTrans,
|
double sideLengthNormalTrans,
|
||||||
double cDarcyForRelevantUnit);
|
double cDarcyForRelevantUnit);
|
||||||
// centerToCenterStimPlanCellTrans
|
|
||||||
static double computeStimPlanCellTransmissibilityInFractureCenterToCenterForTwoCells(double conductivityCell1,
|
static double centerToCenterFractureCellTrans(double conductivityCell1,
|
||||||
double sideLengthParallellTransCell1,
|
double sideLengthParallellTransCell1,
|
||||||
double sideLengthNormalTransCell1,
|
double sideLengthNormalTransCell1,
|
||||||
double conductivityCell2,
|
double conductivityCell2,
|
||||||
double sideLengthParallellTransCell2,
|
double sideLengthParallellTransCell2,
|
||||||
double sideLengthNormalTransCell2,
|
double sideLengthNormalTransCell2,
|
||||||
double cDarcyForRelevantUnit);
|
double cDarcyForRelevantUnit);
|
||||||
// stimPlanCellToWellRadialTrans
|
|
||||||
static double computeRadialTransmissibilityToWellinStimPlanCell(double stimPlanCellConductivity,
|
static double fractureCellToWellRadialTrans(double fractureCellConductivity,
|
||||||
double stimPlanCellSizeX,
|
double fractureCellSizeX,
|
||||||
double stimPlanCellSizeZ,
|
double fractureCellSizeZ,
|
||||||
double wellRadius,
|
double wellRadius,
|
||||||
double skinFactor,
|
double skinFactor,
|
||||||
double cDarcyForRelevantUnit);
|
double cDarcyForRelevantUnit);
|
||||||
// stimPlanCellToWellLinearTrans
|
|
||||||
static double computeLinearTransmissibilityToWellinStimPlanCell(double stimPlanConductivity,
|
static double fractureCellToWellLinearTrans(double fractureConductivity,
|
||||||
double stimPlanCellSizeX,
|
double fractureCellSizeX,
|
||||||
double stimPlanCellSizeZ,
|
double fractureCellSizeZ,
|
||||||
double perforationLengthVertical,
|
double perforationLengthVertical,
|
||||||
double perforationLengthHorizontal,
|
double perforationLengthHorizontal,
|
||||||
double perforationEfficiency,
|
double perforationEfficiency,
|
||||||
double skinfactor,
|
double skinfactor,
|
||||||
double cDarcyForRelevantUnit);
|
double cDarcyForRelevantUnit);
|
||||||
// matrixToFractureTrans
|
|
||||||
static double calculateMatrixTransmissibility(double permX,
|
static double matrixToFractureTrans(double permX,
|
||||||
double NTG,
|
double NTG,
|
||||||
double Ay,
|
double Ay,
|
||||||
double dx,
|
double dx,
|
||||||
|
Loading…
Reference in New Issue
Block a user