Go to the documentation of this file.
38 #ifndef PstreamCombineReduceOps_H
39 #define PstreamCombineReduceOps_H
52 template<
class T,
class CombineOp>
67 template<
class T,
class CombineOp>
static const List< commsStruct > & linearCommunication(const label communicator=worldComm)
Various functors for unary and binary operations. Can be used for parallel combine-reduce operations ...
void combineReduce(const List< UPstream::commsStruct > &comms, T &Value, const CombineOp &cop, const int tag, const label comm)
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
static void combineGather(const List< commsStruct > &comms, T &Value, const CombineOp &cop, const int tag, const label comm)
static int nProcsSimpleSum
static int & msgType() noexcept
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
static const List< commsStruct > & treeCommunication(const label communicator=worldComm)
static void combineScatter(const List< commsStruct > &comms, T &Value, const int tag, const label comm)
static label nProcs(const label communicator=worldComm)