43 namespace ShellQuarkSinkSmearingEnv
50 const multi1d<LatticeColorMatrix>&
u)
58 const multi1d<LatticeColorMatrix>&
u)
66 const multi1d<LatticeColorMatrix>&
u)
110 XMLReader paramtop(xml, path);
113 read(paramtop,
"version", version);
126 XMLBufferWriter xml_tmp;
127 push(xml_tmp,
"Displacement");
130 if (paramtop.count(
"disp_length") != 0)
131 read(paramtop,
"disp_length", disp_length);
133 if (paramtop.count(
"disp_dir") != 0)
134 read(paramtop,
"disp_dir", disp_dir);
136 write(xml_tmp,
"disp_length", disp_length);
137 write(xml_tmp,
"disp_dir", disp_dir);
147 if (paramtop.count(
"Displacement") != 0)
158 if (paramtop.count(
"Displacement") != 0)
166 QDPIO::cerr << __func__ <<
": parameter version " << version
167 <<
" unsupported." << std::endl;
173 if (paramtop.count(
"LinkSmearing") != 0)
186 write(xml,
"version", version);
205 QDPIO::cout <<
"Shell sink" << std::endl;
213 XMLReader smeartop(xml_s);
225 XMLReader displacetop(xml_d);
238 (*quarkSmearing)(quark_sink, u_smr);
243 (*quarkDisplacement)(quark_sink, u_smr,
PLUS);
250 (*quarkDisplacement)(quark_sink, u_smr,
PLUS);
255 (*quarkSmearing)(quark_sink, u_smr);
261 QDPIO::cerr <<
name <<
": Caught Exception smearing: " << e << std::endl;
274 QDPIO::cout <<
"Shell sink" << std::endl;
282 XMLReader smeartop(xml_s);
294 XMLReader displacetop(xml_d);
307 (*quarkSmearing)(quark_sink, u_smr);
312 (*quarkDisplacement)(quark_sink, u_smr,
PLUS);
319 (*quarkDisplacement)(quark_sink, u_smr,
PLUS);
324 (*quarkSmearing)(quark_sink, u_smr);
330 QDPIO::cerr <<
name <<
": Caught Exception smearing: " << e << std::endl;
350 XMLReader smeartop(xml_s);
361 XMLReader displacetop(xml_d);
371 (*quarkSmearing)(quark_sink, u_smr);
377 (*quarkDisplacement)(quark_sink, u_smr,
PLUS);
382 QDPIO::cerr <<
name <<
": Caught Exception smearing: " << e << std::endl;
Primary include file for CHROMA library code.
Class for counted reference semantics.
Base class for quark source and sink smearing.
void operator()(T &obj) const
Smear the sink.
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.
GroupXML_t readXMLGroup(XMLReader &xml_in, const std::string &path, const std::string &type_name)
Read group and return as a std::string.
Class for counted reference semantics.
All link smearing constructors.
Factory for producing link smearing objects.
static bool registered
Local registration flag.
const std::string name
Name to be used.
CreateFermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > * createFerm(XMLReader &xml, const std::string &path)
GroupXML_t nullXMLGroup()
Returns a no-linksmearing group.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
GroupXML_t nullXMLGroup()
Returns a no-displacement group.
bool registerAll()
Register all the factories.
std::string getName()
Return the name.
bool registerAll()
Register all the factories.
std::string getName()
Return the name.
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
push(xml_out,"Condensates")
All quark displacement constructors.
Factory for producing quark displacement objects.
All quark smearing constructors.
Factory for producing quark smearing objects.
Simple quark displacement.
Factory for producing quark prop sinks.
void writeXML(XMLWriter &in, const std::string &path) const
GroupXML_t quark_displacement
GroupXML_t quark_smearing