Use hydrostatic pore pressure calculation

This commit is contained in:
Kristian Bendiksen
2020-08-11 14:31:51 +02:00
parent 02013f4816
commit b12db3f957
3 changed files with 15 additions and 2 deletions

View File

@@ -254,9 +254,9 @@ RigFemScalarResultFrames* RigFemPartResultCalculatorMudWeightWindow::calculate(
// Use hydrostatic pressure from cell centroid. // Use hydrostatic pressure from cell centroid.
// Use centroid to avoid intra-element differences // Use centroid to avoid intra-element differences
cvf::Vec3d cellCentroid = femPartGrid->cellCentroid( elmIdx ); cvf::Vec3d cellCentroid = femPartGrid->cellCentroid( elmIdx );
double cellCentroidTvdRKB = std::abs( cellCentroid.z() ) + airGap; double cellCentroidTvdRKB = -cellCentroid.z() + airGap;
double cellCenterHydroStaticPressure = double cellCenterHydroStaticPressure =
RiaWellLogUnitTools<double>::hydrostaticPorePressureBar( cellCentroidTvdRKB ); RigGeoMechWellLogExtractor::hydroStaticPorePressureAtDepth( cellCentroidTvdRKB );
size_t elmNodResIdx = femPart->elementNodeResultIdx( elmIdx, elmNodIdx ); size_t elmNodResIdx = femPart->elementNodeResultIdx( elmIdx, elmNodIdx );
if ( elmNodResIdx < stressFrameData.size() ) if ( elmNodResIdx < stressFrameData.size() )

View File

@@ -1403,6 +1403,16 @@ double RigGeoMechWellLogExtractor::hydroStaticPorePressureForSegment( size_t int
return hydroStaticPorePressureBar; return hydroStaticPorePressureBar;
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
double RigGeoMechWellLogExtractor::hydroStaticPorePressureAtDepth( double effectiveDepthMeters, double waterDensityGCM3 )
{
double hydroStaticPorePressurePascal = effectiveDepthMeters * GRAVITY_ACCEL * waterDensityGCM3 * 1000;
double hydroStaticPorePressureBar = pascalToBar( hydroStaticPorePressurePascal );
return hydroStaticPorePressureBar;
}
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------

View File

@@ -84,6 +84,9 @@ public:
static caf::Ten3d transformTensorToWellPathOrientation( const cvf::Vec3d& wellPathTangent, static caf::Ten3d transformTensorToWellPathOrientation( const cvf::Vec3d& wellPathTangent,
const caf::Ten3d& wellPathTensor ); const caf::Ten3d& wellPathTensor );
static double hydroStaticPorePressureAtDepth( double effectiveDepthMeters,
double waterDensityGCM3 = PURE_WATER_DENSITY_GCM3 );
private: private:
enum WellPathTangentCalculation enum WellPathTangentCalculation
{ {