33 namespace SimpleMeson2PtEnv
39 LatticeComplex mesXCorr(
const LatticePropagator& quark_prop_1,
40 const LatticePropagator& quark_prop_2,
45 LatticePropagator anti_quark_prop = Gamma(
G5) * quark_prop_2 * Gamma(
G5);
47 return LatticeComplex(trace(adj(anti_quark_prop) * (Gamma(gamma_value) *
48 quark_prop_1 * Gamma(gamma_value))));
77 XMLReader paramtop(xml, path);
80 read(paramtop,
"version", version);
88 QDPIO::cerr << __func__ <<
": parameter version " << version
89 <<
" unsupported." << std::endl;
107 write(xml,
"version", version);
121 std::list< Handle<HadronContractResult_t> >
128 QDPIO::cout <<
"Hadron2Pt: diagonal_gamma_mesons" << std::endl;
138 const LatticePropagator& quark_prop1 =
140 const LatticePropagator& quark_prop2 =
146 sft_params.origin_offset =
t_srce;
149 sft_params.decay_dir = decay_dir;
151 std::list< Handle<Hadron2PtContract_t> > hadron;
153 for(
int gamma_value=0; gamma_value < Ns*Ns; ++gamma_value)
157 push(had->xml, xml_group);
158 write(had->xml, id_tag,
"diagonal_gamma_mesons");
159 write(had->xml,
"gamma_value", gamma_value);
163 had->corr = mesXCorr(quark_prop1, quark_prop2, gamma_value);
165 hadron.push_back(had);
170 return this->
project(hadron, sft_params);
virtual std::list< Handle< HadronContractResult_t > > project(const std::list< Handle< Hadron2PtContract_t > > &had_list, const SftMomParams_t &p) const
Convenience function to project onto fixed momenta.
Construct hadron correlators.
virtual multi1d< int > getTSrce(const multi1d< ForwardProp_t > &forward_headers) const
Convenience function to get t_srce from headers.
virtual ForwardProp_t readForwardPropHeader(const std::string &prop_id) const
Convenience function to read propagator.
virtual int getDecayDir(const multi1d< ForwardProp_t > &forward_headers) const
Convenience function to get decay_dir from headers.
Class for counted reference semantics.
Simple meson 2pt construction - all simple mesons.
std::list< Handle< HadronContractResult_t > > operator()(const multi1d< LatticeColorMatrix > &u, const std::string &xml_group, const std::string &id_tag)
Construct the correlators.
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.
Named object function std::map.
static bool registered
Local registration flag.
multi1d< ForwardProp_t > & forward_headers
bool registerAll()
Register all the factories.
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
push(xml_out,"Condensates")
Construct meson 2pt correlators.
The result of hadron 2pt correlators.
Simple meson 2pt parameters.
multi1d< int > mom_origin
void writeXML(XMLWriter &in, const std::string &path) const