Bridge++  Ver.2.1.3
mult_Clover_csw_dirac_openacc-inc.h
Go to the documentation of this file.
1 
9  v2_01 = -kappa * v2_01;
10  v2_11 = -kappa * v2_11;
11  v2_21 = -kappa * v2_21;
12  v2_31 = -kappa * v2_31;
13  v2_41 = -kappa * v2_41;
14  v2_51 = -kappa * v2_51;
15 
16  v2_02 = -kappa * v2_02;
17  v2_12 = -kappa * v2_12;
18  v2_22 = -kappa * v2_22;
19  v2_32 = -kappa * v2_32;
20  v2_42 = -kappa * v2_42;
21  v2_52 = -kappa * v2_52;
22 
23  v2_03 = -kappa * v2_03;
24  v2_13 = -kappa * v2_13;
25  v2_23 = -kappa * v2_23;
26  v2_33 = -kappa * v2_33;
27  v2_43 = -kappa * v2_43;
28  v2_53 = -kappa * v2_53;
29 
30  v2_04 = -kappa * v2_04;
31  v2_14 = -kappa * v2_14;
32  v2_24 = -kappa * v2_24;
33  v2_34 = -kappa * v2_34;
34  v2_44 = -kappa * v2_44;
35  v2_54 = -kappa * v2_54;
36 
37  for(int id = 0; id < ND2; ++id){
38  int id2 = (id + ND2) % ND;
39 
40  vt1_0 = v1[IDX2_SP_R(0, id, site)];
41  vt1_1 = v1[IDX2_SP_I(0, id, site)];
42  vt1_2 = v1[IDX2_SP_R(1, id, site)];
43  vt1_3 = v1[IDX2_SP_I(1, id, site)];
44  vt1_4 = v1[IDX2_SP_R(2, id, site)];
45  vt1_5 = v1[IDX2_SP_I(2, id, site)];
46 
47  vt2_0 = v1[IDX2_SP_R(0, id2, site)];
48  vt2_1 = v1[IDX2_SP_I(0, id2, site)];
49  vt2_2 = v1[IDX2_SP_R(1, id2, site)];
50  vt2_3 = v1[IDX2_SP_I(1, id2, site)];
51  vt2_4 = v1[IDX2_SP_R(2, id2, site)];
52  vt2_5 = v1[IDX2_SP_I(2, id2, site)];
53 
54  int icst1 = site + Nst_pad * (id + ND * 0);
55  int icst2 = site + Nst_pad * (id2 + ND * 0);
56  int icst3 = site + Nst_pad * (id + ND * 1);
57  int icst4 = site + Nst_pad * (id2 + ND * 1);
58 
59  int ic2 = 0;
60  u_0 = ct[IDX2_G_R(0, ic2, icst1)];
61  u_1 = ct[IDX2_G_I(0, ic2, icst1)];
62  u_2 = ct[IDX2_G_R(1, ic2, icst1)];
63  u_3 = ct[IDX2_G_I(1, ic2, icst1)];
64  u_4 = ct[IDX2_G_R(2, ic2, icst1)];
65  u_5 = ct[IDX2_G_I(2, ic2, icst1)];
66 
67  v2_01 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
69 
70  v2_11 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
72 
73  v2_03 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
75 
76  v2_13 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
78 
79  u_6 = ct[IDX2_G_R(0, ic2, icst2)];
80  u_7 = ct[IDX2_G_I(0, ic2, icst2)];
81  u_8 = ct[IDX2_G_R(1, ic2, icst2)];
82  u_9 = ct[IDX2_G_I(1, ic2, icst2)];
83  u10 = ct[IDX2_G_R(2, ic2, icst2)];
84  u11 = ct[IDX2_G_I(2, ic2, icst2)];
85 
86  v2_03 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
88 
89  v2_13 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
91 
92  v2_01 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
94 
95  v2_11 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
97 
98  u_0 = ct[IDX2_G_R(0, ic2, icst3)];
99  u_1 = ct[IDX2_G_I(0, ic2, icst3)];
100  u_2 = ct[IDX2_G_R(1, ic2, icst3)];
101  u_3 = ct[IDX2_G_I(1, ic2, icst3)];
102  u_4 = ct[IDX2_G_R(2, ic2, icst3)];
103  u_5 = ct[IDX2_G_I(2, ic2, icst3)];
104 
105  v2_02 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
107 
108  v2_12 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
110 
111  v2_04 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
113 
114  v2_14 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
116 
117  u_6 = ct[IDX2_G_R(0, ic2, icst4)];
118  u_7 = ct[IDX2_G_I(0, ic2, icst4)];
119  u_8 = ct[IDX2_G_R(1, ic2, icst4)];
120  u_9 = ct[IDX2_G_I(1, ic2, icst4)];
121  u10 = ct[IDX2_G_R(2, ic2, icst4)];
122  u11 = ct[IDX2_G_I(2, ic2, icst4)];
123 
124  v2_04 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
126 
127  v2_14 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
129 
130  v2_02 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
132 
133  v2_12 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
135 
136 
137  ic2 = 1;
138 
139  u_0 = ct[IDX2_G_R(0, ic2, icst1)];
140  u_1 = ct[IDX2_G_I(0, ic2, icst1)];
141  u_2 = ct[IDX2_G_R(1, ic2, icst1)];
142  u_3 = ct[IDX2_G_I(1, ic2, icst1)];
143  u_4 = ct[IDX2_G_R(2, ic2, icst1)];
144  u_5 = ct[IDX2_G_I(2, ic2, icst1)];
145 
146  v2_21 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
148 
149  v2_31 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
151 
152  v2_23 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
154 
155  v2_33 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
157 
158  u_6 = ct[IDX2_G_R(0, ic2, icst2)];
159  u_7 = ct[IDX2_G_I(0, ic2, icst2)];
160  u_8 = ct[IDX2_G_R(1, ic2, icst2)];
161  u_9 = ct[IDX2_G_I(1, ic2, icst2)];
162  u10 = ct[IDX2_G_R(2, ic2, icst2)];
163  u11 = ct[IDX2_G_I(2, ic2, icst2)];
164 
165  v2_23 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
167 
168  v2_33 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
170 
171  v2_21 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
173 
174  v2_31 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
176 
177  u_0 = ct[IDX2_G_R(0, ic2, icst3)];
178  u_1 = ct[IDX2_G_I(0, ic2, icst3)];
179  u_2 = ct[IDX2_G_R(1, ic2, icst3)];
180  u_3 = ct[IDX2_G_I(1, ic2, icst3)];
181  u_4 = ct[IDX2_G_R(2, ic2, icst3)];
182  u_5 = ct[IDX2_G_I(2, ic2, icst3)];
183 
184  v2_22 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
186 
187  v2_32 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
189 
190  v2_24 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
192 
193  v2_34 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
195 
196  u_6 = ct[IDX2_G_R(0, ic2, icst4)];
197  u_7 = ct[IDX2_G_I(0, ic2, icst4)];
198  u_8 = ct[IDX2_G_R(1, ic2, icst4)];
199  u_9 = ct[IDX2_G_I(1, ic2, icst4)];
200  u10 = ct[IDX2_G_R(2, ic2, icst4)];
201  u11 = ct[IDX2_G_I(2, ic2, icst4)];
202 
203  v2_24 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
205 
206  v2_34 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
208 
209  v2_22 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
211 
212  v2_32 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
214 
215 
216  ic2 = 2;
217 
218  u_0 = ct[IDX2_G_R(0, ic2, icst1)];
219  u_1 = ct[IDX2_G_I(0, ic2, icst1)];
220  u_2 = ct[IDX2_G_R(1, ic2, icst1)];
221  u_3 = ct[IDX2_G_I(1, ic2, icst1)];
222  u_4 = ct[IDX2_G_R(2, ic2, icst1)];
223  u_5 = ct[IDX2_G_I(2, ic2, icst1)];
224 
225  v2_41 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
227 
228  v2_51 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
230 
231  v2_43 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
233 
234  v2_53 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
236 
237  u_6 = ct[IDX2_G_R(0, ic2, icst2)];
238  u_7 = ct[IDX2_G_I(0, ic2, icst2)];
239  u_8 = ct[IDX2_G_R(1, ic2, icst2)];
240  u_9 = ct[IDX2_G_I(1, ic2, icst2)];
241  u10 = ct[IDX2_G_R(2, ic2, icst2)];
242  u11 = ct[IDX2_G_I(2, ic2, icst2)];
243 
244  v2_43 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
246 
247  v2_53 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
249 
250  v2_41 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
252 
253  v2_51 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
255 
256  u_0 = ct[IDX2_G_R(0, ic2, icst3)];
257  u_1 = ct[IDX2_G_I(0, ic2, icst3)];
258  u_2 = ct[IDX2_G_R(1, ic2, icst3)];
259  u_3 = ct[IDX2_G_I(1, ic2, icst3)];
260  u_4 = ct[IDX2_G_R(2, ic2, icst3)];
261  u_5 = ct[IDX2_G_I(2, ic2, icst3)];
262 
263  v2_42 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
265 
266  v2_52 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
268 
269  v2_44 += MULT_UV_R(u_0, u_1, u_2, u_3, u_4, u_5,
271 
272  v2_54 += MULT_UV_I(u_0, u_1, u_2, u_3, u_4, u_5,
274 
275  u_6 = ct[IDX2_G_R(0, ic2, icst4)];
276  u_7 = ct[IDX2_G_I(0, ic2, icst4)];
277  u_8 = ct[IDX2_G_R(1, ic2, icst4)];
278  u_9 = ct[IDX2_G_I(1, ic2, icst4)];
279  u10 = ct[IDX2_G_R(2, ic2, icst4)];
280  u11 = ct[IDX2_G_I(2, ic2, icst4)];
281 
282  v2_44 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
284 
285  v2_54 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
287 
288  v2_42 += MULT_UV_R(u_6, u_7, u_8, u_9, u10, u11,
290 
291  v2_52 += MULT_UV_I(u_6, u_7, u_8, u_9, u10, u11,
293 
294  }
295 
296 //============================================================END=====
v2_53
v2_53
Definition: mult_Clover_csw_dirac_openacc-inc.h:28
v2_32
v2_32
Definition: mult_Clover_csw_dirac_openacc-inc.h:19
v2_21
v2_21
Definition: mult_Clover_csw_dirac_openacc-inc.h:11
v2_43
v2_43
Definition: mult_Clover_csw_dirac_openacc-inc.h:27
u11
u11
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:74
vt2_1
vt2_1
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:40
v2_13
v2_13
Definition: mult_Clover_csw_dirac_openacc-inc.h:24
v2_24
v2_24
Definition: mult_Clover_csw_dirac_openacc-inc.h:32
u_0
u_0
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:46
v2_51
v2_51
Definition: mult_Clover_csw_dirac_openacc-inc.h:14
v2_14
v2_14
Definition: mult_Clover_csw_dirac_openacc-inc.h:31
v2_42
v2_42
Definition: mult_Clover_csw_dirac_openacc-inc.h:20
vt2_5
vt2_5
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:44
u_9
u_9
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:72
vt1_2
vt1_2
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:34
u_5
u_5
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:51
vt2_2
vt2_2
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:41
v2_54
v2_54
Definition: mult_Clover_csw_dirac_openacc-inc.h:35
v2_12
v2_12
Definition: mult_Clover_csw_dirac_openacc-inc.h:17
u_3
u_3
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:49
IDX2_G_I
#define IDX2_G_I(ic1, ic2, ist)
Definition: define_index.h:52
u_8
u_8
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:71
v2_03
v2_03
Definition: mult_Clover_csw_dirac_openacc-inc.h:23
vt1_0
vt1_0
Definition: mult_Wilson_eo_t_chiral_openacc-inc.h:18
v2_04
v2_04
Definition: mult_Clover_csw_dirac_openacc-inc.h:30
u10
u10
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:73
v2_34
v2_34
Definition: mult_Clover_csw_dirac_openacc-inc.h:33
v2_41
v2_41
Definition: mult_Clover_csw_dirac_openacc-inc.h:13
u_2
u_2
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:48
u_1
u_1
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:47
u_4
u_4
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:50
ND
#define ND
Definition: field_F_imp_SU2-inc.h:18
v2_52
v2_52
Definition: mult_Clover_csw_dirac_openacc-inc.h:21
v2_01
v2_01
Definition: mult_Clover_csw_dirac_openacc-inc.h:9
v2_33
v2_33
Definition: mult_Clover_csw_dirac_openacc-inc.h:26
vt1_5
vt1_5
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:37
v2_22
v2_22
Definition: mult_Clover_csw_dirac_openacc-inc.h:18
v2_31
v2_31
Definition: mult_Clover_csw_dirac_openacc-inc.h:12
vt2_3
vt2_3
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:42
v2_23
v2_23
Definition: mult_Clover_csw_dirac_openacc-inc.h:25
v2_02
v2_02
Definition: mult_Clover_csw_dirac_openacc-inc.h:16
vt1_3
vt1_3
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:35
MULT_UV_I
#define MULT_UV_I(u0, u1, u2, u3, u4, u5, v0, v1, v2, v3, v4, v5)
Definition: mult_Wilson_inline_openacc-inc.h:14
MULT_UV_R
#define MULT_UV_R(u0, u1, u2, u3, u4, u5, v0, v1, v2, v3, v4, v5)
Definition: mult_Wilson_inline_openacc-inc.h:13
IDX2_SP_R
#define IDX2_SP_R(ic, id, ist)
Definition: define_index.h:31
v2_11
v2_11
Definition: mult_Clover_csw_dirac_openacc-inc.h:10
IDX2_G_R
#define IDX2_G_R(ic1, ic2, ist)
Definition: define_index.h:51
vt2_4
vt2_4
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:43
u_6
u_6
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:69
vt2_0
vt2_0
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:39
ND2
#define ND2
Definition: define_params_SU3.h:18
IDX2_SP_I
#define IDX2_SP_I(ic, id, ist)
Definition: define_index.h:32
u_7
u_7
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:70
vt1_4
vt1_4
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:36
v2_44
v2_44
Definition: mult_Clover_csw_dirac_openacc-inc.h:34
vt1_1
vt1_1
Definition: mult_Domainwall_eo_t_dirac_openacc-inc.h:33