58 if (sCells.
size() > 0)
60 sumSize += sCells.
size();
62 minSize =
min(minSize, sCells.
size());
63 maxSize =
max(maxSize, sCells.
size());
66 reduce(sumSize, sumOp<label>());
67 reduce(nSum, sumOp<label>());
69 reduce(minSize, minOp<label>());
70 reduce(maxSize, maxOp<label>());
72 os <<
"Stencil size :" <<
nl 73 <<
" average : " << scalar(sumSize)/nSum <<
nl 74 <<
" min : " << minSize <<
nl 75 <<
" max : " << maxSize <<
nl 113 refCast<const coupledPolyPatch>(
patches[patchi]);
118 <<
"Coupled patches with transformations not supported." void size(const label n)
Older name for setAddressableSize.
virtual bool separated() const
Are the planes separated.
errorManipArg< error, int > exit(error &err, const int errNo=1)
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
constexpr char nl
The newline '\n' character (0x0a)
bool coupled(solutionDict.getOrDefault("coupledEnergyField", false))
Calculates/constains the extended cell-to-face stencil.
Ostream & endl(Ostream &os)
Add newline and flush stream.
The coupledPolyPatch is an abstract base class for patches that couple regions of the computational d...
static int myProcNo(const label communicator=worldComm)
Rank of this process in the communicator (starting from masterNo()). Can be negative if the process i...
T returnReduce(const T &value, const BinaryOp &bop, const int tag=UPstream::msgType(), const label comm=UPstream::worldComm)
Perform reduction on a copy, using specified binary operation.
#define forAll(list, i)
Loop across all elements in list.
virtual bool parallel() const
Are the cyclic planes parallel.
extendedCellToFaceStencil(const polyMesh &)
Construct from mesh.
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
A polyBoundaryMesh is a polyPatch list with additional search methods and registered IO...
const word & name() const noexcept
The patch name.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
OBJstream os(runTime.globalPath()/outputName)
defineTypeNameAndDebug(combustionModel, 0)
Class containing processor-to-processor mapping information.
const polyBoundaryMesh & patches
void reduce(const List< UPstream::commsStruct > &comms, T &value, const BinaryOp &bop, const int tag, const label comm)
Reduce inplace (cf. MPI Allreduce) using specified communication schedule.
Mesh consisting of general polyhedral cells.
static void writeStencilStats(Ostream &os, const labelListList &stencil, const mapDistribute &map)
Write some statistics about stencil.
const labelListList & subMap() const noexcept
From subsetted data back to original data.