13 void convertMescomp(multi1d<Complex>& mesprop_1d,
const multiNd<Complex>& mesprop,
16 int length = Layout::lattSize()[
j_decay];
18 multi1d<int> ranks(5);
20 mesprop_1d.resize(length*Ns*Ns*Ns*Ns);
23 for(ranks[0]=0; ranks[0] < Ns; ++ranks[0])
24 for(ranks[1]=0; ranks[1] < Ns; ++ranks[1])
25 for(ranks[2]=0; ranks[2] < Ns; ++ranks[2])
26 for(ranks[3]=0; ranks[3] < Ns; ++ranks[3])
27 for(ranks[4] = 0; ranks[4] < length; ++ranks[4])
29 mesprop_1d[cnt++] = mesprop[ranks];
51 const LatticePropagator& quark_propagator_1,
52 const LatticePropagator& quark_propagator_2,
63 multi1d<DComplex> hsum;
65 multi1d<int> ranks(5);
68 mesprop.resize(ranks);
70 LatticePropagator antiquark_1 = adj(Gamma(
G5) * quark_propagator_1 * Gamma(
G5));
71 LatticeComplex m_prop;
73 for(ranks[0]=0; ranks[0] < Ns; ++ranks[0])
74 for(ranks[1]=0; ranks[1] < Ns; ++ranks[1])
75 for(ranks[2]=0; ranks[2] < Ns; ++ranks[2])
76 for(ranks[3]=0; ranks[3] < Ns; ++ranks[3])
80 traceColor(peekSpin(antiquark_1,
82 * peekSpin(quark_propagator_2,
86 hsum = sumMulti(m_prop, phases.
getSet());
88 for(ranks[4] = 0; ranks[4] < length; ++ranks[4])
90 int t_eff = (ranks[4] -
t0 + length) % length;
91 mesprop[ranks] = hsum[t_eff];
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 mescomp(multiNd< Complex > &mesprop, const LatticePropagator &quark_propagator_1, const LatticePropagator &quark_propagator_2, const SftMom &phases, int t0)
Construct all components of a meson propagator.
Construct all components of a meson propagator.
Asqtad Staggered-Dirac operator.
void convertMescomp(multi1d< Complex > &mesprop_1d, const multiNd< Complex > &mesprop, const int j_decay)
Convert generalized correlator object.