27 const LatticeColorMatrix& w,
40 multi1d<LatticeReal>
r(4);
47 r_l[sub] = sqrt(
r[0]*
r[0] +
r[1]*
r[1] +
r[2]*
r[2] +
r[3]*
r[3]);
51 lbtmp[sub] = r_l > fuzz;
53 lftmp[sub] = 1.0 / where(lbtmp, r_l, LatticeReal(1));
57 multi1d<LatticeReal>
a(4);
58 a[0][sub] = where(lbtmp,
r[0] * lftmp, LatticeReal(1));
59 a[1][sub] = where(lbtmp, -(
r[1] * lftmp), LatticeReal(0));
60 a[2][sub] = where(lbtmp, -(
r[2] * lftmp), LatticeReal(0));
61 a[3][sub] = where(lbtmp, -(
r[3] * lftmp), LatticeReal(0));
64 r[0][sub] =
a[0]*
a[0] -
a[1]*
a[1] -
a[2]*
a[2] -
a[3]*
a[3];
67 r[1][sub] =
a[0]*
a[1];
68 r[2][sub] =
a[0]*
a[2];
69 r[3][sub] =
a[0]*
a[3];
78 LatticeColorMatrix
tmp;
Primary include file for CHROMA library code.
void sunFill(LatticeColorMatrix &dest, const multi1d< LatticeReal > &r, int su2_index, const Subset &s)
Fill a dest(su2_index) <- r_0,r_1,r_2,r_3 under a subset.
void su2Extract(multi1d< LatticeReal > &r, const LatticeColorMatrix &source, int su2_index, const Subset &s)
Su2_extract: r_0,r_1,r_2,r_3 <- source(su2_index) [SU(N) field] under a subset.
void su3over(LatticeColorMatrix &u, const LatticeColorMatrix &w, int su2_index, const Subset &sub)
Do one SU(2) subgroup microcanonical overrelaxation update of SU(Nc) matrix.
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
Do one SU(2) subgroup microcanonical overrelaxation update of SU(Nc)
Fill an SU(Nc) matrix with an SU(2) submatrix.