5 #error "STILL WORKING ON THIS"
35 namespace MesonSpec2PtEnv
41 LatticeComplex mesXCorr(
const LatticePropagator& quark_prop_1,
42 const LatticePropagator& quark_prop_2,
47 LatticePropagator anti_quark_prop = Gamma(
G5) * quark_prop_2 * Gamma(
G5);
49 return LatticeComplex(trace(adj(anti_quark_prop) * (Gamma(gamma_value) *
50 quark_prop_1 * Gamma(gamma_value))));
79 XMLReader paramtop(xml, path);
82 read(paramtop,
"version", version);
90 QDPIO::cerr << __func__ <<
": parameter version " << version
91 <<
" unsupported." << std::endl;
109 write(xml,
"version", version);
125 multi2d<DComplex> hsum(phases.
sft(
prop));
130 for(
int sink_mom_num=0; sink_mom_num < phases.
numMom(); ++sink_mom_num)
132 multi1d<DComplex> corr(length);
133 for (
int t=0;
t < length; ++
t)
136 corr[
t] = hsum[sink_mom_num][
t];
165 write(xml, id_tag,
"meson_spec");
179 sft_params.origin_offset =
t_srce;
182 sft_params.decay_dir = decay_dir;
189 std::list< Handle<HadronContractResult_t> >
196 QDPIO::cout <<
"Hadron2Pt: diagonal_gamma_mesons" << std::endl;
203 int length = data.
phases->numSubsets();
206 LatticePropagator antiquark_1 = adj(Gamma(
G5) * data.
quark_prop1 * Gamma(
G5));
207 LatticeComplex m_prop;
209 for(
int sf_2=0; sf_2 < Ns; ++sf_2)
210 for(
int sf_1=0; sf_1 < Ns; ++sf_1)
211 for(
int si_2=0; si_2 < Ns; ++si_2)
212 for(
int si_1=0; si_1 < Ns; ++si_1)
221 traceColor(peekSpin(antiquark_1,
223 * peekSpin(quark_prop2,
229 std::list< Handle<HadronContractResult_t> > corrs;
230 corrs.push_back(corr);
Construct hadron correlators.
Class for counted reference semantics.
2pt-mesons but with all 4 spin indices open
std::list< Handle< HadronContractResult_t > > operator()(const multi1d< LatticeColorMatrix > &u, const std::string &xml_group, const std::string &id_tag)
Construct the correlators.
Fourier transform phase factor support.
int numSubsets() const
Number of subsets - length in decay direction.
multi1d< int > numToMom(int mom_num) const
Convert momenta id to actual array of momenta.
multi2d< DComplex > sft(const LatticeComplex &cf) const
Do a sumMulti(cf*phases,getSet())
int numMom() const
Number of momenta.
void read(XMLReader &xml, const std::string &path, AsqtadFermActParams ¶m)
Read parameters.
void write(XMLWriter &xml, const std::string &path, const AsqtadFermActParams ¶m)
Writer parameters.
Factory for producing hadron correlator objects.
std::map< std::string, SinkPropContainer_t > prop
Construct meson 2pt correlators leaving all spin indices open.
Named object function std::map.
static bool registered
Local registration flag.
void init(MesonSpecData_t &data, XMLWriter &xml, const std::string &path, const std::string &id_tag, const Params ¶ms)
Do some initialization.
bool registerAll()
Register all the factories.
void serializeSFT(BinaryWriter &bin, const SftMom &phases, const LatticeComplex &prop)
Do a SFT and serialize the output.
multi1d< ForwardProp_t > & forward_headers
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
push(xml_out,"Condensates")
The result of hadron contractions.
LatticePropagator quark_prop1
LatticePropagator quark_prop2
Simple meson 2pt parameters.
multi1d< int > mom_origin
void writeXML(XMLWriter &in, const std::string &path) const