From bcdd5740a050e77df301a52826c752ba9d19cdc4 Mon Sep 17 00:00:00 2001
From: Thomas Fetzer <thomas.fetzer@iws.uni-stuttgart.de>
Date: Thu, 22 Jan 2015 09:44:48 +0000
Subject: [PATCH] [multidomain]

fixed inconsistent use of the boundaryLayerOffset for the
boundary layer models

reviewed by gruenich



git-svn-id: svn://svn.iws.uni-stuttgart.de/DUMUX/dumux/trunk@14099 2fb0f335-1f38-0410-981e-8018bf24f1b0
---
 .../2cstokes2p2c/2cstokes2p2clocaloperator.hh | 34 +++++--------------
 1 file changed, 9 insertions(+), 25 deletions(-)

diff --git a/dumux/multidomain/2cstokes2p2c/2cstokes2p2clocaloperator.hh b/dumux/multidomain/2cstokes2p2c/2cstokes2p2clocaloperator.hh
index 08f77a3cea..5c750244ca 100644
--- a/dumux/multidomain/2cstokes2p2c/2cstokes2p2clocaloperator.hh
+++ b/dumux/multidomain/2cstokes2p2c/2cstokes2p2clocaloperator.hh
@@ -542,40 +542,24 @@ class TwoCStokesTwoPTwoCLocalOperator :
                                                    const DimVector& globalPos,
                                                    const int vertexIdx) const
     {
+        const Scalar vxmax = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, FreeFlow, VxMax);
+        const Scalar boundaryLayerOffset = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, FreeFlow, BoundaryLayerOffset);
+        const Scalar distance = globalPos[0]+boundaryLayerOffset;
+        Scalar reynoldsX = vxmax * distance * cParams.elemVolVarsCur1[vertexIdx].fluidState().density(nPhaseIdx1)
+                           / cParams.elemVolVarsCur1[vertexIdx].fluidState().viscosity(nPhaseIdx1);
+
         if (blModel_ == 1)
         {
-            const Scalar vxmax = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, FreeFlow, VxMax);
-            Scalar reynoldsX = vxmax * globalPos[0] *
-                cParams.elemVolVarsCur1[vertexIdx].fluidState().density(nPhaseIdx1);
-            reynoldsX /= cParams.elemVolVarsCur1[vertexIdx].fluidState().viscosity(nPhaseIdx1);
-            const Scalar boundaryLayerOffset =
-                GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, FreeFlow, BoundaryLayerOffset);
-
-            return 5*(globalPos[0]+boundaryLayerOffset) / std::sqrt(reynoldsX);
+            return 5.0 * distance / std::sqrt(reynoldsX);
         }
         if (blModel_ == 2)
         {
-            const Scalar vxmax = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, FreeFlow, VxMax);
-            Scalar reynoldsX = vxmax * globalPos[0] *
-                cParams.elemVolVarsCur1[vertexIdx].fluidState().density(nPhaseIdx1);
-            reynoldsX /= cParams.elemVolVarsCur1[vertexIdx].fluidState().viscosity(nPhaseIdx1);
-            const Scalar boundaryLayerOffset =
-                GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, FreeFlow, BoundaryLayerOffset);
-
-            return 0.37*(globalPos[0]+boundaryLayerOffset) / std::pow(reynoldsX, 0.2);
+            return 0.37 * distance / std::pow(reynoldsX, 0.2);
         }
         if (blModel_ == 3)
         {
-            const Scalar vxmax = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, FreeFlow, VxMax);
-            Scalar reynoldsX = vxmax * globalPos[0] *
-                cParams.elemVolVarsCur1[vertexIdx].fluidState().density(nPhaseIdx1);
-            reynoldsX /= cParams.elemVolVarsCur1[vertexIdx].fluidState().viscosity(nPhaseIdx1);
-            const Scalar boundaryLayerOffset =
-                GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, FreeFlow, BoundaryLayerOffset);
-
             const Scalar cf = 2*std::pow(0.41*1.5/std::log(reynoldsX),2);
-
-            return 50*(globalPos[0]+boundaryLayerOffset)/(reynoldsX*std::sqrt(cf/2));
+            return 50.0 * distance / (reynoldsX * std::sqrt(cf/2.0));
         }
         if (blModel_ == 9)
         {
-- 
GitLab