mirror of
https://github.com/OPM/ResInsight.git
synced 2026-10-24 22:27:55 -05:00
#15021: Fix D-factor unit mismatch for field units
Use well radius and ellipse width in feet for fractures and perforations when computing the D-factor, as the field alpha expects feet.
This commit is contained in:
1 parent
ce9ae46a91
commit
e128e6dd3e
3 files changed
+16
-3
No files matched your search
+7
-2
@@ -249,13 +249,18 @@ double RicTransmissibilityCalculator::calculateDFactor( RimEclipseCase*
|
||||
porosity,
|
||||
nonDarcyParameters->porosityScalingFactor() );
|
||||
|
||||
const double alpha = RiaDefines::nonDarcyFlowAlpha( eclipseCase->eclipseCaseData()->unitsType() );
|
||||
const auto unitsType = eclipseCase->eclipseCaseData()->unitsType();
|
||||
const double alpha = RiaDefines::nonDarcyFlowAlpha( unitsType );
|
||||
|
||||
// The well radius is entered in meters, while the field alpha expects feet
|
||||
double wellRadius = nonDarcyParameters->wellRadius();
|
||||
if ( unitsType == RiaDefines::EclipseUnitSystem::UNITS_FIELD ) wellRadius = RiaEclipseUnitTools::meterToFeet( wellRadius );
|
||||
|
||||
return EQ::dFactor( alpha,
|
||||
betaFactor,
|
||||
effectivePermeability,
|
||||
effectiveH,
|
||||
nonDarcyParameters->wellRadius(),
|
||||
wellRadius,
|
||||
nonDarcyParameters->relativeGasDensity(),
|
||||
nonDarcyParameters->gasViscosity() );
|
||||
}
|
||||
|
||||
@@ -244,7 +244,9 @@ cvf::cref<RigFractureGrid> RimEllipseFractureTemplate::createFractureGrid( doubl
|
||||
WellFractureIntersectionData RimEllipseFractureTemplate::wellFractureIntersectionData( const RimFracture* fractureInstance ) const
|
||||
{
|
||||
WellFractureIntersectionData values;
|
||||
values.m_width = m_width;
|
||||
// Width is in inches for field units, but length unit (feet) is required for conductivity and D-factor
|
||||
values.m_width = ( fractureTemplateUnit() == RiaDefines::EclipseUnitSystem::UNITS_FIELD ) ? RiaEclipseUnitTools::inchToFeet( m_width )
|
||||
: m_width;
|
||||
values.m_permeability = m_permeability;
|
||||
|
||||
return values;
|
||||
|
||||
@@ -624,7 +624,13 @@ double RimFractureTemplate::computeWellRadiusForDFactorCalculation( const RimFra
|
||||
}
|
||||
else
|
||||
{
|
||||
// Well diameter is in meter for metric and inches for field. Radius must be in meter/feet to be consistent with
|
||||
// fracture width and the unit dependent alpha
|
||||
radius = m_wellDiameter / 2.0;
|
||||
if ( m_fractureTemplateUnit() == RiaDefines::EclipseUnitSystem::UNITS_FIELD )
|
||||
{
|
||||
radius = RiaEclipseUnitTools::inchToFeet( radius );
|
||||
}
|
||||
}
|
||||
|
||||
return radius;
|
||||
|
||||
Reference in new issue
Block a user