diff --git a/src/functionObjects/field/momentum/momentum.C b/src/functionObjects/field/momentum/momentum.C index 0162732793bbb69c4cdf8a17b8267bd96f4a7fe1..414dee04d8308a3cdbf8f81016938a15e2c59471 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) {