diff --git a/META-INFO/api-info b/META-INFO/api-info index 888adfedea..21371b5bfe 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 13f3ec45f8..b8cbe9dc56 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::zero; - Type valueOld(pTraits::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 6ad660f76f..dc637b97ce 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 6f556f3dab..9fb026451c 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 3db7e6751c..0e69987608 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 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //