35 #define G_REDUCTION_FUNCTION(ReturnType, gFunc, Func, rFunc) \
37 template<class Type> \
40 const UList<Type>& f, \
41 const label comm = UPstream::worldComm \
44 #define TMP_REDUCTION_FUNCTION(ReturnType, Func) \
46 template<class Type> \
47 ReturnType Func(const tmp<Field<Type>>& tf1);
52 Type
max(
const UList<Type>&
f);
59 Type
min(
const UList<Type>&
f);
66 Type
sum(
const UList<Type>&
f);
87 scalar
sumProd(
const UList<Type>& f1,
const UList<Type>& f2);
92 const UList<Type>& f1,
93 const UList<Type>& f2,
98 Type
sumCmptProd(
const UList<Type>& f1,
const UList<Type>& f2);
103 const UList<Type>& f1,
104 const UList<Type>& f2,
109 scalar
sumSqr(
const UList<Type>&
f);
116 scalar
sumMag(
const UList<Type>&
f);
135 const UList<Type>&
f,
144 #undef G_REDUCTION_FUNCTION
145 #undef TMP_REDUCTION_FUNCTION
#define TMP_REDUCTION_FUNCTION(ReturnType, Func)
#define G_REDUCTION_FUNCTION(ReturnType, gFunc, Func, rFunc)
static label worldComm
Default communicator (all processors)
Type gMin(const UList< Type > &f, const label comm)
Type gAverage(const UList< Type > &f, 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.
scalar gSumSqr(const UList< Type > &f, const label comm)
scalar gSumProd(const UList< Type > &f1, const UList< Type > &f2, const label comm)
dimensioned< Type > average(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
dimensioned< scalar > sumMag(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
Type sumCmptProd(const UList< Type > &f1, const UList< Type > &f2)
Type maxMagSqr(const UList< Type > &f)
Type gSum(const UList< Type > &f, const label comm)
Type gMaxMagSqr(const UList< Type > &f, const label comm)
scalar gSumMag(const UList< Type > &f, const label comm)
dimensioned< Type > min(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
scalar sumProd(const UList< Type > &f1, const UList< Type > &f2)
dimensioned< Type > sum(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
Type gMax(const UList< Type > &f, const label comm)
Type minMagSqr(const UList< Type > &f)
scalar sumSqr(const UList< Type > &f)
Type gMinMagSqr(const UList< Type > &f, const label comm)
Type gSumCmptMag(const UList< Type > &f, const label comm)
Type sumCmptMag(const UList< Type > &f)
dimensioned< Type > max(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
Type gSumCmptProd(const UList< Type > &f1, const UList< Type > &f2, const label comm)