29 const multi1d<LatticeColorMatrix>&
u,
39 int half_length = length/2 + 1;
41 LatticeColorMatrix u_dble;
42 LatticeColorMatrix pol;
43 LatticeColorMatrix
tmp_1;
45 multi1d< multi1d<DComplex> > poly_loop_slice(
Nd-1);
46 multi1d<DComplex> poly_slice(length);
47 multi1d<Double> poly_corr(half_length);
60 push(xml_out, xml_group);
62 for(
int i=0;
i < poly_loop_slice.size(); ++
i)
64 poly_loop_slice[
i].resize(length);
77 block_latt = QDP::Layout::lattSize()[j_poly] / (1 << bl_level);
86 for(
n = 2;
n <= block_latt/2; ++
n)
93 if ( (block_latt & 1) != 0 )
100 poly_slice = sumMulti(trace(pol), phases.
getSet());
103 for(
t = 0;
t < length; ++
t)
104 poly_loop_slice[mu_inc-1][
t] = poly_slice[
t];
111 for(
t = 0;
t < ( length); ++
t )
112 poly_loop += poly_slice[
t];
115 for(
t0 = 0;
t0 < ( length); ++
t0 )
116 for(
t = 0;
t < ( half_length); ++
t )
118 t1 = (
t +
t0) % length;
119 cdummy = poly_slice[
t0] * adj(poly_slice[t1]);
121 dummy = real(cdummy);
127 poly_loop = poly_loop *
dummy;
129 for(
t = 0;
t < ( half_length); ++
t )
130 poly_corr[
t] = poly_corr[
t] *
dummy;
133 push(xml_out,
"Poly_loop_correlation");
135 write(xml_out,
"bl_level", bl_level);
136 write(xml_out,
"j_poly", j_poly);
137 write(xml_out,
"poly_loop", poly_loop);
138 write(xml_out,
"poly_corr", poly_corr);
143 push(xml_out,
"Poly_loop_slice");
145 write(xml_out,
"bl_level", bl_level);
146 push(xml_out,
"Slices");
147 for(
int i=0;
i < poly_loop_slice.size(); ++
i)
149 push(xml_out,
"elem");
150 write(xml_out,
"slice",
i);
151 write(xml_out,
"poly_loop_slice", poly_loop_slice[
i]);
Primary include file for CHROMA library code.
Fourier transform phase factor support.
int numSubsets() const
Number of subsets - length in decay direction.
int getDir() const
Decay direction.
const Set & getSet() const
The set to be used in sumMulti.
void write(XMLWriter &xml, const std::string &path, const AsqtadFermActParams ¶m)
Writer parameters.
LatticeColorMatrix shift2(const LatticeColorMatrix &s1, int isign, int dir, int level)
A simple not-fancy power of 2 shift.
void polycor(XMLWriter &xml_out, const std::string &xml_group, const multi1d< LatticeColorMatrix > &u, const SftMom &phases, int bl_level)
Construct Polyakov loop correlation functions from fuzzy links.
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
push(xml_out,"Condensates")
FloatingPoint< double > Double
Construct Polyakov loop correlation functions from fuzzy links.