diff --git a/META-INFO/api-info b/META-INFO/api-info index 888adfedea0738d84462b3c6a5ced690f9676e89..21371b5bfe0de0465d15b6caf3fbaff47a11152d 100644 --- a/META-INFO/api-info +++ b/META-INFO/api-info @@ -1,2 +1,2 @@ api=2206 -patch=0 +patch=220907 diff --git a/src/OpenFOAM/db/functionObjects/valueAverageBase/valueAverageBaseTemplates.C b/src/OpenFOAM/db/functionObjects/valueAverageBase/valueAverageBaseTemplates.C index 13f3ec45f80c582e41d95b06bd6ae528e716f716..b8cbe9dc5635319e9db6a68aa7880fd9e28fb9dd 100644 --- a/src/OpenFOAM/db/functionObjects/valueAverageBase/valueAverageBaseTemplates.C +++ b/src/OpenFOAM/db/functionObjects/valueAverageBase/valueAverageBaseTemplates.C @@ -117,8 +117,8 @@ bool Foam::functionObjects::valueAverageBase::calc auto timeIter = windowTimes.cbegin(); auto valueIter = windowValues.cbegin(); - meanValue = pTraits<Type2>::zero; - Type valueOld(pTraits<Type2>::zero); + meanValue = Zero; + Type2 valueOld(Zero); for ( diff --git a/src/OpenFOAM/matrices/lduMatrix/solvers/PPCG/PPCG.C b/src/OpenFOAM/matrices/lduMatrix/solvers/PPCG/PPCG.C index 6ad660f76f1406b498f62f0afea668c1e7cd3bce..dc637b97ce019271a02c0d0fe36b849cec410bf1 100644 --- a/src/OpenFOAM/matrices/lduMatrix/solvers/PPCG/PPCG.C +++ b/src/OpenFOAM/matrices/lduMatrix/solvers/PPCG/PPCG.C @@ -6,7 +6,7 @@ \\/ M anipulation | ------------------------------------------------------------------------------- Copyright (C) 2019-2020 Mattijs Janssens - Copyright (C) 2020-2021 OpenCFD Ltd. + Copyright (C) 2020-2022 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -170,7 +170,7 @@ Foam::solverPerformance Foam::PPCG::scalarSolveCG ) { // Make sure gamma,delta are available - if (Pstream::parRun()) + if (Pstream::parRun() && outstandingRequest != -1) { Pstream::waitRequest(outstandingRequest); outstandingRequest = -1; @@ -248,6 +248,12 @@ Foam::solverPerformance Foam::PPCG::scalarSolveCG matrix_.Amul(n, m, interfaceBouCoeffs_, interfaces_, cmpt); } + // Cleanup any outstanding requests + if (Pstream::parRun() && outstandingRequest != -1) + { + Pstream::waitRequest(outstandingRequest); + } + return solverPerf; } diff --git a/src/finiteArea/distributed/faMeshDistributorTemplates.C b/src/finiteArea/distributed/faMeshDistributorTemplates.C index 6f556f3dab5a77bd8fce3094d9a0f9649f460aa0..9fb026451c6ad334195fb48349443c3e353535ef 100644 --- a/src/finiteArea/distributed/faMeshDistributorTemplates.C +++ b/src/finiteArea/distributed/faMeshDistributorTemplates.C @@ -93,7 +93,7 @@ Foam::faMeshDistributor::distributeField forAll(bfld, patchi) { - if (patchEdgeMaps_.set(patchi)) + if (patchEdgeMaps_.test(patchi)) { // Clone local patch field @@ -203,7 +203,7 @@ Foam::faMeshDistributor::distributeField forAll(bfld, patchi) { - if (patchEdgeMaps_.set(patchi)) + if (patchEdgeMaps_.test(patchi)) { // Clone local patch field diff --git a/src/functionObjects/forces/forceCoeffs/forceCoeffs.H b/src/functionObjects/forces/forceCoeffs/forceCoeffs.H index 3db7e6751cbb823c7668efd1f460dab44be3c666..0e6998760896cc3027e339dd3186c86798a2f0a8 100644 --- a/src/functionObjects/forces/forceCoeffs/forceCoeffs.H +++ b/src/functionObjects/forces/forceCoeffs/forceCoeffs.H @@ -318,7 +318,7 @@ public: }; - // Coefficients description + //- Coefficients description struct coeffDesc { enum splitType @@ -366,6 +366,12 @@ public: return name_ + "(r)"; } + //- Print description + void print(Ostream& os) const + { + os << desc_.c_str() << ": " << name_; + } + //- Return force/moment components based on the specified split type vector value(const forceComponents& f, const forceComponents& m) const { @@ -546,18 +552,25 @@ public: virtual bool write(); }; +} // End namespace functionObjects + // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -Ostream& operator<<(Ostream& os, const forceCoeffs::coeffDesc& coeff) +// Output operator +inline Ostream& operator<< +( + Ostream& os, + const functionObjects::forceCoeffs::coeffDesc& coeff +) { - os << coeff.desc_.c_str() << ": " << coeff.name_; - + coeff.print(os); return os; } -} // End namespace functionObjects +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + } // End namespace Foam // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //