11 for ( i=0; i<
NCLR; i++)
13 printf(
"%f %f %f %f %f %f\n",a->
e[i][0].
re,a->
e[i][0].
im,a->
e[i][1].
re,a->
e[i][1].
im,a->
e[i][2].
re,a->
e[i][2].
im);
24 for ( j=0; j<
NCLR; j++)
25 for ( i=0; i<
NCLR; i++)
31 for ( j=0; j<
NCLR; j++)
32 a->
e[j][j].
re = 100*rank + coords[0] +
44 for(i = 0; i <
count; i++)
46 for(x[2] = 0; x[2] < lattice_size[2]; x[2]++)
47 for(x[1] = 0; x[1] < lattice_size[1]; x[1]++)
48 for(x[0] = 0; x[0] < lattice_size[0]; x[0]++)
52 vfill_m(field[i] + index, x, i);
61 for(i = 0; i <
count; i++){
64 printf(
"vcreate_M(%d): Can't malloc field\n",
this_node);
76 for(i = 0; i <
count; i++)
89 for ( j=0; j<
NCLR; j++)
90 for ( i=0; i<
NCLR; i++)
92 diff = fielda[k][m].
e[j][i].
re - fieldb[k][m].
e[j][i].
re;
94 diff = fielda[k][m].
e[j][i].
im - fieldb[k][m].
e[j][i].
im;
100 QMP_sum_float(&sum2);
114 for (i=0;i<
count;i++)
116 dest = field[i] + index;
130 for (i=0; i<
count; i++, dest++)
132 src = field[i] + index;
143 for(i = 0; i < 4; i++)
144 if(lower[i] > x[i] || upper[i] < x[i]){
void vset_M(suN_matrix *field[], int count)
int inside_subset(int x[], int lower[], int upper[])
void vput_M(char *s1, size_t index, int count, void *s2)
void vdestroy_M(suN_matrix *field[], int count)
void vget_M(char *s1, size_t index, int count, void *s2)
__device__ unsigned int count
void vfill_m(suN_matrix *a, int coords[], int rank)
int node_index(const int x[])
void print_m(suN_matrix *a)
int node_number(const int x[])
int vcreate_M(suN_matrix *field[], int count)
float vcompare_M(suN_matrix *fielda[], suN_matrix *fieldb[], int count)