12#include "gadgetconfig.h"
20#include "../data/allvars.h"
21#include "../data/dtypes.h"
22#include "../mpi_utils/mpi_utils.h"
24static void min_MPI_MyIntPosType(
void *in,
void *inout,
int *len, MPI_Datatype *type)
31 for(
int i = 0; i < *len; i++)
32 if(invalues[i] < inoutvalues[i])
33 inoutvalues[i] = invalues[i];
36static void max_MPI_MyIntPosType(
void *in,
void *inout,
int *len, MPI_Datatype *type)
43 for(
int i = 0; i < *len; i++)
44 if(invalues[i] > inoutvalues[i])
45 inoutvalues[i] = invalues[i];
48static void min_MPI_MySignedIntPosType(
void *in,
void *inout,
int *len, MPI_Datatype *type)
55 for(
int i = 0; i < *len; i++)
56 if(invalues[i] < inoutvalues[i])
57 inoutvalues[i] = invalues[i];
60static void max_MPI_MySignedIntPosType(
void *in,
void *inout,
int *len, MPI_Datatype *type)
67 for(
int i = 0; i < *len; i++)
68 if(invalues[i] > inoutvalues[i])
69 inoutvalues[i] = invalues[i];
int32_t MySignedIntPosType
void my_mpi_types_init(void)
MPI_Datatype MPI_MyIntPosType
MPI_Op MPI_MAX_MySignedIntPosType
MPI_Op MPI_MIN_MySignedIntPosType
MPI_Op MPI_MAX_MyIntPosType
MPI_Op MPI_MIN_MyIntPosType