17coeffds1pnunu(2,
NDR,
NLO,
NLO_QED11), coeffds1pnunuC(1,
NDR,
NNLO,
NLO_QED11), coeffds1mumu(1,
NDR,
NLO),
18u(new
EvolDF1nlep(10,
NDR,
NLO,
NLO_QED11,
SM)), uM(new
EvolDB1Mll(13,
NDR,
NLO,
SM)), uKpnunu(new
Charm_Kpnunu(
SM)),
19DS1ccLO(10, 0.),DS1ccLO_QED(10, 0.),DS1ccNLO(10, 0.),DS1ccNLO_QED(10, 0.)
39 for (
unsigned int i = 0; i < mcb.size(); i++) {
41 for (
int j =
LO; j <= ordDF1; j++) {
42 for (
int k =
LO; k <= j; k++) {
45 u->Df1Evolnlep(mu, mcb[i].getMu(),
53 LO,
LO_QED, mcb[i].getScheme()) * (*(mcb[i].getCoeff(
NLO))) +
54 u->Df1Evolnlep(mu, mcb[i].getMu(),
56 u->Df1Evolnlep(mu, mcb[i].getMu(),
57 LO,
NLO_QED11, mcb[i].getScheme()) * (*(mcb[i].getCoeff(
LO))) +
58 u->Df1Evolnlep(mu, mcb[i].getMu(),
62 LO,
LO_QED, mcb[i].getScheme()) * (*(mcb[i].getCoeff(
LO))) +
63 u->Df1Evolnlep(mu, mcb[i].getMu(),
67 throw std::runtime_error(
"Error in EvolDF1nlep::Df1Evolnlep()");
73 throw "HeffDS1::ComputeCoeffDS1PPv(double mu, schemes scheme): scheme not implemented";
98 for (
unsigned int i = 0; i < mcbCC.size(); i++) {
100 for (
int j =
LO; j <= ordDF1; j++) {
101 for (
int k =
LO; k <= j; k++) {
104 u->Df1Evolnlep(mu, mcbCC[i].getMu(),
112 LO,
LO_QED, mcbCC[i].getScheme()) * (*(mcbCC[i].getCoeff(
NLO))) +
113 u->Df1Evolnlep(mu, mcbCC[i].getMu(),
115 u->Df1Evolnlep(mu, mcbCC[i].getMu(),
116 LO,
NLO_QED11, mcbCC[i].getScheme()) * (*(mcbCC[i].getCoeff(
LO))) +
117 u->Df1Evolnlep(mu, mcbCC[i].getMu(),
121 LO,
LO_QED, mcbCC[i].getScheme()) * (*(mcbCC[i].getCoeff(
LO))) +
122 u->Df1Evolnlep(mu, mcbCC[i].getMu(),
126 throw std::runtime_error(
"Error in HeffDS1::ComputeCoeffDS1PPz()");
132 for (
int l = 2; l < 10; l++){
149 throw std::runtime_error(
"Error in HeffDS1::ComputeCoeffDS1PPz()");
162 throw std::runtime_error(
"Error in HeffDS1::ComputeCoeffDS1PPz()");
173 throw std::runtime_error(
"Error in HeffDS1::ComputeCoeffDS1PPz()");
182 throw std::runtime_error(
"Error in HeffDS1::ComputeCoeffDS1PPz()");
189 throw "HeffDS1::ComputeCoeffDS1PPz(double mu, schemes scheme): scheme not implemented";
201 for (
unsigned int i = 0; i < mcb.size(); i++) {
202 for (
int j =
LO; j <= ordDF1; j++) {
206 for (
int j =
LO_QED; j <= ordDF1_ew; j++) {
217 const std::vector<WilsonCoefficient>& mcbC =
uKpnunu->EVOCkpnn();
222 for (
unsigned int i = 0; i < mcbC.size(); i++) {
223 for (
int j =
LO; j <= ordDF1; j++) {
227 for (
int j =
LO_QED; j <= ordDF1_ew; j++) {
243 for (
unsigned int i = 0; i < mcb.size(); i++) {
244 for (
int j =
LO; j <= ordDF1; j++) {
259 DS1ccNLO.assign(2, (-alphaSmuC / 24. / M_PI)*(-2. / 3. * (logmc2OmuC2 + 1.) *
DS1ccLO(1)));
260 DS1ccNLO.assign(3, (alphaSmuC / 8. / M_PI)*(-2. / 3. * (logmc2OmuC2 + 1.) *
DS1ccLO(1)));
261 DS1ccNLO.assign(4, (-alphaSmuC / 24. / M_PI)*(-2. / 3. * (logmc2OmuC2 + 1.) *
DS1ccLO(1)));
262 DS1ccNLO.assign(5, (alphaSmuC / 8. / M_PI)*(-2. / 3. * (logmc2OmuC2 + 1.) *
DS1ccLO(1)));
gslpp::vector< gslpp::complex > DS1ccNLO_QED
virtual ~HeffDS1()
destructor
gslpp::vector< gslpp::complex > DS1ccLO
gslpp::vector< gslpp::complex > ** ComputeCoeffDS1pnunu()
const StandardModel & model
WilsonCoefficient coeffds1cc
gslpp::vector< gslpp::complex > DS1ccLO_QED
WilsonCoefficient coeffds1pnunuC
gslpp::vector< gslpp::complex > ** ComputeCoeffDS1pnunuC()
HeffDS1(const StandardModel &SM)
constructor
gslpp::vector< gslpp::complex > ** ComputeCoeffDS1mumu()
std::unique_ptr< Charm_Kpnunu > uKpnunu
WilsonCoefficient coeffds1mumu
WilsonCoefficient coeffds1
gslpp::vector< gslpp::complex > DS1ccNLO
gslpp::vector< gslpp::complex > ** ComputeCoeffDS1PPv(double mu, schemes scheme=NDR)
the effective Hamiltonian at the scale mu for
WilsonCoefficient coeffds1pnunu
gslpp::vector< gslpp::complex > ** ComputeCoeffDS1PPz(double muc, schemes scheme=NDR)
std::unique_ptr< EvolDF1nlep > u
void CharmMatch()
compute the matching at the charm threshold within the SM, NDR scheme implemented
const double & getMass() const
A get method to access the particle mass.
const double getMuc() const
A get method to access the threshold between four- and three-flavour theory in GeV.
const double Mrun(const double mu, const double m, const quark q, const orders order=FULLNNLO) const
Computes a running quark mass from .
const Particle & getQuarks(const QCD::quark q) const
A get method to access a quark as an object of the type Particle.
A model class for the Standard Model.
virtual StandardModelMatching & getMatching() const
A get method to access the member reference of type StandardModelMatching.
const double Als(const double mu, const orders order, const bool Nf_thr, const bool qed_flag) const
The running QCD coupling in the scheme including QED corrections.
const double getAle() const
A get method to retrieve the fine-structure constant .
gslpp::vector< gslpp::complex > ** getCoeff() const
void setCoeff(const gslpp::vector< gslpp::complex > &z, orders order_i)
virtual void setMu(double mu)
orders_qed getOrder_qed() const
virtual void resetCoefficient()
orders
An enum type for orders in QCD.
schemes
An enum type for regularization schemes.
orders_qed
An enum type for orders in electroweak.