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