61 const int boundary_condition = 1;
64 up_x(v, w, boundary_condition);
66 up_y(v, w, boundary_condition);
68 up_z(v, w, boundary_condition);
70 up_t(v, w, boundary_condition);
81 const int boundary_condition = 1;
84 dn_x(v, w, boundary_condition);
86 dn_y(v, w, boundary_condition);
88 dn_z(v, w, boundary_condition);
90 dn_t(v, w, boundary_condition);
101 const int boundary_condition,
const int mu)
104 up_x(v, w, boundary_condition);
105 }
else if (mu == 1) {
106 up_y(v, w, boundary_condition);
107 }
else if (mu == 2) {
108 up_z(v, w, boundary_condition);
109 }
else if (mu == 3) {
110 up_t(v, w, boundary_condition);
121 const int boundary_condition,
const int mu)
124 dn_x(v, w, boundary_condition);
125 }
else if (mu == 1) {
126 dn_y(v, w, boundary_condition);
127 }
else if (mu == 2) {
128 dn_z(v, w, boundary_condition);
129 }
else if (mu == 3) {
130 dn_t(v, w, boundary_condition);
148 int ith, nth, is, ns;
149 set_threadtask(ith, nth, is, ns,
m_Nvol);
173 for (
int ex = 0; ex < Nex; ++ex) {
175 const double *wp = w.
ptr(Nin *
m_Nvol * ex);
177 for (
int site = is; site < ns; ++site) {
181 for (
int in = 0; in < Nin; ++in) {
182 wt[in + Nin *
iyzt] =
bc2 * wp[in + Nin * site];
197 for (
int site = is; site < ns; ++site) {
202 for (
int in = 0; in < Nin; ++in) {
203 vp[in + Nin * site] = wp[in + Nin * nei];
206 for (
int in = 0; in < Nin; ++in) {
207 vp[in + Nin * site] = vt[in + Nin *
iyzt];
213 if ((
m_Nin == 0) && (ith == 0)) {
231 int ith, nth, is, ns;
232 set_threadtask(ith, nth, is, ns,
m_Nvol);
256 for (
int ex = 0; ex < Nex; ++ex) {
258 const double *wp = w.
ptr(Nin *
m_Nvol * ex);
260 for (
int site = is; site < ns; ++site) {
264 for (
int in = 0; in < Nin; ++in) {
265 wt[in + Nin *
iyzt] = wp[in + Nin * site];
280 for (
int site = is; site < ns; ++site) {
285 for (
int in = 0; in < Nin; ++in) {
286 vp[in + Nin * site] = wp[in + Nin * nei];
289 for (
int in = 0; in < Nin; ++in) {
290 vp[in + Nin * site] =
bc2 * vt[in + Nin *
iyzt];
296 if ((
m_Nin == 0) && (ith == 0)) {
314 int ith, nth, is, ns;
315 set_threadtask(ith, nth, is, ns,
m_Nvol);
339 for (
int ex = 0; ex < Nex; ++ex) {
341 const double *wp = w.
ptr(Nin *
m_Nvol * ex);
343 for (
int site = is; site < ns; ++site) {
350 for (
int in = 0; in < Nin; ++in) {
351 wt[in + Nin * ixzt] =
bc2 * wp[in + Nin * site];
366 for (
int site = is; site < ns; ++site) {
375 for (
int in = 0; in < Nin; ++in) {
376 vp[in + Nin * site] = wp[in + Nin * nei];
379 for (
int in = 0; in < Nin; ++in) {
380 vp[in + Nin * site] = vt[in + Nin * ixzt];
386 if ((
m_Nin == 0) && (ith == 0)) {
404 int ith, nth, is, ns;
405 set_threadtask(ith, nth, is, ns,
m_Nvol);
429 for (
int ex = 0; ex < Nex; ++ex) {
431 const double *wp = w.
ptr(Nin *
m_Nvol * ex);
433 for (
int site = is; site < ns; ++site) {
440 for (
int in = 0; in < Nin; ++in) {
441 wt[in + Nin * ixzt] = wp[in + Nin * site];
456 for (
int site = is; site < ns; ++site) {
465 for (
int in = 0; in < Nin; ++in) {
466 vp[in + Nin * site] = wp[in + Nin * nei];
469 for (
int in = 0; in < Nin; ++in) {
470 vp[in + Nin * site] =
bc2 * vt[in + Nin * ixzt];
476 if ((
m_Nin == 0) && (ith == 0)) {
494 int ith, nth, is, ns;
495 set_threadtask(ith, nth, is, ns,
m_Nvol);
521 for (
int ex = 0; ex < Nex; ++ex) {
523 const double *wp = w.
ptr(Nin *
m_Nvol * ex);
525 for (
int site = is; site < ns; ++site) {
526 int ixy = site % Nxy;
527 int izt = site / Nxy;
530 int ixyt =
ixy + Nxy *
it;
532 for (
int in = 0; in < Nin; ++in) {
533 wt[in + Nin * ixyt] =
bc2 * wp[in + Nin * site];
548 for (
int site = is; site < ns; ++site) {
549 int ixy = site % Nxy;
550 int izt = site / Nxy;
553 int ixyt =
ixy + Nxy *
it;
557 for (
int in = 0; in < Nin; ++in) {
558 vp[in + Nin * site] = wp[in + Nin * nei];
561 for (
int in = 0; in < Nin; ++in) {
562 vp[in + Nin * site] = vt[in + Nin * ixyt];
568 if ((
m_Nin == 0) && (ith == 0)) {
586 int ith, nth, is, ns;
587 set_threadtask(ith, nth, is, ns,
m_Nvol);
613 for (
int ex = 0; ex < Nex; ++ex) {
615 const double *wp = w.
ptr(Nin *
m_Nvol * ex);
617 for (
int site = is; site < ns; ++site) {
618 int ixy = site % Nxy;
619 int izt = site / Nxy;
622 int ixyt =
ixy + Nxy *
it;
624 for (
int in = 0; in < Nin; ++in) {
625 wt[in + Nin * ixyt] = wp[in + Nin * site];
640 for (
int site = is; site < ns; ++site) {
641 int ixy = site % Nxy;
642 int izt = site / Nxy;
645 int ixyt =
ixy + Nxy *
it;
649 for (
int in = 0; in < Nin; ++in) {
650 vp[in + Nin * site] = wp[in + Nin * nei];
653 for (
int in = 0; in < Nin; ++in) {
654 vp[in + Nin * site] =
bc2 * vt[in + Nin * ixyt];
660 if ((
m_Nin == 0) && (ith == 0)) {
678 int ith, nth, is, ns;
679 set_threadtask(ith, nth, is, ns,
m_Nvol);
705 for (
int ex = 0; ex < Nex; ++ex) {
707 const double *wp = w.
ptr(Nin *
m_Nvol * ex);
709 for (
int site = is; site < ns; ++site) {
710 int ixyz = site % Nxyz;
711 int it = site / Nxyz;
713 for (
int in = 0; in < Nin; ++in) {
714 wt[in + Nin *
ixyz] =
bc2 * wp[in + Nin * site];
729 for (
int site = is; site < ns; ++site) {
730 int ixyz = site % Nxyz;
731 int it = site / Nxyz;
732 int nei =
ixyz + Nxyz * (
it + 1);
735 for (
int in = 0; in < Nin; ++in) {
736 vp[in + Nin * site] = wp[in + Nin * nei];
739 for (
int in = 0; in < Nin; ++in) {
740 vp[in + Nin * site] = vt[in + Nin *
ixyz];
746 if ((
m_Nin == 0) && (ith == 0)) {
764 int ith, nth, is, ns;
765 set_threadtask(ith, nth, is, ns,
m_Nvol);
791 for (
int ex = 0; ex < Nex; ++ex) {
793 const double *wp = w.
ptr(Nin *
m_Nvol * ex);
795 for (
int site = is; site < ns; ++site) {
796 int ixyz = site % Nxyz;
797 int it = site / Nxyz;
799 for (
int in = 0; in < Nin; ++in) {
800 wt[in + Nin *
ixyz] = wp[in + Nin * site];
815 for (
int site = is; site < ns; ++site) {
816 int ixyz = site % Nxyz;
817 int it = site / Nxyz;
818 int nei =
ixyz + Nxyz * (
it - 1);
821 for (
int in = 0; in < Nin; ++in) {
822 vp[in + Nin * site] = wp[in + Nin * nei];
825 for (
int in = 0; in < Nin; ++in) {
826 vp[in + Nin * site] =
bc2 * vt[in + Nin *
ixyz];
832 if ((
m_Nin == 0) && (ith == 0)) {