Go to the documentation of this file.
9 #ifndef ACCEL_DEFINE_INDEX_INCLUDED
10 #define ACCEL_DEFINE_INDEX_INCLUDED
22 #define NDD 8 // assuming ND = 4
25 #define IDX_CORE(nin, in, ist) ((in) + (nin) * (ist))
28 #define IDX2(nin, in, ist) (((ist)%NWP) + NWP*((in) + (nin)*((ist)/NWP)))
31 #define IDX2_SP_R(ic, id, ist) (((ist)%NWP) + NWP*(2*(ic) + NVC*((id) + ND*((ist)/NWP))))
32 #define IDX2_SP_I(ic, id, ist) (((ist)%NWP) + NWP*(2*(ic)+1 + NVC*((id) + ND*((ist)/NWP))))
33 #define IDX2_SP(ivc, id, ist) (((ist)%NWP) + NWP*((ivc) + NVC*((id) + ND*((ist)/NWP))))
36 #define IDX2_SP_5D_R(ic, id, is, Ns, ist) (((ist)%NWP) + NWP*(2*(ic) + NVC*((id) + ND*( (is) + (Ns) * ((ist)/NWP)))))
37 #define IDX2_SP_5D_I(ic, id, is, Ns, ist) (((ist)%NWP) + NWP*(2*(ic)+1 + NVC*((id) + ND*( (is) + (Ns) * ((ist)/NWP)))))
41 #define IDXBF_R(ic, id, ist) (((ist)%NWP) + NWP*(2*(ic) + NVC*((id) + ND2*((ist)/NWP))))
42 #define IDXBF_I(ic, id, ist) (((ist)%NWP) + NWP*(2*(ic)+1 + NVC*((id) + ND2*((ist)/NWP))))
43 #define IDXBF(ivc, id, ist) (((ist)%NWP) + NWP*((ivc) + NVC*((id) + ND2*((ist)/NWP))))
46 #define IDX2_1SP_R(ic, ist) (((ist)%NWP) + NWP*( 2*((ic) + NC*((ist)/NWP))))
47 #define IDX2_1SP_I(ic, ist) (((ist)%NWP) + NWP*(1+2*((ic) + NC*((ist)/NWP))))
48 #define IDX2_1SP(ivc, ist) (((ist)%NWP) + NWP*((ivc) + NVC*((ist)/NWP)))
51 #define IDX2_G_R(ic1, ic2, ist) (((ist)%NWP) + NWP*( 2*((ic1) + NC*((ic2) + NC*((ist)/NWP)))))
52 #define IDX2_G_I(ic1, ic2, ist) (((ist)%NWP) + NWP*(1+2*((ic1) + NC*((ic2) + NC*((ist)/NWP)))))
55 #define IDX_CT_R(ic1, ic2, idd, ist) (((ist)%NWP) + NWP*( 2*((ic1) + NC*((ic2) + NC*((idd) + NDD*((ist)/NWP))))))
56 #define IDX_CT_I(ic1, ic2, idd, ist) (((ist)%NWP) + NWP*(1+2*((ic1) + NC*((ic2) + NC*((idd) + NDD*((ist)/NWP))))))
59 #define IDX2_5D(nin, in, is, Ns, ist) (((ist) % NWP) + NWP * ((in) + (nin) * (is + (Ns) * ((ist) / NWP))))
61 #define IDX2_SP_5D_R(ic, id, is, Ns, ist) (((ist)%NWP) + NWP*(2*(ic) + NVC*((id) + ND*( (is) + (Ns) * ((ist)/NWP)))))
62 #define IDX2_SP_5D_I(ic, id, is, Ns, ist) (((ist)%NWP) + NWP*(2*(ic)+1 + NVC*((id) + ND*( (is) + (Ns) * ((ist)/NWP)))))