water viscosity: calculate it the same way as documented by the Eclipse RM

This commit is contained in:
Andreas Lauser
2014-12-08 14:58:02 +01:00
parent 8109900567
commit c267cacbd6

View File

@@ -1007,11 +1007,19 @@ private:
static Scalar waterViscosity_(Scalar pressure, int regionIdx)
{
Scalar muRef = waterViscosityScalar_[regionIdx];
Scalar Cnu = waterViscosibilityScalar_[regionIdx];
// Eclipse calculates the viscosity in a weird way: it
// calcultes the product of B_w and mu_w and then divides the
// result by B_w...
Scalar BwMuwRef =
waterViscosityScalar_[regionIdx]
* waterReferenceFormationFactorScalar_[regionIdx];
Scalar Bw = waterFormationVolumeFactor(pressure, regionIdx);
Scalar pRef = waterReferencePressureScalar_[regionIdx];
Scalar deltamu = (pressure - pRef)*Cnu*muRef;
return muRef + deltamu;
Scalar Y =
(waterCompressibilityScalar_[regionIdx] - waterViscosibilityScalar_[regionIdx])
* (pressure - pRef);
return BwMuwRef/((1 + Y*(1 + Y/2))*Bw);
}
static std::vector<TabulatedFunction> inverseOilFormationVolumeFactor_;