22 const int boundary_condition = 1;
25 up_x(&v, &w, boundary_condition);
27 up_y(&v, &w, boundary_condition);
29 up_z(&v, &w, boundary_condition);
31 up_t(&v, &w, boundary_condition);
43 const int boundary_condition = 1;
46 dn_x(&v, &w, boundary_condition);
48 dn_y(&v, &w, boundary_condition);
50 dn_z(&v, &w, boundary_condition);
52 dn_t(&v, &w, boundary_condition);
62 const int boundary_condition,
const int mu)
65 up_x(&v, &w, boundary_condition);
67 up_y(&v, &w, boundary_condition);
69 up_z(&v, &w, boundary_condition);
71 up_t(&v, &w, boundary_condition);
81 const int boundary_condition,
const int mu)
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);
104 bc2 = boundary_condition;
109 const int Nin = w->
nin();
110 const int Nex = w->
nex();
111 const int Nvol = w->
nvol();
116 for (
int t = 0; t <
m_Nt; t++) {
117 for (
int z = 0; z <
m_Nz; z++) {
118 for (
int y = 0; y <
m_Ny; y++) {
119 int s2 = y + m_Ny * (z + m_Nz * t);
121 for (
int x = 0; x <
m_Nx - 1; x++) {
124 for (
int ex = 0; ex < Nex; ex++) {
125 for (
int in = 0; in < Nin; in++) {
126 v->
set(in, ix, ex, w->
cmp(in, px, ex));
133 for (
int in = 0; in < Nin; in++) {
134 for (
int ex = 0; ex < Nex; ex++) {
135 wt->set(in, s2, ex, bc2 * w->
cmp(in, px, ex));
142 const int size = Nin * (Nvol /
m_Nx) * Nex;
145 for (
int t = 0; t <
m_Nt; t++) {
146 for (
int z = 0; z <
m_Nz; z++) {
147 for (
int y = 0; y <
m_Ny; y++) {
148 int s2 = y + m_Ny * (z + m_Nz * t);
152 for (
int in = 0; in < Nin; in++) {
153 for (
int ex = 0; ex < Nex; ex++) {
154 v->
set(in, ix, ex, vt->cmp(in, s2, ex));
169 bc2 = boundary_condition;
174 const int Nin = w->
nin();
175 const int Nex = w->
nex();
176 const int Nvol = w->
nvol();
181 for (
int t = 0; t <
m_Nt; t++) {
182 for (
int z = 0; z <
m_Nz; z++) {
183 for (
int x = 0; x <
m_Nx; x++) {
184 int s2 = x + m_Nx * (z + m_Nz * t);
187 for (
int y = 0; y < m_Ny - 1; y++) {
190 for (
int ex = 0; ex < Nex; ex++) {
191 for (
int in = 0; in < Nin; in++) {
192 v->
set(in, ix, ex, w->
cmp(in, px, ex));
200 for (
int in = 0; in < Nin; in++) {
201 for (
int ex = 0; ex < Nex; ex++) {
202 wt->set(in, s2, ex, bc2 * w->
cmp(in, px, ex));
209 const int size = Nin * (Nvol /
m_Ny) * Nex;
212 for (
int t = 0; t <
m_Nt; t++) {
213 for (
int z = 0; z <
m_Nz; z++) {
214 for (
int x = 0; x <
m_Nx; x++) {
215 int s2 = x + m_Nx * (z + m_Nz * t);
220 for (
int in = 0; in < Nin; in++) {
221 for (
int ex = 0; ex < Nex; ex++) {
222 v->
set(in, ix, ex, vt->cmp(in, s2, ex));
237 bc2 = boundary_condition;
242 const int Nin = w->
nin();
243 const int Nex = w->
nex();
244 const int Nvol = w->
nvol();
249 for (
int t = 0; t <
m_Nt; t++) {
250 for (
int y = 0; y <
m_Ny; y++) {
251 for (
int x = 0; x <
m_Nx; x++) {
252 int s2 = x + m_Nx * (y + m_Ny * t);
255 for (
int z = 0; z < m_Nz - 1; z++) {
258 for (
int ex = 0; ex < Nex; ex++) {
259 for (
int in = 0; in < Nin; in++) {
260 v->
set(in, ix, ex, w->
cmp(in, px, ex));
268 for (
int in = 0; in < Nin; in++) {
269 for (
int ex = 0; ex < Nex; ex++) {
270 wt->set(in, s2, ex, bc2 * w->
cmp(in, px, ex));
277 const int size = Nin * (Nvol /
m_Nz) * Nex;
280 for (
int t = 0; t <
m_Nt; t++) {
281 for (
int y = 0; y <
m_Ny; y++) {
282 for (
int x = 0; x <
m_Nx; x++) {
283 int s2 = x + m_Nx * (y + m_Ny * t);
288 for (
int in = 0; in < Nin; in++) {
289 for (
int ex = 0; ex < Nex; ex++) {
290 v->
set(in, ix, ex, vt->cmp(in, s2, ex));
305 bc2 = boundary_condition;
310 const int Nin = w->
nin();
311 const int Nex = w->
nex();
312 const int Nvol = w->
nvol();
317 for (
int z = 0; z <
m_Nz; z++) {
318 for (
int y = 0; y <
m_Ny; y++) {
319 for (
int x = 0; x <
m_Nx; x++) {
320 int s2 = x + m_Nx * (y + m_Ny * z);
323 for (
int t = 0; t < m_Nt - 1; t++) {
326 for (
int ex = 0; ex < Nex; ex++) {
327 for (
int in = 0; in < Nin; in++) {
328 v->
set(in, ix, ex, w->
cmp(in, px, ex));
336 for (
int ex = 0; ex < Nex; ex++) {
337 for (
int in = 0; in < Nin; in++) {
338 wt->set(in, s2, ex, bc2 * w->
cmp(in, px, ex));
345 const int size = Nin * (Nvol /
m_Nt) * Nex;
348 for (
int z = 0; z <
m_Nz; z++) {
349 for (
int y = 0; y <
m_Ny; y++) {
350 for (
int x = 0; x <
m_Nx; x++) {
351 int s2 = x + m_Nx * (y + m_Ny * z);
356 for (
int ex = 0; ex < Nex; ex++) {
357 for (
int in = 0; in < Nin; in++) {
358 v->
set(in, ix, ex, vt->cmp(in, s2, ex));
373 bc2 = boundary_condition;
378 const int Nin = w->
nin();
379 const int Nex = w->
nex();
380 const int Nvol = w->
nvol();
385 for (
int t = 0; t <
m_Nt; t++) {
386 for (
int z = 0; z <
m_Nz; z++) {
387 for (
int y = 0; y <
m_Ny; y++) {
388 int s2 = y + m_Ny * (z + m_Nz * t);
391 for (
int x = 1; x <
m_Nx; x++) {
394 for (
int ex = 0; ex < Nex; ex++) {
395 for (
int in = 0; in < Nin; in++) {
396 v->
set(in, ix, ex, w->
cmp(in, px, ex));
403 for (
int in = 0; in < Nin; in++) {
404 for (
int ex = 0; ex < Nex; ex++) {
405 wt->set(in, s2, ex, w->
cmp(in, px, ex));
412 const int size = Nin * (Nvol /
m_Nx) * Nex;
415 for (
int t = 0; t <
m_Nt; t++) {
416 for (
int z = 0; z <
m_Nz; z++) {
417 for (
int y = 0; y <
m_Ny; y++) {
418 int s2 = y + m_Ny * (z + m_Nz * t);
422 for (
int in = 0; in < Nin; in++) {
423 for (
int ex = 0; ex < Nex; ex++) {
424 v->
set(in, ix, ex, bc2 * vt->cmp(in, s2, ex));
439 bc2 = boundary_condition;
444 const int Nin = w->
nin();
445 const int Nex = w->
nex();
446 const int Nvol = w->
nvol();
451 for (
int t = 0; t <
m_Nt; t++) {
452 for (
int z = 0; z <
m_Nz; z++) {
453 for (
int x = 0; x <
m_Nx; x++) {
454 int s2 = x + m_Nx * (z + m_Nz * t);
457 for (
int y = 1; y <
m_Ny; y++) {
460 for (
int ex = 0; ex < Nex; ex++) {
461 for (
int in = 0; in < Nin; in++) {
462 v->
set(in, ix, ex, w->
cmp(in, px, ex));
469 for (
int in = 0; in < Nin; in++) {
470 for (
int ex = 0; ex < Nex; ex++) {
471 wt->set(in, s2, ex, w->
cmp(in, px, ex));
478 const int size = Nin * (Nvol /
m_Ny) * Nex;
481 for (
int t = 0; t <
m_Nt; t++) {
482 for (
int z = 0; z <
m_Nz; z++) {
483 for (
int x = 0; x <
m_Nx; x++) {
484 int s2 = x + m_Nx * (z + m_Nz * t);
489 for (
int in = 0; in < Nin; in++) {
490 for (
int ex = 0; ex < Nex; ex++) {
491 v->
set(in, ix, ex, bc2 * vt->cmp(in, s2, ex));
506 bc2 = boundary_condition;
511 const int Nin = w->
nin();
512 const int Nex = w->
nex();
513 const int Nvol = w->
nvol();
518 for (
int t = 0; t <
m_Nt; t++) {
519 for (
int y = 0; y <
m_Ny; y++) {
520 for (
int x = 0; x <
m_Nx; x++) {
521 int s2 = x + m_Nx * (y + m_Ny * t);
524 for (
int z = 1; z <
m_Nz; z++) {
527 for (
int ex = 0; ex < Nex; ex++) {
528 for (
int in = 0; in < Nin; in++) {
529 v->
set(in, ix, ex, w->
cmp(in, px, ex));
536 for (
int in = 0; in < Nin; in++) {
537 for (
int ex = 0; ex < Nex; ex++) {
538 wt->set(in, s2, ex, w->
cmp(in, px, ex));
545 const int size = Nin * (Nvol /
m_Nz) * Nex;
548 for (
int t = 0; t <
m_Nt; t++) {
549 for (
int y = 0; y <
m_Ny; y++) {
550 for (
int x = 0; x <
m_Nx; x++) {
551 int s2 = x + m_Nx * (y + m_Ny * t);
556 for (
int in = 0; in < Nin; in++) {
557 for (
int ex = 0; ex < Nex; ex++) {
558 v->
set(in, ix, ex, bc2 * vt->cmp(in, s2, ex));
573 bc2 = boundary_condition;
578 const int Nin = w->
nin();
579 const int Nex = w->
nex();
580 const int Nvol = w->
nvol();
585 for (
int z = 0; z <
m_Nz; z++) {
586 for (
int y = 0; y <
m_Ny; y++) {
587 for (
int x = 0; x <
m_Nx; x++) {
588 int s2 = x + m_Nx * (y + m_Ny * z);
591 for (
int t = 1; t <
m_Nt; t++) {
594 for (
int ex = 0; ex < Nex; ex++) {
595 for (
int in = 0; in < Nin; in++) {
596 v->
set(in, ix, ex, w->
cmp(in, px, ex));
603 for (
int ex = 0; ex < Nex; ex++) {
604 for (
int in = 0; in < Nin; in++) {
605 wt->set(in, s2, ex, w->
cmp(in, px, ex));
612 const int size = Nin * (Nvol /
m_Nt) * Nex;
615 for (
int z = 0; z <
m_Nz; z++) {
616 for (
int y = 0; y <
m_Ny; y++) {
617 for (
int x = 0; x <
m_Nx; x++) {
618 int s2 = x + m_Nx * (y + m_Ny * z);
623 for (
int ex = 0; ex < Nex; ex++) {
624 for (
int in = 0; in < Nin; in++) {
625 v->
set(in, ix, ex, bc2 * vt->cmp(in, s2, ex));
Bridge::VerboseLevel m_vl
void set(const int jin, const int site, const int jex, double v)
int site(const int &x, const int &y, const int &z, const int &t) const
static const std::string class_name
void up_x(Field *, const Field *, const int boundary_condition)
void up_z(Field *, const Field *, const int boundary_condition)
Container of Field-type object.
double cmp(const int jin, const int site, const int jex) const
void dn_t(Field *, const Field *, const int boundary_condition)
static int ipe(const int dir)
logical coordinate of current proc.
static int exchange(int count, double *recv_buf, double *send_buf, int idir, int ipm, int tag)
receive array of double from upstream specified by idir and ipm, and send array to downstream...
void backward(Field &, const Field &, const int mu)
void crucial(const char *format,...)
void up_y(Field *, const Field *, const int boundary_condition)
void dn_z(Field *, const Field *, const int boundary_condition)
void up_t(Field *, const Field *, const int boundary_condition)
void dn_x(Field *, const Field *, const int boundary_condition)
void dn_y(Field *, const Field *, const int boundary_condition)
void forward(Field &, const Field &, const int mu)