Go to the documentation of this file.
36 #ifndef PstreamCombineReduceOps_H
37 #define PstreamCombineReduceOps_H
50 template<
class T,
class CombineOp>
65 template<
class T,
class CombineOp>
static label nProcs(const label communicator=0)
Number of processes in parallel run.
Combination-Reduction operation for a parallel run.
void combineReduce(const List< UPstream::commsStruct > &comms, T &Value, const CombineOp &cop, const int tag, const label comm)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
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
Number of processors at which the sum algorithm changes from linear.
static int & msgType()
Message tag of standard messages.
static label worldComm
Default communicator (all processors)
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 > & linearCommunication(const label communicator=0)
Communication schedule for linear all-to-master (proc 0)
static void combineScatter(const List< commsStruct > &comms, T &Value, const int tag, const label comm)
Scatter data. Reverse of combineGather.
static const List< commsStruct > & treeCommunication(const label communicator=0)
Communication schedule for tree all-to-master (proc 0)