From 782f22feb8dd06c77c03b3ffd3478a6e87dd2d1e Mon Sep 17 00:00:00 2001 From: mattijs Date: Wed, 18 Sep 2024 14:00:04 +0100 Subject: [PATCH] ENH: continuity: avoid excess evaluations. See #3225 --- .../pimpleFoam/overPimpleDyMFoam/continuityErrs.H | 7 ++++++- .../simpleFoam/overSimpleFoam/continuityErrs.H | 7 ++++++- .../multiphase/interFoam/overInterDyMFoam/continuityErrs.H | 7 ++++++- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/applications/solvers/incompressible/pimpleFoam/overPimpleDyMFoam/continuityErrs.H b/applications/solvers/incompressible/pimpleFoam/overPimpleDyMFoam/continuityErrs.H index 46e25d8c2a..ed1aea585c 100644 --- a/applications/solvers/incompressible/pimpleFoam/overPimpleDyMFoam/continuityErrs.H +++ b/applications/solvers/incompressible/pimpleFoam/overPimpleDyMFoam/continuityErrs.H @@ -33,7 +33,12 @@ Description \*---------------------------------------------------------------------------*/ { - volScalarField contErr(interpolatedCells*cellMask*fvc::div(phi)); + const DimensionedField contErr + ( + interpolatedCells.internalField() + *cellMask.internalField() + *fvc::div(phi)().internalField() + ); scalar sumLocalContErr = runTime.deltaTValue()* mag(contErr)().weightedAverage(mesh.V()).value(); diff --git a/applications/solvers/incompressible/simpleFoam/overSimpleFoam/continuityErrs.H b/applications/solvers/incompressible/simpleFoam/overSimpleFoam/continuityErrs.H index 46e25d8c2a..ed1aea585c 100644 --- a/applications/solvers/incompressible/simpleFoam/overSimpleFoam/continuityErrs.H +++ b/applications/solvers/incompressible/simpleFoam/overSimpleFoam/continuityErrs.H @@ -33,7 +33,12 @@ Description \*---------------------------------------------------------------------------*/ { - volScalarField contErr(interpolatedCells*cellMask*fvc::div(phi)); + const DimensionedField contErr + ( + interpolatedCells.internalField() + *cellMask.internalField() + *fvc::div(phi)().internalField() + ); scalar sumLocalContErr = runTime.deltaTValue()* mag(contErr)().weightedAverage(mesh.V()).value(); diff --git a/applications/solvers/multiphase/interFoam/overInterDyMFoam/continuityErrs.H b/applications/solvers/multiphase/interFoam/overInterDyMFoam/continuityErrs.H index 46e25d8c2a..ed1aea585c 100644 --- a/applications/solvers/multiphase/interFoam/overInterDyMFoam/continuityErrs.H +++ b/applications/solvers/multiphase/interFoam/overInterDyMFoam/continuityErrs.H @@ -33,7 +33,12 @@ Description \*---------------------------------------------------------------------------*/ { - volScalarField contErr(interpolatedCells*cellMask*fvc::div(phi)); + const DimensionedField contErr + ( + interpolatedCells.internalField() + *cellMask.internalField() + *fvc::div(phi)().internalField() + ); scalar sumLocalContErr = runTime.deltaTValue()* mag(contErr)().weightedAverage(mesh.V()).value();