1487 - pre-proto - removing const from m_case in EclipseToStimPlanCellTransmissibilityCalculator nad updating function for calculating transmissibilities in fracture to have relevat values as input instead of RigStimPlanFracTemplateCell

This commit is contained in:
astridkbjorke 2017-05-16 13:54:50 +02:00
parent a1a7441c2d
commit de2d78828b
3 changed files with 12 additions and 17 deletions

View File

@ -382,7 +382,8 @@ void RifEclipseExportTools::printStimPlanFractureTrans(const std::vector<RimFrac
continue;
}
RigFractureTransCalc::computeStimPlanCellTransmissibilityInFracture(stimPlanCell);
double verticalTrans = RigFractureTransCalc::computeStimPlanCellTransmissibilityInFracture(stimPlanCell.getConductivtyValue(), stimPlanCell.cellSizeX(), stimPlanCell.cellSizeZ());
double horizontalTrans = RigFractureTransCalc::computeStimPlanCellTransmissibilityInFracture(stimPlanCell.getConductivtyValue(), stimPlanCell.cellSizeZ(), stimPlanCell.cellSizeX());
out << qSetFieldWidth(5);
size_t spi = stimPlanCell.getI();
@ -392,8 +393,8 @@ void RifEclipseExportTools::printStimPlanFractureTrans(const std::vector<RimFrac
out << spj;
out << qSetFieldWidth(10);
out << QString::number(stimPlanCell.getVerticalTransmissibilityInFracture(), 'e', 3);
out << QString::number(stimPlanCell.getHorizontalTransmissibilityInFracture(), 'e', 3);
out << QString::number(verticalTrans, 'e', 3);
out << QString::number(horizontalTrans, 'e', 3);
out << "\n";
}

View File

@ -731,17 +731,10 @@ void RigFractureTransCalc::computeUpscaledPropertyFromStimPlan( QString resultNa
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RigFractureTransCalc::computeStimPlanCellTransmissibilityInFracture(const RigStimPlanFracTemplateCell& stimPlanCell)
double RigFractureTransCalc::computeStimPlanCellTransmissibilityInFracture(double conductivity, double sideLengthParallellTrans, double sideLengthNormalTrans)
{
//TODO: Ta inn relevante parametre, ikke hele cella
double verticalSideLength = stimPlanCell.cellSizeX();
double horisontalSideLength = stimPlanCell.cellSizeZ();
double verticalTrans = stimPlanCell.getConductivtyValue() * verticalSideLength / (horisontalSideLength / 2);
double horizontalTrans = stimPlanCell.getConductivtyValue() * horisontalSideLength / (verticalSideLength / 2);
//TODO: Ta bort const???
// stimPlanCell.setTransmissibilityInFracture(verticalTrans, horizontalTrans);
double transmissibility = conductivity * sideLengthNormalTrans / (sideLengthParallellTrans / 2);
return transmissibility;
}
//--------------------------------------------------------------------------------------------------
@ -878,7 +871,7 @@ double RigFractureTransCalc::convertConductivtyValue(double Kw, RimDefines::Unit
EclipseToStimPlanCellTransmissibilityCalculator::EclipseToStimPlanCellTransmissibilityCalculator(const RimEclipseCase* caseToApply,
EclipseToStimPlanCellTransmissibilityCalculator::EclipseToStimPlanCellTransmissibilityCalculator(RimEclipseCase* caseToApply,
cvf::Mat4f fractureTransform,
double skinFactor,
double cDarcy,

View File

@ -59,8 +59,9 @@ public:
static double arithmeticAverage(std::vector<double> values);
// Calculations based on StimPlan grid
static double computeStimPlanCellTransmissibilityInFracture(double conductivity, double sideLengthParallellTrans, double sideLengthNormalTrans);
void calculateStimPlanCellsMatrixTransmissibility(RigStimPlanFracTemplateCell* stimPlanCell, RigStimPlanFractureCell* fracStimPlanCellData);
static void computeStimPlanCellTransmissibilityInFracture(const RigStimPlanFracTemplateCell& stimPlanCell);
double computeRadialTransmissibilityToWellinStimPlanCell(const RigStimPlanFracTemplateCell& stimPlanCell);
double computeLinearTransmissibilityToWellinStimPlanCell(const RigStimPlanFracTemplateCell& stimPlanCell, double perforationLengthVertical, double perforationLengthHorizontal);
@ -82,7 +83,7 @@ private:
class EclipseToStimPlanCellTransmissibilityCalculator
{
public:
explicit EclipseToStimPlanCellTransmissibilityCalculator(const RimEclipseCase* caseToApply,
explicit EclipseToStimPlanCellTransmissibilityCalculator(RimEclipseCase* caseToApply,
cvf::Mat4f fractureTransform,
double skinFactor,
double cDarcy,
@ -99,7 +100,7 @@ private:
double calculateMatrixTransmissibility(double permX, double NTG, double Ay, double dx, double skinfactor, double fractureAreaWeightedlength);
const RimEclipseCase* m_case;
RimEclipseCase* m_case;
double m_cDarcy;
double m_fractureSkinFactor;
cvf::Mat4f m_fractureTransform;