26 XMLReader inputtop(xml, path);
44 namespace InlineStaggeredMakeSourceEnv
82 XMLReader paramtop(xml_in, path);
84 if (paramtop.count(
"Frequency") == 1)
96 if (paramtop.count(
"xml_file") != 0)
103 QDPIO::cerr << __func__ <<
": Caught Exception reading XML: " << e << std::endl;
135 push(xml_out,
"make_source_stag");
136 write(xml_out,
"update_no", update_no);
137 write(xml_out,
"xml_file", xml_file);
140 XMLFileWriter xml(xml_file);
141 func(update_no, xml);
145 func(update_no, xml_out);
162 multi1d<LatticeColorMatrix>
u;
163 XMLBufferWriter gauge_xml;
169 catch( std::bad_cast )
171 QDPIO::cerr <<
name <<
": caught dynamic cast error"
177 QDPIO::cerr <<
name <<
": std::map call failed: " << e
186 push(xml_out,
"make_source_stag");
187 write(xml_out,
"update_no", update_no);
189 QDPIO::cout <<
name <<
": propagator source constructor" << std::endl;
194 write(xml_out,
"RNG", ran_seed);
200 write(xml_out,
"Config_info", gauge_xml);
203 MesPlq(xml_out,
"Observables",
u);
208 LatticeStaggeredPropagator quark_source;
213 XMLReader sourcetop(xml_s);
220 quark_source = (*sourceConstruction)(
u);
224 QDPIO::cerr <<
name <<
": Caught Exception creating source: " << e << std::endl;
235 multi1d<Double> source_corr = sumMulti(localNorm2(quark_source),
238 push(xml_out,
"Source_correlator");
239 write(xml_out,
"source_corr", source_corr);
247 QDPIO::cout <<
"Attempt to update source" << std::endl;
249 XMLBufferWriter file_xml;
250 push(file_xml,
"make_source");
254 XMLBufferWriter record_xml;
255 push(record_xml,
"MakeSource");
257 write(record_xml,
"RNG", ran_seed);
258 write(record_xml,
"Config_info", gauge_xml);
267 QDPIO::cout <<
"Source successfully update" << std::endl;
269 catch (std::bad_cast)
271 QDPIO::cerr <<
name <<
": dynamic cast error"
277 QDPIO::cerr <<
name <<
": error message: " << e << std::endl;
287 QDPIO::cout <<
name <<
": total time = "
288 << snoop.getTimeInSeconds()
289 <<
" secs" << std::endl;
291 QDPIO::cout <<
name <<
": ran successfully" << std::endl;
Inline measurement factory.
Class for counted reference semantics.
Inline construction of sources.
void func(const unsigned long update_no, XMLWriter &xml_out)
Do the measurement.
void operator()(const unsigned long update_no, XMLWriter &xml_out)
Do the measurement.
Fourier transform phase factor support.
const Set & getSet() const
The set to be used in sumMulti.
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.
std::string uniqueId()
Return a unique id.
void proginfo(XMLWriter &xml)
Print out basic information about this program.
std::string makeXMLFileName(std::string xml_file, unsigned long update_no)
Return a xml file name for inline measurements.
Class for counted reference semantics.
Inline construction of make_source.
void savern(int iseed[4])
Named object function std::map.
static bool registered
Local registration flag.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
push(xml_out,"Condensates")
void MesPlq(const multi1d< LatticeColorMatrixF3 > &u, multi2d< Double > &plane_plaq, Double &link)
Print out basic info about this program.
Fourier transform phase factor support.
All make source constructors.
Factory for producing quark prop sources.
void writeXML(XMLWriter &xml_out, const std::string &path)
struct Chroma::InlineStaggeredMakeSourceEnv::Params::NamedObject_t named_obj