From 3e70154ff1db07a2a320760c171949bd1f2d0439 Mon Sep 17 00:00:00 2001 From: sergio <s.ferraris@opencfd.co.uk> Date: Mon, 26 Jul 2021 11:03:30 -0700 Subject: [PATCH] BUG: Fixing movingWall BC mesh flux --- .../movingWallVelocityFvPatchVectorField.C | 14 +++++++++----- .../movingWallVelocityFvPatchVectorField.H | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.C b/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.C index 7a9c170d7a3..65704e0b1a8 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.C +++ b/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.C @@ -94,7 +94,7 @@ movingWallVelocityFvPatchVectorField // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // Foam::tmp<Foam::vectorField> -Foam::movingWallVelocityFvPatchVectorField::Uwall() const +Foam::movingWallVelocityFvPatchVectorField::Uwall() { const fvMesh& mesh = internalField().mesh(); const fvPatch& p = patch(); @@ -112,10 +112,13 @@ Foam::movingWallVelocityFvPatchVectorField::Uwall() const const vectorField Up((pp.faceCentres() - oldFc)/deltaT); - const auto& U = static_cast<const volVectorField&>(internalField()); + const volVectorField& U = + static_cast<const volVectorField&>(internalField()); - tmp<scalarField> phip = - p.patchField<surfaceScalarField, scalar>(fvc::meshPhi(U)); + scalarField phip + ( + p.patchField<surfaceScalarField, scalar>(fvc::meshPhi(U)) + ); const vectorField n(p.nf()); const scalarField& magSf = p.magSf(); @@ -136,7 +139,8 @@ void Foam::movingWallVelocityFvPatchVectorField::updateCoeffs() if (mesh.moving()) { - vectorField::operator=(Uwall()()); + const vectorField uwall(Uwall()); + vectorField::operator=(uwall); } fixedValueFvPatchVectorField::updateCoeffs(); diff --git a/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H b/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H index 9b5b05cd7ec..f6a9ff26896 100644 --- a/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H +++ b/src/finiteVolume/fields/fvPatchFields/derived/movingWallVelocity/movingWallVelocityFvPatchVectorField.H @@ -142,7 +142,7 @@ public: // Member Functions //- Return wall velocity field - tmp<vectorField> Uwall() const; + tmp<vectorField> Uwall(); //- Update the coefficients associated with the patch field virtual void updateCoeffs(); -- GitLab