37 namespace PointQuarkSourceConstEnv
92 XMLReader paramtop(xml, path);
95 read(paramtop,
"version", version);
106 XMLBufferWriter xml_tmp;
107 push(xml_tmp,
"Displacement");
110 if (paramtop.count(
"disp_length") != 0)
111 read(paramtop,
"disp_length", disp_length);
113 if (paramtop.count(
"disp_dir") != 0)
114 read(paramtop,
"disp_dir", disp_dir);
116 write(xml_tmp,
"disp_length", disp_length);
117 write(xml_tmp,
"disp_dir", disp_dir);
127 if (paramtop.count(
"Displacement") != 0)
135 QDPIO::cerr << __func__ <<
": parameter version " << version
136 <<
" unsupported." << std::endl;
143 if (paramtop.count(
"LinkSmearing") != 0)
156 write(xml,
"version", version);
173 QDPIO::cout <<
"Point source" << std::endl;
176 LatticePropagator quark_source;
183 multi1d<LatticeColorMatrix> u_smr =
u;
186 XMLReader linktop(xml_l);
193 (*linkSmearing)(u_smr);
200 XMLReader displacetop(xml_d);
207 for(
int color_source = 0; color_source < Nc; ++color_source)
209 QDPIO::cout <<
"color = " << color_source << std::endl;
211 LatticeColorVector src_color_vec =
zero;
216 for(
int spin_source = 0; spin_source < Ns; ++spin_source)
218 QDPIO::cout <<
"spin = " << spin_source << std::endl;
236 (*quarkDisplacement)(quark_source, u_smr,
MINUS);
241 QDPIO::cerr <<
name <<
": Caught Exception in source construction: " << e << std::endl;
252 LatticeStaggeredPropagator
255 QDPIO::cout <<
"Point source" << std::endl;
258 LatticeStaggeredPropagator quark_source;
265 multi1d<LatticeColorMatrix> u_smr =
u;
268 XMLReader linktop(xml_l);
275 (*linkSmearing)(u_smr);
282 XMLReader displacetop(xml_d);
289 for(
int color_source = 0; color_source < Nc; ++color_source)
291 QDPIO::cout <<
"color = " << color_source << std::endl;
293 LatticeColorVector src_color_vec =
zero;
300 LatticeStaggeredFermion
chi =
zero;
313 (*quarkDisplacement)(quark_source, u_smr,
MINUS);
318 QDPIO::cerr <<
name <<
": Caught Exception in source construction: " << e << std::endl;
Primary include file for CHROMA library code.
Class for counted reference semantics.
Point source construction.
T operator()(const multi1d< LatticeColorMatrix > &u) const
Construct the source.
Base class for quark source construction.
void CvToFerm(const LatticeColorVectorF &a, LatticeFermionF &b, int spin_index)
Convert (insert) a LatticeColorVector into a LatticeFermion.
void FermToProp(const LatticeFermionF &a, LatticePropagatorF &b, int color_index, int spin_index)
Insert a LatticeFermion into a LatticePropagator.
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.
void srcfil(LatticeFermion &a, const multi1d< int > &coord, int color_index, int spin_index)
Fill a specific color and spin index with 1.0.
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.
GroupXML_t nullXMLGroup()
Returns a no-linksmearing group.
bool registerAll()
Register all the factories.
std::string getName()
Return the name.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
GroupXML_t nullXMLGroup()
Returns a no-displacement group.
std::string getName()
Return the name.
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
push(xml_out,"Condensates")
multi1d< LatticeFermion > chi(Ncb)
Point source construction.
All quark displacement constructors.
Factory for producing quark displacement objects.
Simple quark displacement.
Factory for producing quark prop sources.
Point source construction.
GroupXML_t quark_displacement
void writeXML(XMLWriter &in, const std::string &path) const