diff --git a/Grid/qcd/utils/BaryonUtils.h b/Grid/qcd/utils/BaryonUtils.h index 5440e0e5..7c0e91a4 100644 --- a/Grid/qcd/utils/BaryonUtils.h +++ b/Grid/qcd/utils/BaryonUtils.h @@ -93,7 +93,6 @@ public: const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, robj &result); template static void Sigma_to_Nucleon_Q1_NonEye_site(const mobj &Du_xi, @@ -104,7 +103,6 @@ public: const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, robj &result); @@ -116,7 +114,6 @@ public: const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, robj &result); template static void Sigma_to_Nucleon_Q2_NonEye_site(const mobj &Du_xi, @@ -127,7 +124,6 @@ public: const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, robj &result); public: template @@ -138,7 +134,6 @@ public: const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, const std::string op, SpinMatrixField &stn_corr); template @@ -150,7 +145,6 @@ public: const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, const std::string op, SpinMatrixField &stn_corr); }; @@ -341,7 +335,6 @@ void BaryonUtils::Sigma_to_Nucleon_Q1_Eye_site(const mobj &Dq_loop, const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, robj &result) { @@ -394,7 +387,6 @@ void BaryonUtils::Sigma_to_Nucleon_Q1_NonEye_site(const mobj &Du_xi, const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, robj &result) { @@ -449,7 +441,6 @@ void BaryonUtils::Sigma_to_Nucleon_Q2_Eye_site(const mobj &Dq_loop, const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, robj &result) { @@ -497,7 +488,6 @@ void BaryonUtils::Sigma_to_Nucleon_Q2_NonEye_site(const mobj &Du_xi, const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, robj &result) { @@ -551,12 +541,9 @@ void BaryonUtils::Sigma_to_Nucleon_Eye(const PropagatorField &qq_loop, const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, const std::string op, SpinMatrixField &stn_corr) { - assert(parity==1 || parity == -1 && "Parity must be +1 or -1"); - GridBase *grid = qs_xi.Grid(); auto vcorr= stn_corr.View(); @@ -571,9 +558,9 @@ void BaryonUtils::Sigma_to_Nucleon_Eye(const PropagatorField &qq_loop, auto Ds_xi = vs_xi[ss]; sobj result=Zero(); if(op == "Q1"){ - Sigma_to_Nucleon_Q1_Eye_site(Dq_loop,Du_spec,Dd_xf,Ds_xi,Gamma_H,GammaB_sigma,GammaB_nucl,parity,result); + Sigma_to_Nucleon_Q1_Eye_site(Dq_loop,Du_spec,Dd_xf,Ds_xi,Gamma_H,GammaB_sigma,GammaB_nucl,result); } else if(op == "Q2"){ - Sigma_to_Nucleon_Q2_Eye_site(Dq_loop,Du_spec,Dd_xf,Ds_xi,Gamma_H,GammaB_sigma,GammaB_nucl,parity,result); + Sigma_to_Nucleon_Q2_Eye_site(Dq_loop,Du_spec,Dd_xf,Ds_xi,Gamma_H,GammaB_sigma,GammaB_nucl,result); } else { assert(0 && "Weak Operator not correctly specified"); } @@ -591,12 +578,9 @@ void BaryonUtils::Sigma_to_Nucleon_NonEye(const PropagatorField &qq_xi, const Gamma Gamma_H, const Gamma GammaB_sigma, const Gamma GammaB_nucl, - const int parity, const std::string op, SpinMatrixField &stn_corr) { - assert(parity==1 || parity == -1 && "Parity must be +1 or -1"); - GridBase *grid = qs_xi.Grid(); auto vcorr= stn_corr.View(); @@ -613,9 +597,9 @@ void BaryonUtils::Sigma_to_Nucleon_NonEye(const PropagatorField &qq_xi, auto Ds_xi = vs_xi[ss]; sobj result=Zero(); if(op == "Q1"){ - Sigma_to_Nucleon_Q1_NonEye_site(Dq_xi,Dq_xf,Du_spec,Dd_xf,Ds_xi,Gamma_H,GammaB_sigma,GammaB_nucl,parity,result); + Sigma_to_Nucleon_Q1_NonEye_site(Dq_xi,Dq_xf,Du_spec,Dd_xf,Ds_xi,Gamma_H,GammaB_sigma,GammaB_nucl,result); } else if(op == "Q2"){ - Sigma_to_Nucleon_Q2_NonEye_site(Dq_xi,Dq_xf,Du_spec,Dd_xf,Ds_xi,Gamma_H,GammaB_sigma,GammaB_nucl,parity,result); + Sigma_to_Nucleon_Q2_NonEye_site(Dq_xi,Dq_xf,Du_spec,Dd_xf,Ds_xi,Gamma_H,GammaB_sigma,GammaB_nucl,result); } else { assert(0 && "Weak Operator not correctly specified"); } diff --git a/Hadrons/Modules/MContraction/SigmaToNucleonEye.hpp b/Hadrons/Modules/MContraction/SigmaToNucleonEye.hpp index 75393b3a..781c9d0a 100644 --- a/Hadrons/Modules/MContraction/SigmaToNucleonEye.hpp +++ b/Hadrons/Modules/MContraction/SigmaToNucleonEye.hpp @@ -78,7 +78,6 @@ public: std::string, qd_xf, std::string, qs_xi, unsigned int, xf, - std::string, parity, std::string, sink, std::string, output); }; @@ -103,8 +102,7 @@ public: Gamma::Algebra, gammaB_sigma, Gamma::Algebra, gammaA_nucl, Gamma::Algebra, gammaB_nucl, - int, trace, - int, parity); + int, trace); }; typedef Correlator Result; public: @@ -163,20 +161,18 @@ void TSigmaToNucleonEye::setup(void) template void TSigmaToNucleonEye::execute(void) { - const int parity {par().parity.size()>0 ? std::stoi(par().parity) : 1}; const Gamma GammaB(Gamma::Algebra::SigmaXZ); // C*gamma_5 const Gamma Id(Gamma::Algebra::Identity); // C*gamma_5 LOG(Message) << "Computing sigma-to-nucleon contractions '" << getName() << "'" << std::endl; LOG(Message) << "' with (Gamma^A,Gamma^B)_sigma = ( Identity, C*gamma_5 ) and (Gamma^A,Gamma^B)_nucl = ( Identity, C*gamma_5 )" << std::endl; - LOG(Message) << "and parity " << parity << " using sink " << par().sink << "." << std::endl; + LOG(Message) << " using sink " << par().sink << "." << std::endl; envGetTmp(SpinMatrixField1, c); std::vector buf; std::vector result; Result r; - r.info.parity = parity; r.info.gammaA_sigma = Id.g; r.info.gammaB_sigma = GammaB.g; r.info.gammaA_nucl = Id.g; @@ -192,7 +188,7 @@ void TSigmaToNucleonEye::execute(void) r.info.gamma_H = G.g; //Operator Q1, equivalent to the two-trace case in the rare-kaons module c=Zero(); - BaryonUtils::Sigma_to_Nucleon_Eye(qq_loop,qut,qd_xf,qs_xi,G,GammaB,GammaB,parity,"Q1",c); + BaryonUtils::Sigma_to_Nucleon_Eye(qq_loop,qut,qd_xf,qs_xi,G,GammaB,GammaB,"Q1",c); sliceSum(c,buf,Tp); r.corr.clear(); for (unsigned int t = 0; t < buf.size(); ++t) @@ -203,7 +199,7 @@ void TSigmaToNucleonEye::execute(void) result.push_back(r); //Operator Q2, equivalent to the one-trace case in the rare-kaons module c=Zero(); - BaryonUtils::Sigma_to_Nucleon_Eye(qq_loop,qut,qd_xf,qs_xi,G,GammaB,GammaB,parity,"Q2",c); + BaryonUtils::Sigma_to_Nucleon_Eye(qq_loop,qut,qd_xf,qs_xi,G,GammaB,GammaB,"Q2",c); sliceSum(c,buf,Tp); r.corr.clear(); for (unsigned int t = 0; t < buf.size(); ++t) diff --git a/Hadrons/Modules/MContraction/SigmaToNucleonNonEye.hpp b/Hadrons/Modules/MContraction/SigmaToNucleonNonEye.hpp index 5fb62259..58c25e90 100644 --- a/Hadrons/Modules/MContraction/SigmaToNucleonNonEye.hpp +++ b/Hadrons/Modules/MContraction/SigmaToNucleonNonEye.hpp @@ -83,7 +83,6 @@ public: std::string, qd_xf, std::string, qs_xi, unsigned int, xf, - std::string, parity, std::string, sink, std::string, output); }; @@ -108,8 +107,7 @@ public: Gamma::Algebra, gammaB_sigma, Gamma::Algebra, gammaA_nucl, Gamma::Algebra, gammaB_nucl, - int, trace, - int, parity); + int, trace); }; typedef Correlator Result; public: @@ -168,20 +166,18 @@ void TSigmaToNucleonNonEye::setup(void) template void TSigmaToNucleonNonEye::execute(void) { - const int parity {par().parity.size()>0 ? std::stoi(par().parity) : 1}; const Gamma GammaB(Gamma::Algebra::SigmaXZ); // C*gamma_5 const Gamma Id(Gamma::Algebra::Identity); // C*gamma_5 LOG(Message) << "Computing sigma-to-nucleon contractions '" << getName() << "'" << std::endl; LOG(Message) << "' with (Gamma^A,Gamma^B)_sigma = ( Identity, C*gamma_5 ) and (Gamma^A,Gamma^B)_nucl = ( Identity, C*gamma_5 )" << std::endl; - LOG(Message) << "and parity " << parity << " using sink " << par().sink << "." << std::endl; + LOG(Message) << " using sink " << par().sink << "." << std::endl; envGetTmp(SpinMatrixField1, c); std::vector buf; std::vector result; Result r; - r.info.parity = parity; r.info.gammaA_sigma = Id.g; r.info.gammaB_sigma = GammaB.g; r.info.gammaA_nucl = Id.g; @@ -198,7 +194,7 @@ void TSigmaToNucleonNonEye::execute(void) r.info.gamma_H = G.g; //Operator Q1, equivalent to the two-trace case in the rare-kaons module c=Zero(); - BaryonUtils::Sigma_to_Nucleon_NonEye(qu_xi,qu_xf,qut,qd_xf,qs_xi,G,GammaB,GammaB,parity,"Q1",c); + BaryonUtils::Sigma_to_Nucleon_NonEye(qu_xi,qu_xf,qut,qd_xf,qs_xi,G,GammaB,GammaB,"Q1",c); sliceSum(c,buf,Tp); r.corr.clear(); for (unsigned int t = 0; t < buf.size(); ++t) @@ -209,7 +205,7 @@ void TSigmaToNucleonNonEye::execute(void) result.push_back(r); //Operator Q2, equivalent to the one-trace case in the rare-kaons module c=Zero(); - BaryonUtils::Sigma_to_Nucleon_NonEye(qu_xi,qu_xf,qut,qd_xf,qs_xi,G,GammaB,GammaB,parity,"Q2",c); + BaryonUtils::Sigma_to_Nucleon_NonEye(qu_xi,qu_xf,qut,qd_xf,qs_xi,G,GammaB,GammaB,"Q2",c); sliceSum(c,buf,Tp); r.corr.clear(); for (unsigned int t = 0; t < buf.size(); ++t) diff --git a/tests/hadrons/Test_sigma_to_nucleon.cc b/tests/hadrons/Test_sigma_to_nucleon.cc index 621a8f7c..0489438c 100644 --- a/tests/hadrons/Test_sigma_to_nucleon.cc +++ b/tests/hadrons/Test_sigma_to_nucleon.cc @@ -125,7 +125,7 @@ int main(int argc, char *argv[]) EyePar.qu_spec = "Qpt_u_spec"; EyePar.qd_xf = "Qpt_l_4"; EyePar.qs_xi = "Qpt_s_0"; - EyePar.tOut = 0; + EyePar.xf = 4; EyePar.sink = "sink"; application.createModule("SigmaToNucleonEye_u", EyePar); EyePar.output = "SigmaToNucleon/Eye_c"; @@ -138,7 +138,7 @@ int main(int argc, char *argv[]) NonEyePar.qu_spec = "Qpt_u_spec"; NonEyePar.qd_xf = "Qpt_l_4"; NonEyePar.qs_xi = "Qpt_s_0"; - NonEyePar.tOut = 0; + NonEyePar.xf = 4; NonEyePar.sink = "sink"; application.createModule("SigmaToNucleonNonEye", NonEyePar);