From 593acef644012a1ad8b9479e19fb3dd6f2084a9e Mon Sep 17 00:00:00 2001
From: Kilian Weishaupt <kilian.weishaupt@iws.uni-stuttgart.de>
Date: Tue, 18 Oct 2016 14:28:46 +0200
Subject: [PATCH] [stokes][localResidual] Add a wall friction term

*To account for a dimensional reduction from 3d to 2d
---
 dumux/freeflow/stokes/localresidual.hh | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/dumux/freeflow/stokes/localresidual.hh b/dumux/freeflow/stokes/localresidual.hh
index 7951945fc9..5c9bfb4e85 100644
--- a/dumux/freeflow/stokes/localresidual.hh
+++ b/dumux/freeflow/stokes/localresidual.hh
@@ -328,6 +328,12 @@ protected:
         {
             source[momentumXIdx + dimIdx] -= pressureGradAtSCVCenter[dimIdx];
             source[momentumXIdx + dimIdx] += volVars.density()*this->problem_().gravity()[dimIdx];
+
+            // add a wall friction term to account for a dimensional reduction from 3d to 2d
+            const auto pos = this->element_().geometry().corner(scvIdx);
+            const Scalar height = this->problem_().extrusionFactorAtPos(pos);
+            const Scalar wallFriction = 12*volVars.velocity()[dimIdx]*volVars.dynamicViscosity()/(height*height);
+            source[momentumXIdx + dimIdx] -= wallFriction;
         }
     }
 
-- 
GitLab