2929#include "start.h"
3030#include "su3.h"
3131#include "su3adj.h"
32+ #include <ptbc.h>
3233
3334void get_staples (su3 * const staple , const int x , const int mu , const su3 * * in_gauge_field ) {
3435 int iy ;
@@ -41,20 +42,25 @@ void get_staples(su3* const staple, const int x, const int mu, const su3** in_ga
4142 w1 = & in_gauge_field [x ][k ];
4243 w2 = & in_gauge_field [g_iup [x ][k ]][mu ];
4344 w3 = & in_gauge_field [g_iup [x ][mu ]][k ];
45+ double const ptbc_fac0 = get_ptbc_coeff (x , k ) * get_ptbc_coeff (g_iup [x ][k ], mu ) * get_ptbc_coeff (g_iup [x ][mu ], k );
4446
4547 /* st = w2 * w3^d */
4648 _su3_times_su3d (st , * w2 , * w3 );
4749 /* v = v + w1 * st */
48- _su3_times_su3_acc (* staple , * w1 , st );
50+ //_su3_times_su3_acc(*staple, *w1, st);
51+ _real_times_su3_times_su3_acc (* staple , * w1 , st , ptbc_fac0 );
4952
5053 iy = g_idn [x ][k ];
5154 w1 = & in_gauge_field [iy ][k ];
5255 w2 = & in_gauge_field [iy ][mu ];
5356 w3 = & in_gauge_field [g_iup [iy ][mu ]][k ];
57+ double const ptbc_fac1 = get_ptbc_coeff (iy , k ) * get_ptbc_coeff (iy , mu ) * get_ptbc_coeff (g_iup [iy ][mu ], k );
58+
5459 /* st = w2 * w3 */
5560 _su3_times_su3 (st , * w2 , * w3 );
5661 /* v = v + w1^d * st */
57- _su3d_times_su3_acc (* staple , * w1 , st );
62+ //_su3d_times_su3_acc(*staple, *w1, st);
63+ _real_times_su3_times_su3_acc (* staple , * w1 , st , ptbc_fac1 );
5864 }
5965 }
6066}
@@ -71,20 +77,24 @@ void get_spacelike_staples(su3* const staple, const int x, const int mu,
7177 w1 = & in_gauge_field [x ][k ];
7278 w2 = & in_gauge_field [g_iup [x ][k ]][mu ];
7379 w3 = & in_gauge_field [g_iup [x ][mu ]][k ];
80+ double const ptbc_fac0 = get_ptbc_coeff (x , k ) * get_ptbc_coeff (g_iup [x ][k ], mu ) * get_ptbc_coeff (g_iup [x ][mu ], k );
7481
7582 /* st = w2 * w3^d */
7683 _su3_times_su3d (st , * w2 , * w3 );
7784 /* v = v + w1 * st */
78- _su3_times_su3_acc (* staple , * w1 , st );
85+ //_su3_times_su3_acc(*staple, *w1, st);
86+ _real_times_su3_times_su3_acc (* staple , * w1 , st , ptbc_fac0 );
7987
8088 iy = g_idn [x ][k ];
8189 w1 = & in_gauge_field [iy ][k ];
8290 w2 = & in_gauge_field [iy ][mu ];
8391 w3 = & in_gauge_field [g_iup [iy ][mu ]][k ];
92+ double const ptbc_fac1 = get_ptbc_coeff (iy , k ) * get_ptbc_coeff (iy , mu ) * get_ptbc_coeff (g_iup [iy ][mu ], k );
8493 /* st = w2 * w3 */
8594 _su3_times_su3 (st , * w2 , * w3 );
8695 /* v = v + w1^d * st */
87- _su3d_times_su3_acc (* staple , * w1 , st );
96+ //_su3d_times_su3_acc(*staple, *w1, st);
97+ _real_times_su3_times_su3_acc (* staple , * w1 , st , ptbc_fac1 );
8898 }
8999 }
90100}
@@ -101,19 +111,23 @@ void get_timelike_staples(su3* const staple, const int x, const int mu,
101111 w1 = & in_gauge_field [x ][k ];
102112 w2 = & in_gauge_field [g_iup [x ][k ]][mu ];
103113 w3 = & in_gauge_field [g_iup [x ][mu ]][k ];
114+ double const ptbc_fac0 = get_ptbc_coeff (x , k ) * get_ptbc_coeff (g_iup [x ][k ], mu ) * get_ptbc_coeff (g_iup [x ][mu ], k );
104115
105116 /* st = w2 * w3^d */
106117 _su3_times_su3d (st , * w2 , * w3 );
107118 /* v = v + w1 * st */
108- _su3_times_su3_acc (* staple , * w1 , st );
119+ //_su3_times_su3_acc(*staple, *w1, st);
120+ _real_times_su3_times_su3_acc (* staple , * w1 , st , ptbc_fac0 );
109121
110122 iy = g_idn [x ][k ];
111123 w1 = & in_gauge_field [iy ][k ];
112124 w2 = & in_gauge_field [iy ][mu ];
113125 w3 = & in_gauge_field [g_iup [iy ][mu ]][k ];
126+ double const ptbc_fac1 = get_ptbc_coeff (iy , k ) * get_ptbc_coeff (iy , mu ) * get_ptbc_coeff (g_iup [iy ][mu ], k );
114127 /* st = w2 * w3 */
115128 _su3_times_su3 (st , * w2 , * w3 );
116129 /* v = v + w1^d * st */
117- _su3d_times_su3_acc (* staple , * w1 , st );
130+ //_su3d_times_su3_acc(*staple, *w1, st);
131+ _real_times_su3_times_su3_acc (* staple , * w1 , st , ptbc_fac1 );
118132 }
119133}
0 commit comments