aboutsummaryrefslogtreecommitdiff
path: root/src/MaxFunctions.c
diff options
context:
space:
mode:
authoryye00 <yye00@7daa882c-dc44-4453-834e-278d26b18e6a>2005-09-15 22:06:12 +0000
committeryye00 <yye00@7daa882c-dc44-4453-834e-278d26b18e6a>2005-09-15 22:06:12 +0000
commit9fa2943a4d7a405d0b1720c210ddcc8598d7b990 (patch)
tree347641aa56eaab2e5b90d9bf1ec0e2e66c6b18a5 /src/MaxFunctions.c
parent34fcf8de208147376d1774e2e33c78423dd7e03c (diff)
Modification to Max and Min reductions, if the weight is zero they do are not included in the reduction operation. Some minor modification for divide by zero weight sum
git-svn-id: http://svn.cactuscode.org/arrangements/CactusBase/LocalReduce/trunk@60 7daa882c-dc44-4453-834e-278d26b18e6a
Diffstat (limited to 'src/MaxFunctions.c')
-rw-r--r--src/MaxFunctions.c252
1 files changed, 126 insertions, 126 deletions
diff --git a/src/MaxFunctions.c b/src/MaxFunctions.c
index a2107fe..b33381e 100644
--- a/src/MaxFunctions.c
+++ b/src/MaxFunctions.c
@@ -38,7 +38,7 @@ int LocalReduce_Max_BYTE(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -111,7 +111,7 @@ int LocalReduce_Max_BYTE(int i, int weight_on, const void * const weight, CCTK_I
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -124,7 +124,7 @@ int LocalReduce_Max_BYTE(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -151,7 +151,7 @@ int LocalReduce_Max_BYTE(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -164,7 +164,7 @@ int LocalReduce_Max_BYTE(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -192,7 +192,7 @@ int LocalReduce_Max_BYTE(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -206,7 +206,7 @@ int LocalReduce_Max_BYTE(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -234,7 +234,7 @@ int LocalReduce_Max_BYTE(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -248,7 +248,7 @@ int LocalReduce_Max_BYTE(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -279,7 +279,7 @@ int LocalReduce_Max_INT(int i, int weight_on, const void * const weight, CCTK_IN
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -351,7 +351,7 @@ int LocalReduce_Max_INT(int i, int weight_on, const void * const weight, CCTK_IN
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -364,7 +364,7 @@ int LocalReduce_Max_INT(int i, int weight_on, const void * const weight, CCTK_IN
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -391,7 +391,7 @@ int LocalReduce_Max_INT(int i, int weight_on, const void * const weight, CCTK_IN
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -404,7 +404,7 @@ int LocalReduce_Max_INT(int i, int weight_on, const void * const weight, CCTK_IN
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -432,7 +432,7 @@ int LocalReduce_Max_INT(int i, int weight_on, const void * const weight, CCTK_IN
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -445,7 +445,7 @@ int LocalReduce_Max_INT(int i, int weight_on, const void * const weight, CCTK_IN
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -473,7 +473,7 @@ int LocalReduce_Max_INT(int i, int weight_on, const void * const weight, CCTK_IN
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -486,7 +486,7 @@ int LocalReduce_Max_INT(int i, int weight_on, const void * const weight, CCTK_IN
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -517,7 +517,7 @@ int LocalReduce_Max_INT1(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -589,7 +589,7 @@ int LocalReduce_Max_INT1(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -602,7 +602,7 @@ int LocalReduce_Max_INT1(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -629,7 +629,7 @@ int LocalReduce_Max_INT1(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -642,7 +642,7 @@ int LocalReduce_Max_INT1(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -670,7 +670,7 @@ int LocalReduce_Max_INT1(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -684,7 +684,7 @@ int LocalReduce_Max_INT1(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -712,7 +712,7 @@ int LocalReduce_Max_INT1(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -726,7 +726,7 @@ int LocalReduce_Max_INT1(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -758,7 +758,7 @@ int LocalReduce_Max_INT2(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -830,7 +830,7 @@ int LocalReduce_Max_INT2(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -843,7 +843,7 @@ int LocalReduce_Max_INT2(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -870,7 +870,7 @@ int LocalReduce_Max_INT2(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -883,7 +883,7 @@ int LocalReduce_Max_INT2(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -911,7 +911,7 @@ int LocalReduce_Max_INT2(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -925,7 +925,7 @@ int LocalReduce_Max_INT2(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -953,7 +953,7 @@ int LocalReduce_Max_INT2(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -967,7 +967,7 @@ int LocalReduce_Max_INT2(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -999,7 +999,7 @@ int LocalReduce_Max_INT4(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1071,7 +1071,7 @@ int LocalReduce_Max_INT4(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -1084,7 +1084,7 @@ int LocalReduce_Max_INT4(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1111,7 +1111,7 @@ int LocalReduce_Max_INT4(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -1124,7 +1124,7 @@ int LocalReduce_Max_INT4(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1152,7 +1152,7 @@ int LocalReduce_Max_INT4(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -1166,7 +1166,7 @@ int LocalReduce_Max_INT4(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1194,7 +1194,7 @@ int LocalReduce_Max_INT4(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -1208,7 +1208,7 @@ int LocalReduce_Max_INT4(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -1240,7 +1240,7 @@ int LocalReduce_Max_INT8(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1312,7 +1312,7 @@ int LocalReduce_Max_INT8(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -1325,7 +1325,7 @@ int LocalReduce_Max_INT8(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1352,7 +1352,7 @@ int LocalReduce_Max_INT8(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -1365,7 +1365,7 @@ int LocalReduce_Max_INT8(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1393,7 +1393,7 @@ int LocalReduce_Max_INT8(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -1407,7 +1407,7 @@ int LocalReduce_Max_INT8(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1435,7 +1435,7 @@ int LocalReduce_Max_INT8(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -1449,7 +1449,7 @@ int LocalReduce_Max_INT8(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -1480,7 +1480,7 @@ int LocalReduce_Max_REAL(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1552,7 +1552,7 @@ int LocalReduce_Max_REAL(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -1565,7 +1565,7 @@ int LocalReduce_Max_REAL(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1592,7 +1592,7 @@ int LocalReduce_Max_REAL(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -1605,7 +1605,7 @@ int LocalReduce_Max_REAL(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1633,7 +1633,7 @@ int LocalReduce_Max_REAL(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -1647,7 +1647,7 @@ int LocalReduce_Max_REAL(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1675,7 +1675,7 @@ int LocalReduce_Max_REAL(int i, int weight_on, const void * const weight, CCTK_I
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -1689,7 +1689,7 @@ int LocalReduce_Max_REAL(int i, int weight_on, const void * const weight, CCTK_I
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -1720,7 +1720,7 @@ int LocalReduce_Max_REAL4(int i, int weight_on, const void * const weight, CCTK_
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1792,7 +1792,7 @@ int LocalReduce_Max_REAL4(int i, int weight_on, const void * const weight, CCTK_
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -1805,7 +1805,7 @@ int LocalReduce_Max_REAL4(int i, int weight_on, const void * const weight, CCTK_
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1832,7 +1832,7 @@ int LocalReduce_Max_REAL4(int i, int weight_on, const void * const weight, CCTK_
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -1845,7 +1845,7 @@ int LocalReduce_Max_REAL4(int i, int weight_on, const void * const weight, CCTK_
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1873,7 +1873,7 @@ int LocalReduce_Max_REAL4(int i, int weight_on, const void * const weight, CCTK_
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -1887,7 +1887,7 @@ int LocalReduce_Max_REAL4(int i, int weight_on, const void * const weight, CCTK_
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -1915,7 +1915,7 @@ int LocalReduce_Max_REAL4(int i, int weight_on, const void * const weight, CCTK_
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -1929,7 +1929,7 @@ int LocalReduce_Max_REAL4(int i, int weight_on, const void * const weight, CCTK_
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -1961,7 +1961,7 @@ int LocalReduce_Max_REAL8(int i, int weight_on, const void * const weight, CCTK_
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2033,7 +2033,7 @@ int LocalReduce_Max_REAL8(int i, int weight_on, const void * const weight, CCTK_
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -2046,7 +2046,7 @@ int LocalReduce_Max_REAL8(int i, int weight_on, const void * const weight, CCTK_
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2073,7 +2073,7 @@ int LocalReduce_Max_REAL8(int i, int weight_on, const void * const weight, CCTK_
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -2086,7 +2086,7 @@ int LocalReduce_Max_REAL8(int i, int weight_on, const void * const weight, CCTK_
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2114,7 +2114,7 @@ int LocalReduce_Max_REAL8(int i, int weight_on, const void * const weight, CCTK_
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -2128,7 +2128,7 @@ int LocalReduce_Max_REAL8(int i, int weight_on, const void * const weight, CCTK_
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2156,7 +2156,7 @@ int LocalReduce_Max_REAL8(int i, int weight_on, const void * const weight, CCTK_
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -2171,7 +2171,7 @@ int LocalReduce_Max_REAL8(int i, int weight_on, const void * const weight, CCTK_
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -2203,7 +2203,7 @@ int LocalReduce_Max_REAL16(int i, int weight_on, const void * const weight, CCTK
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2275,7 +2275,7 @@ int LocalReduce_Max_REAL16(int i, int weight_on, const void * const weight, CCTK
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -2288,7 +2288,7 @@ int LocalReduce_Max_REAL16(int i, int weight_on, const void * const weight, CCTK
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2315,7 +2315,7 @@ int LocalReduce_Max_REAL16(int i, int weight_on, const void * const weight, CCTK
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -2328,7 +2328,7 @@ int LocalReduce_Max_REAL16(int i, int weight_on, const void * const weight, CCTK
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2356,7 +2356,7 @@ int LocalReduce_Max_REAL16(int i, int weight_on, const void * const weight, CCTK
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -2370,7 +2370,7 @@ int LocalReduce_Max_REAL16(int i, int weight_on, const void * const weight, CCTK
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2398,7 +2398,7 @@ int LocalReduce_Max_REAL16(int i, int weight_on, const void * const weight, CCTK
inval.Re = (CCTK_REAL16) typed_vdata[sum_indices];
#endif
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -2412,7 +2412,7 @@ int LocalReduce_Max_REAL16(int i, int weight_on, const void * const weight, CCTK
#define REDUCTION_PREOP_CAST(inval, typed_vdata,sum_indices, out_type) \
inval = (out_type) typed_vdata[sum_indices];
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -2454,7 +2454,7 @@ int LocalReduce_Max_COMPLEX(int i, int weight_on, const void * const weight, CCT
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2516,7 +2516,7 @@ int LocalReduce_Max_COMPLEX(int i, int weight_on, const void * const weight, CCT
(inval).Re = (CCTK_REAL) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -2540,7 +2540,7 @@ int LocalReduce_Max_COMPLEX(int i, int weight_on, const void * const weight, CCT
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2557,7 +2557,7 @@ int LocalReduce_Max_COMPLEX(int i, int weight_on, const void * const weight, CCT
(inval).Re = (CCTK_REAL4) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL4) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -2581,7 +2581,7 @@ int LocalReduce_Max_COMPLEX(int i, int weight_on, const void * const weight, CCT
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2599,7 +2599,7 @@ int LocalReduce_Max_COMPLEX(int i, int weight_on, const void * const weight, CCT
(inval).Re = (CCTK_REAL8) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL8) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -2624,7 +2624,7 @@ int LocalReduce_Max_COMPLEX(int i, int weight_on, const void * const weight, CCT
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2642,7 +2642,7 @@ int LocalReduce_Max_COMPLEX(int i, int weight_on, const void * const weight, CCT
(inval).Re = (CCTK_REAL16) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL16) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -2667,7 +2667,7 @@ int LocalReduce_Max_COMPLEX(int i, int weight_on, const void * const weight, CCT
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -2710,7 +2710,7 @@ int LocalReduce_Max_COMPLEX8(int i, int weight_on, const void * const weight, CC
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2772,7 +2772,7 @@ int LocalReduce_Max_COMPLEX8(int i, int weight_on, const void * const weight, CC
(inval).Re = (CCTK_REAL) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -2796,7 +2796,7 @@ int LocalReduce_Max_COMPLEX8(int i, int weight_on, const void * const weight, CC
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2813,7 +2813,7 @@ int LocalReduce_Max_COMPLEX8(int i, int weight_on, const void * const weight, CC
(inval).Re = (CCTK_REAL4) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL4) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -2837,7 +2837,7 @@ int LocalReduce_Max_COMPLEX8(int i, int weight_on, const void * const weight, CC
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2855,7 +2855,7 @@ int LocalReduce_Max_COMPLEX8(int i, int weight_on, const void * const weight, CC
(inval).Re = (CCTK_REAL8) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL8) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -2880,7 +2880,7 @@ int LocalReduce_Max_COMPLEX8(int i, int weight_on, const void * const weight, CC
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -2898,7 +2898,7 @@ int LocalReduce_Max_COMPLEX8(int i, int weight_on, const void * const weight, CC
(inval).Re = (CCTK_REAL16) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL16) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -2923,7 +2923,7 @@ int LocalReduce_Max_COMPLEX8(int i, int weight_on, const void * const weight, CC
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -2966,7 +2966,7 @@ int LocalReduce_Max_COMPLEX16(int i, int weight_on, const void * const weight, C
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -3028,7 +3028,7 @@ int LocalReduce_Max_COMPLEX16(int i, int weight_on, const void * const weight, C
(inval).Re = (CCTK_REAL) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -3052,7 +3052,7 @@ int LocalReduce_Max_COMPLEX16(int i, int weight_on, const void * const weight, C
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -3069,7 +3069,7 @@ int LocalReduce_Max_COMPLEX16(int i, int weight_on, const void * const weight, C
(inval).Re = (CCTK_REAL4) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL4) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -3093,7 +3093,7 @@ int LocalReduce_Max_COMPLEX16(int i, int weight_on, const void * const weight, C
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -3111,7 +3111,7 @@ int LocalReduce_Max_COMPLEX16(int i, int weight_on, const void * const weight, C
(inval).Re = (CCTK_REAL8) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL8) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -3136,7 +3136,7 @@ int LocalReduce_Max_COMPLEX16(int i, int weight_on, const void * const weight, C
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -3154,7 +3154,7 @@ int LocalReduce_Max_COMPLEX16(int i, int weight_on, const void * const weight, C
(inval).Re = (CCTK_REAL16) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL16) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -3179,7 +3179,7 @@ int LocalReduce_Max_COMPLEX16(int i, int weight_on, const void * const weight, C
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;
@@ -3222,7 +3222,7 @@ int LocalReduce_Max_COMPLEX32(int i, int weight_on, const void * const weight, C
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -3284,7 +3284,7 @@ int LocalReduce_Max_COMPLEX32(int i, int weight_on, const void * const weight, C
(inval).Re = (CCTK_REAL) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_COMPLEX, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -3308,7 +3308,7 @@ int LocalReduce_Max_COMPLEX32(int i, int weight_on, const void * const weight, C
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -3325,7 +3325,7 @@ int LocalReduce_Max_COMPLEX32(int i, int weight_on, const void * const weight, C
(inval).Re = (CCTK_REAL4) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL4) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], weight_on, weight, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,input_array_dims,product)
@@ -3349,7 +3349,7 @@ int LocalReduce_Max_COMPLEX32(int i, int weight_on, const void * const weight, C
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -3367,7 +3367,7 @@ int LocalReduce_Max_COMPLEX32(int i, int weight_on, const void * const weight, C
(inval).Re = (CCTK_REAL8) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL8) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -3392,7 +3392,7 @@ int LocalReduce_Max_COMPLEX32(int i, int weight_on, const void * const weight, C
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
@@ -3410,7 +3410,7 @@ int LocalReduce_Max_COMPLEX32(int i, int weight_on, const void * const weight, C
(inval).Re = (CCTK_REAL16) (typed_vdata[sum_indices]).Re; (inval).Im = (CCTK_REAL16) (typed_vdata[sum_indices]).Im;
#define REDUCTION_OPERATION(Max, scalar) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if(ABS(weight)>SMALL_NUMBER){if ((Max).Re < (scalar).Re) (Max).Re = (scalar).Re;};
#define REDUCTION_INITIAL(num) (num).Re = 0.0; (num).Im = 0.0;
#define EXTRA_STEP(a, b)
@@ -3435,7 +3435,7 @@ int LocalReduce_Max_COMPLEX32(int i, int weight_on, const void * const weight, C
#endif
#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (Max < scalar) Max = scalar;
+#define WEIGHTED_REDUCTION_OPERATION(Max, scalar, weight) if (ABS(weight)> SMALL_NUMBER) {if (Max < scalar) Max = scalar;} ;
#define REDUCTION_INITIAL(num) num = 0;
#define EXTRA_STEP(a, b)
break;