From 689c54276d1c615a78b9816eb67f9dbe01572af8 Mon Sep 17 00:00:00 2001
From: mattijs <mattijs>
Date: Tue, 13 Jul 2021 11:59:19 +0100
Subject: [PATCH] BUG: momentum: angularVelocity zero on boundary. Fixes #2157.

---
 src/functionObjects/field/momentum/momentum.C | 19 +++++++++++++++----
 1 file changed, 15 insertions(+), 4 deletions(-)

diff --git a/src/functionObjects/field/momentum/momentum.C b/src/functionObjects/field/momentum/momentum.C
index 0162732793b..414dee04d83 100644
--- a/src/functionObjects/field/momentum/momentum.C
+++ b/src/functionObjects/field/momentum/momentum.C
@@ -177,11 +177,22 @@ void Foam::functionObjects::momentum::calc()
 
 
         // Global to local
+        {
+            const auto& C = mesh_.C();
+            angularVel.primitiveFieldRef() =
+                csys_.invTransform(C, U.internalField());
 
-        angularVel.primitiveFieldRef() =
-            csys_.invTransform(mesh_.cellCentres(), U.internalField());
-
-        angularVel.correctBoundaryConditions();
+            auto& bfld = angularVel.boundaryFieldRef();
+            forAll(bfld, patchi)
+            {
+                bfld[patchi] = csys_.invTransform
+                (
+                    C.boundaryField()[patchi],
+                    U.boundaryField()[patchi]
+                );
+            }
+            angularVel.correctBoundaryConditions();
+        }
 
         if (rhoPtr)
         {
-- 
GitLab