aboutsummaryrefslogtreecommitdiff
path: root/src/ReductionMax.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ReductionMax.c')
-rw-r--r--src/ReductionMax.c954
1 files changed, 17 insertions, 937 deletions
diff --git a/src/ReductionMax.c b/src/ReductionMax.c
index d86579d..bd78caa 100644
--- a/src/ReductionMax.c
+++ b/src/ReductionMax.c
@@ -13,6 +13,7 @@
#include <string.h>
#include "local_reductions.h"
+#include "Max_Functions.h"
static const char *rcsid = "$Id$";
@@ -33,7 +34,6 @@ static int ReductionMax (int N_dims, int operator_handle,
const CCTK_INT output_number_type_codes[],
void * const output_numbers[]);
-
/*@@
@routine LocalReduce_Max
@author Tom Goodale, Yaakoub Y El Khamra
@@ -134,7 +134,7 @@ static int ReductionMax (int N_dims, int operator_handle,
void * const output_numbers[])
{
/* utility variables */
- int i, j, k, flag, product, num_points;
+ int i, j, num_points;
int ierr;
int * iters_per_dim;
@@ -143,8 +143,6 @@ static int ReductionMax (int N_dims, int operator_handle,
int * actual_indices;
int * actual_iters_per_dim;
int max_iter = 0;
- int iter = 0;
- int sum_indices = 0;
int max_index = 1;
/* data pointer offset and strides declared here */
@@ -242,990 +240,72 @@ static int ReductionMax (int N_dims, int operator_handle,
max_iter *= iters_per_dim [j];
}
-#undef REDUCTION_OPERATION
-#undef REDUCTION_INITIAL
-#undef EXTRA_STEP
-
-#define REDUCTION_OPERATION(Max, scalar) if (Max < scalar) Max = scalar;
-#define REDUCTION_INITIAL(num) num = 0;
-#define EXTRA_STEP(a, b)
-
for (i = 0; i < N_input_arrays; i++)
{
/* Do the type matching */
switch (input_array_type_codes[i])
{
- /* in values type switches*/
+ /* in values type switches*/
case CCTK_VARIABLE_CHAR:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
-/* ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_BYTE, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_CHAR(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
case CCTK_VARIABLE_INT:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
-/* ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_INT, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_INT(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#ifdef CCTK_INT1
case CCTK_VARIABLE_INT1:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
-/* ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_INT1, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_INT1(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#endif
#ifdef CCTK_INT2
case CCTK_VARIABLE_INT2:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
-/* ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_INT2, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_INT2(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#endif
#ifdef CCTK_INT4
case CCTK_VARIABLE_INT4:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
-/* ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_INT4, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_INT4(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#endif
#ifdef CCTK_INT8
case CCTK_VARIABLE_INT8:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
-/* ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_INT8, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_INT8(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#endif
case CCTK_VARIABLE_REAL:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
-/* ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_REAL, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_REAL(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#ifdef CCTK_REAL4
case CCTK_VARIABLE_REAL4:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
-/* ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_REAL4, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_REAL4(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#endif
#ifdef CCTK_REAL8
case CCTK_VARIABLE_REAL8:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
-/* ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_REAL8, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_REAL8(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#endif
#ifdef CCTK_REAL16
case CCTK_VARIABLE_REAL16:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
-/* ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_REAL16, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_REAL16(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#endif
case CCTK_VARIABLE_COMPLEX:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
-/* ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- case CCTK_VARIABLE_INT:
-/* ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
-/* ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
-/* ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
-/* ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
-/* ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #endif
- case CCTK_VARIABLE_REAL:
-/* ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
-/* ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
-/* ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
-/* ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
-/* ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)*/
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_COMPLEX(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#ifdef CCTK_COMPLEX8
case CCTK_VARIABLE_COMPLEX8:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX8, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_COMPLEX8(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#endif
#ifdef CCTK_COMPLEX16
case CCTK_VARIABLE_COMPLEX16:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX16, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_COMPLEX16(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#endif
#ifdef CCTK_COMPLEX32
case CCTK_VARIABLE_COMPLEX32:
- switch (output_number_type_codes[i])
- {
- /* out values type switches*/
- case CCTK_VARIABLE_CHAR:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_BYTE, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- case CCTK_VARIABLE_INT:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_INT, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_INT1
- case CCTK_VARIABLE_INT1:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_INT1, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT2
- case CCTK_VARIABLE_INT2:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_INT2, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT4
- case CCTK_VARIABLE_INT4:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_INT4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_INT8
- case CCTK_VARIABLE_INT8:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_INT8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_REAL:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_REAL, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_REAL4
- case CCTK_VARIABLE_REAL4:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_REAL4, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL8
- case CCTK_VARIABLE_REAL8:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_REAL8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_REAL16
- case CCTK_VARIABLE_REAL16:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_REAL16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- case CCTK_VARIABLE_COMPLEX:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_COMPLEX, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #ifdef CCTK_COMPLEX8
- case CCTK_VARIABLE_COMPLEX8:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_COMPLEX8, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX16
- case CCTK_VARIABLE_COMPLEX16:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_COMPLEX16, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- #ifdef CCTK_COMPLEX32
- case CCTK_VARIABLE_COMPLEX32:
- ITERATE_ON_ARRAY(i,CCTK_COMPLEX32, input_arrays[i], CCTK_COMPLEX32, output_numbers[i], mask_on, input_array_offsets[i], indices, sum_indices, max_iter, iter, flag, actual_indices,input_array_strides, input_array_min_subscripts,product)
- break;
- #endif
- }
+ num_points = LocalReduce_Max_COMPLEX32(i, mask_on, input_array_offsets, indices, max_iter, actual_indices, input_array_strides, input_array_min_subscripts, num_points, actual_iters_per_dim, iters_per_dim, N_dims, input_arrays, output_number_type_codes, output_numbers);
break;
#endif
}