41 namespace DiluteGridQuarkSourceConstEnv
91 XMLReader paramtop(xml, path);
94 read(paramtop,
"version", version);
102 QDPIO::cerr << __func__ <<
": parameter version " << version
103 <<
" unsupported." << std::endl;
108 if(paramtop.count(
"Smearing") !=0 ) {
138 write(xml,
"version", version);
157 QDPIO::cout <<
"Diluted grid source" << std::endl;
164 QDPIO::cerr <<
name <<
": spatial mask size incorrect 1" << std::endl;
170 QDPIO::cerr <<
name <<
": spatial mask incorrect 2" << std::endl;
174 multi1d<int> lookup_dir(
Nd-1);
187 QDPIO::cerr <<
name <<
": spatial mask incorrect 3" << std::endl;
193 QDPIO::cerr <<
name <<
": color mask incorrect 6" << std::endl;
207 ColorVector cc =
zero ;
208 Complex
z=cmplx(Real(1.0),0.0);
213 for(
int s(0);
s<Ns;
s++)
215 QDPIO::cout <<
name <<
": NO spin mask used!" << std::endl;
217 LatticeFermion quark_noise = tt ;
219 LatticeFermion quark_source ;
221 LatticeBoolean mask =
false;
225 LatticeBoolean btmp =
true;
238 QDPIO::cout <<
name <<
": NO time mask used!" << std::endl;
241 quark_source = where(mask, quark_noise, Fermion(
zero));
248 XMLReader smrtop(xml_l);
249 QDPIO::cout <<
"Quark smearing type = " <<
params.
smr.
id ;
250 QDPIO::cout << std::endl;
257 QDPIO::cerr <<
name<<
": Caught Exception creating quark smearing object: " << e << std::endl;
261 QDPIO::cerr <<
name<<
": Caught generic exception creating smearing object" << std::endl;
266 multi1d<LatticeColorMatrix> u_smr =
u;
270 XMLReader linktop(xml_l);
272 QDPIO::cout << std::endl;
277 (*linkSmearing)(u_smr);
281 QDPIO::cerr<<
name<<
": Caught Exception link smearing: " << e << std::endl;
286 (*Smearing)(quark_source, u_smr);
292 XMLReader displacetop(xml_d);
298 QDPIO::cout << std::endl;
302 (*quarkDisplacement)(quark_source, u_smr,
MINUS);
305 QDPIO::cerr<<
name<<
": Caught Exception quark displacement: "<<e<< std::endl;
Primary include file for CHROMA library code.
Random complex Z(N) sources using dilution.
T operator()(const multi1d< LatticeColorMatrix > &u) const
Construct the source.
Class for counted reference semantics.
Base class for quark source construction.
Random Z(M) source construction using dilution.
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)
bool registerAll()
Register all the factories.
std::string getName()
Return the name.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
bool registerAll()
Register all the factories.
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
push(xml_out,"Condensates")
multi1d< LatticeFermion > s(Ncb)
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 sources.
Random complex Z(N) sources using dilution.
multi1d< multi1d< int > > spatial_mask
multi1d< int > spatial_mask_size
void writeXML(XMLWriter &in, const std::string &path) const