5 #include "qdp_config.h"
37 namespace SimpleBaryonOperatorEnv
51 XMLReader paramtop(xml, path);
54 read(paramtop,
"version", version);
62 QDPIO::cerr <<
name <<
": parameter version " << version
63 <<
" unsupported." << std::endl;
73 QDPIO::cerr <<
name <<
": Caught Exception in params: " << e << std::endl;
85 write(xml,
"version", version);
106 XMLReader linktop(xml_l);
114 (*linkSmearing)(
u_smr);
120 XMLReader smeartop(xml_s);
121 const std::string smear_path =
"/SourceQuarkSmearing";
132 XMLReader smeartop(xml_s);
133 const std::string smear_path =
"/SinkQuarkSmearing";
143 QDPIO::cerr <<
name <<
": Caught Exception smearing: " << e << std::endl;
152 const LatticeFermion& q1,
153 const LatticeFermion& q2,
154 const LatticeFermion& q3,
170 for(
int i=0;
i <
q.size(); ++
i)
176 for(
int i=0;
i <
q.size(); ++
i)
181 QDPIO::cerr <<
name <<
": illegal isign" << std::endl;
190 multi1d<LatticeComplex>
192 const LatticeFermion& q2,
193 const LatticeFermion& q3,
201 multi1d<LatticeFermion>
q;
205 multi1d<LatticeComplex>
d(Ns);
209 QDPIO::cerr<<
"BarNuclCg5 code only works for Nc=3 and Ns=4\n";
217 for(
int k=0;
k < Ns; ++
k)
221 for(
int j=0;
j < Ns; ++
j)
223 for(
int i=0;
i < Ns; ++
i)
226 LatticeComplex b_oper = colorContract(peekSpin(
q[0],
i),
258 const multi1d<LatticeColorMatrix>&
u)
Baryon spin and projector matrices.
Factory for producing baryon operators.
Class for counted reference semantics.
Handle< QuarkSmearing< LatticeFermion > > sinkQuarkSmearing
BarNuclCg5()
Hide partial constructor.
multi1d< LatticeComplex > operator()(const LatticeFermion &quark1, const LatticeFermion &quark2, const LatticeFermion &quark3, enum PlusMinus isign) const
Compute the operator.
void quarkManip(multi1d< LatticeFermion > &q, const LatticeFermion &q1, const LatticeFermion &q2, const LatticeFermion &q3, enum PlusMinus isign) const
Manipulate the quark fields.
multi1d< LatticeColorMatrix > u_smr
Handle< QuarkSmearing< LatticeFermion > > sourceQuarkSmearing
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.
All link smearing constructors.
Factory for producing link smearing objects.
static bool registered
Local registration flag.
SpinMatrix Cg5()
C g_5 = C gamma_5 = Gamma(5)
bool registerAll()
Register all the factories.
const std::string name
Name.
LatticePropagator di_quark
Asqtad Staggered-Dirac operator.
static multi1d< LatticeColorMatrix > u
push(xml_out,"Condensates")
All quark smearing constructors.
Factory for producing quark smearing objects.
Construct simple baryon operators.
void writeXML(XMLWriter &in, const std::string &path) const
GroupXML_t source_quark_smearing
GroupXML_t sink_quark_smearing