19 coeffnlep01 (10,
NDR,
NLO), coeffnlep01A(10,
NDR,
NLO), coeffnlep01B(4,
NDR,
NLO), coeffnlep00CC(10,
NDR,
NLO),
20 coeffnlep11 (10,
NDR,
NLO), coeffnlep11A(10,
NDR,
NLO), coeffnlep11B(4,
NDR,
NLO), coeffnlep10CC(10,
NDR,
NLO),
22 coeffbtaunu (3,
NDR,
LO),
28 coeffprimeBMll (13,
NDR,
NLO),
29 coeffBMll_Buras (8,
NDR,
NLO),
33 evolbs(new
EvolBsmm(8,
NDR,
NNLO,
NLO_QED22,
SM)), evolbd(new
EvolBsmm(8,
NDR,
NNLO,
NLO_QED22,
SM)),
34 nlep(12, 0.), nlep2(10, 0.),
38 for (
unsigned int i = 0; i < 6; i++) {
45 for (
unsigned int i = 0; i < 6; i++) {
51 for (
unsigned int i = 0; i < 6; i++) {
58 for (
unsigned int i = 0; i < 6; i++) {
63 for (
unsigned int i = 0; i < 6; i++) {
69 for (
unsigned int i = 0; i < 6; i++) {
99 for (
unsigned int i = 0; i < mcb.size(); i++){
100 for (
int j =
LO; j <= ordDF1; j++){
101 for (
int k =
LO; k <= j; k++) {
105 u->Df1Evolnlep(mu, mcb[i].getMu(),
orders(k),
NO_QED, mcb[i].getScheme())*
111 u->Df1Evolnlep(mu, mcb[i].getMu(),
NNLO,
orders_qed(k+4), mcb[i].getScheme()) *
117 u->Df1Evolnlep(mu, mcbCC[i].getMu(),
orders(k),
NO_QED, mcbCC[i].getScheme()) *
124 u->Df1Evolnlep(mu, mcb[i].getMu(),
orders(
LO),
NO_QED, mcb[i].getScheme()) *
135 for (
int j=
LO; j <= ordDF1; j++) {
137 for (
int i = 0; i < 10; i++){
141 for (
int i = 10; i < 12; i++){
146 for (
int k=
LO_QED; k <= ordDF1ew; k++) {
148 for (
int l = 0; l < 10; l++){
175 for (
unsigned int i = 0; i < mcb.size(); i++){
176 for (
int j =
LO; j <= ordDF1; j++){
177 for (
int k =
LO; k <= j; k++) {
181 u->Df1Evolnlep(mu, mcb[i].getMu(),
orders(k),
NO_QED, mcb[i].getScheme()) *
186 u->Df1Evolnlep(mu, mcb[i].getMu(),
NNLO,
orders_qed(k+4), mcb[i].getScheme()) *
191 u->Df1Evolnlep(mu, mcbCC[i].getMu(),
orders(k),
NO_QED, mcbCC[i].getScheme()) *
198 u->Df1Evolnlep(mu, mcb[i].getMu(),
orders(
LO),
NO_QED, mcb[i].getScheme()) *
209 for (
int j=
LO; j <= ordDF1; j++) {
211 for (
int i = 0; i < 10; i++){
215 for (
int i = 10; i < 12; i++){
220 for (
int k=
LO_QED; k <= ordDF1ew; k++) {
222 for (
int l = 0; l < 10; l++){
249 for (
unsigned int i = 0; i < mcbCC1.size(); i++)
250 for (
int j =
LO; j <= ordDF1; j++)
251 for (
int k =
LO; k <= j; k++){
254 u->Df1Evolnlep(mu, mcbCC1[i].getMu(),
orders(k),
NO_QED, mcbCC1[i].getScheme()) *
258 u->Df1Evolnlep(mu, mcbCC2[i].getMu(),
orders(k),
NO_QED, mcbCC2[i].getScheme()) *
267 for (
int j=
LO; j <= ordDF1; j++) {
269 for (
int i = 0; i < 2; i++){
273 for (
int i = 2; i < 4; i++){
299 for (
unsigned int i = 0; i < mcbCC1.size(); i++)
300 for (
int j =
LO; j <= ordDF1; j++)
301 for (
int k =
LO; k <= j; k++){
304 u->Df1Evolnlep(mu, mcbCC1[i].getMu(),
orders(k),
NO_QED, mcbCC1[i].getScheme()) *
308 u->Df1Evolnlep(mu, mcbCC2[i].getMu(),
orders(k),
NO_QED, mcbCC2[i].getScheme()) *
316 for (
int j=
LO; j <= ordDF1; j++) {
318 for (
int i = 0; i < 2; i++){
322 for (
int i = 2; i < 4; i++){
343 for (
unsigned int i = 0; i < mcbsm.size(); i++) {
345 for (
int j =
LO; j <= ordDF1; j++) {
346 for (
int k =
LO; k <= j; k++) {
347 for (
int l = 0; l < 8; l++) {
361 double alsM =
evolbs->alphatilde_s(mcbsm[0].getMu());
362 double alsmu =
evolbs->alphatilde_s(mu);
363 double eta = alsM / alsmu;
367 double B00E = 80./9., B01E = 176./9.;
369 double logeta = log(eta);
370 double fatt = (B00E * B10S /B00S /B00S - B01E /B00S);
371 double app = B00E * (1. - eta)/ B00S;
380 for (
unsigned int i = 0; i < mcbsm.size(); i++){
382 for (j =
LO; j <= ordDF1; j++){
383 for (
int k =
LO; k <= j; k++){
392 for (j =
LO_QED; j <= ordDF1ew; j++){
404 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
410 (*(mcbsm[i].getCoeff(
orders(
NLO))))) + pow((logeta) * fatt,2) *
412 (*(mcbsm[i].getCoeff(
orders(
LO)))) ) + pow( app, 2 ) *
416 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
418 (*(mcbsm[i].getCoeff(
orders(
NLO)))) )+ logeta * fatt
435 (*(mcbsm[i].getCoeff(
orders(
LO))))) + ((logeta/eta) * fatt)
438 (*(mcbsm[i].getCoeff(
orders(
LO))))) + ( app * app/( eta) ) *
456 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
459 eta * logeta * fatt *
468 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
478 (*(mcbsm[i].getCoeff(
orders(
LO)))) + ( app
479 * app/( eta * eta ) ) *
489 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
493 (*(mcbsm[i].getCoeff(
orders(
NLO)))) - logeta * fatt *
495 (*(mcbsm[i].getCoeff(
orders(
LO))))) - app *
508 (*(mcbsm[i].getCoeff(
orders(
LO)))) - ( app /( eta ) ) *
531 for (
unsigned int i = 0; i < mcbsm.size(); i++) {
533 for (
int j =
LO; j <= ordDF1; j++) {
534 for (
int k =
LO; k <= j; k++) {
535 for (
int l = 0; l < 8; l++) {
547 double alsM =
evolbs->alphatilde_s(mcbsm[0].getMu());
548 double alsmu =
evolbs->alphatilde_s(mu);
549 double eta = alsM / alsmu;
553 double B00E = 80./9., B01E = 176./9.;
555 double logeta = log(eta);
556 double fatt = (B00E * B10S /B00S /B00S - B01E /B00S);
557 double app = B00E * (1. - eta)/ B00S;
566 for (
unsigned int i = 0; i < mcbsm.size(); i++){
568 for (j =
LO; j <= ordDF1; j++){
569 for (
int k =
LO; k <= j; k++){
578 for (j =
LO_QED; j <= ordDF1ew; j++){
589 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
599 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
609 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
623 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
635 (*(mcbsm[i].getCoeff(
orders(
LO))))) +
637 (*(mcbsm[i].getCoeff(
orders(
LO))))) +
641 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
649 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
659 (*(mcbsm[i].getCoeff(
orders(
LO)))) +
686 for (
unsigned int i = 0; i < mcbdm.size(); i++) {
688 for (
int j =
LO; j <= ordDF1; j++) {
689 for (
int k =
LO; k <= j; k++) {
690 for (
int l = 0; l < 8; l++) {
704 double alsM =
evolbd->alphatilde_s(mcbdm[0].getMu());
705 double alsmu =
evolbd->alphatilde_s(mu);
706 double eta = alsM / alsmu;
710 double B00E = 80./9., B01E = 176./9.;
712 double logeta = log(eta);
713 double fatt = (B00E * B10S /B00S /B00S - B01E /B00S);
714 double app = B00E * (1. - eta)/ B00S;
723 for (
unsigned int i = 0; i < mcbdm.size(); i++){
725 for (j =
LO; j <= ordDF1; j++){
726 for (
int k =
LO; k <= j; k++){
735 for (j =
LO_QED; j <= ordDF1ew; j++){
747 (*(mcbdm[i].getCoeff(
orders(
LO)))) +
753 (*(mcbdm[i].getCoeff(
orders(
NLO))))) + pow((logeta) * fatt,2) *
755 (*(mcbdm[i].getCoeff(
orders(
LO)))) ) + pow( app, 2 ) *
759 (*(mcbdm[i].getCoeff(
orders(
LO)))) +
761 (*(mcbdm[i].getCoeff(
orders(
NLO)))) )+ logeta * fatt
778 (*(mcbdm[i].getCoeff(
orders(
LO))))) + ((logeta/eta) * fatt)
781 (*(mcbdm[i].getCoeff(
orders(
LO))))) + ( app * app/( eta) ) *
799 (*(mcbdm[i].getCoeff(
orders(
LO)))) +
802 eta * logeta * fatt *
811 (*(mcbdm[i].getCoeff(
orders(
LO)))) +
821 (*(mcbdm[i].getCoeff(
orders(
LO)))) + ( app
822 * app/(eta * eta ) ) *
832 (*(mcbdm[i].getCoeff(
orders(
LO)))) +
836 (*(mcbdm[i].getCoeff(
orders(
NLO)))) - logeta * fatt *
838 (*(mcbdm[i].getCoeff(
orders(
LO))))) - app *
851 (*(mcbdm[i].getCoeff(
orders(
LO)))) - ( app /( eta ) ) *
873 unsigned int order_ini;
874 if (noSM) order_ini = 1;
877 for (
unsigned int i = order_ini; i < mcb.size(); i++){
878 for (
int j =
LO; j <= ordDF1; j++){
881 for (
int j =
LO_QED; j <= ordDF1_ew; j++) {
897 for (
unsigned int i = 0; i < mcb.size(); i++){
898 for (
int j =
LO; j <= ordDF1; j++){
901 for (
int j =
LO_QED; j <= ordDF1_ew; j++) {
914 unsigned int order_ini;
915 if (noSM) order_ini = 1;
922 for (
unsigned int i = order_ini; i < mcbsg.size(); i++) {
924 for (
int j =
LO; j <= ordDF1; j++) {
925 for (
int k =
LO; k <= j; k++) {
926 for (
int l = 0; l < 8; l++) {
944 for (
unsigned int i = order_ini; i < mcbsg.size(); i++) {
946 for (
int j =
LO; j <= ordDF1; j++) {
947 for (
int k =
LO; k <= j; k++) {
949 evolDB1bsg->Df1Evolbsg(mu, mcbsg[i].getMu(),
orders(k), mcbsg[i].getScheme()) *
965 for (
unsigned int i = 0; i < 6; i++) {
969 for (
unsigned int i = 0; i < 6; i++) {
976 for (
unsigned int i = 0; i < 6; i++) {
980 for (
unsigned int i = 0; i < 6; i++) {
984 if (ordDF1 >=
NNLO) {
985 for (
unsigned int i = 0; i < 6; i++) {
992 for (
unsigned int i = 0; i < 6; i++) {
998 for (
int order =
LO; order <= ordDF1; order++) {
1015 for (
unsigned int i = 0; i < mcbsgp.size(); i++) {
1017 for (
int j =
LO; j <= ordDF1; j++) {
1018 for (
int k =
LO; k <= j; k++) {
1019 for (
int l = 0; l < 8; l++) {
1036 for (
unsigned int i = 0; i < mcbsgp.size(); i++){
1038 for (
int j =
LO; j <= ordDF1; j++){
1039 for (
int k =
LO; k <= j; k++){
1041 evolDB1bsg->Df1Evolbsg(mu, mcbsgp[i].getMu(),
orders(k), mcbsgp[i].getScheme()) *
1058 unsigned int order_ini;
1059 if (noSM) order_ini = 1;
1064 for (
unsigned int i = order_ini; i < mc.size(); i++) {
1066 for (
int j =
LO; j <= ordDF1; j++) {
1067 for (
int k =
LO; k <= j; k++) {
1068 for (
int l = 0; l < 13; l++) {
1086 for (
unsigned int i = order_ini; i < mc.size(); i++) {
1088 for (
int j =
LO; j <= ordDF1; j++) {
1089 for (
int k =
LO; k <= j; k++) {
1102 double R_inv_t0[6] = {0.5, 0., 0., 0., 0., 0.},
1103 R_inv_t1[6] = {-0.1666666666666667, 1., 0., 0., 0., 0.},
1104 R_inv_t2[6] = {-0., 0., 1., -0.1666666666666667, 16., -2.6666666666666667},
1105 R_inv_t3[6] = {-0., 0., 0., 0.5, 0., 8.},
1106 R_inv_t4[6] = {0., 0., 1., -0.1666666666666667, 4., -0.6666666666666667},
1107 R_inv_t5[6] = {0., 0., 0., 0.5, 0., 2.};
1109 double dR_t0[6] = {1.6666666666666667, 4., 0., 0., 0., 0},
1110 dR_t1[6] = {0.8888888888888888, 0., 0., 0., 0., 0.},
1111 dR_t2[6] = {0., 0., 0., -1.4814814814814814, 106.66666666666667, -27.25925925925926},
1112 dR_t3[6] = {0., 0., -6.666666666666667, -2.7777777777777777, -128., -143.55555555555555},
1113 dR_t4[6] = {0., 0., 0., 0.14814814814814815, -10.666666666666666, 3.259259259259259},
1114 dR_t5[6] = {0., 0., 0.6666666666666666, 0.2777777777777778, 14.666666666666666, 13.444444444444444};
1123 dR_t.assign(0, dR_t0);
1124 dR_t.assign(1, dR_t1);
1125 dR_t.assign(2, dR_t2);
1126 dR_t.assign(3, dR_t3);
1127 dR_t.assign(4, dR_t4);
1128 dR_t.assign(5, dR_t5);
1139 for (
unsigned int i = 0; i < 6; i++) {
1143 for (
unsigned int i = 0; i < 6; i++) {
1147 if (ordDF1 >=
NLO) {
1150 for (
unsigned int i = 0; i < 6; i++) {
1154 for (
unsigned int i = 0; i < 6; i++) {
1159 for (
int order =
LO; order <= ordDF1; order++) {
1177 for (
unsigned int i = 0; i < mc.size(); i++) {
1179 for (
int j =
LO; j <= ordDF1; j++) {
1180 for (
int k =
LO; k <= j; k++) {
1181 for (
int l = 0; l < 13; l++) {
1198 for (
unsigned int i = 0; i < mc.size(); i++){
1200 for (
int j =
LO; j <= ordDF1; j++){
1201 for (
int k =
LO; k <= j; k++){
gslpp::vector< gslpp::complex > ** ComputeCoeffsgamma_Buras(double mu, bool noSM=false, schemes scheme=NDR)
HeffDB1(const StandardModel &SM)
constructor
unsigned int Bsgamma_order_ini_cache
gslpp::vector< gslpp::complex > ** ComputeCoeffsmumu(double mu, schemes scheme=NDR)
std::vector< WilsonCoefficient > Bsgamma_WC_cache
gslpp::matrix< double > dR_t
WilsonCoefficient coeffnlep11B
gslpp::vector< gslpp::complex > tmp_coeffsgammaNNLO
double BMllprime_mu_cache
std::vector< double > Bdmumu_Mu_cache
std::vector< double > BMllprime_Mu_cache
schemes Bsmumu_scheme_cache
gslpp::vector< gslpp::complex > tmp_coeffBMllNLO
WilsonCoefficient coeffprimesgamma
schemes Bsgamma_scheme_cache
schemes Bdmumu_scheme_cache
std::unique_ptr< EvolDB1bsg > evolDB1bsg
WilsonCoefficient coeffsmumu
std::vector< WilsonCoefficient > Bsmumu_WC_cache
WilsonCoefficient coeffBMll
gslpp::vector< gslpp::complex > ** ComputeCoeffBnlep10(double mu, schemes scheme=NDR)
std::vector< double > Bpsgamma_Mu_cache
std::unique_ptr< EvolBsmm > evolbs
gslpp::vector< gslpp::complex > ** ComputeCoeffsmumuStandardNorm(double mu, schemes scheme=NDR)
std::unique_ptr< EvolDB1Mll > evolDF1BMll
WilsonCoefficient coeffnlep10qcd
std::unique_ptr< EvolBsmm > evolbd
WilsonCoefficient coeffsgamma
gslpp::vector< gslpp::complex > tmp_coeffsgamma
std::vector< WilsonCoefficient > Bdmumu_WC_cache
gslpp::vector< gslpp::complex > nlep
gslpp::vector< gslpp::complex > ** ComputeCoeffBMll(double mu, QCD::lepton lepton, bool noSM=false, schemes scheme=NDR)
gslpp::vector< gslpp::complex > ** ComputeCoeffprimeBMll(double mu, QCD::lepton lepton, schemes scheme=NDR)
WilsonCoefficient coeffnlep01A
WilsonCoefficient coeffsgamma_Buras
std::vector< double > Bsmumu_Mu_cache
std::unique_ptr< EvolDF1nlep > u
virtual ~HeffDB1()
destructor
gslpp::vector< gslpp::complex > ** ComputeCoeffBnlep00(double mu, schemes scheme=NDR)
WilsonCoefficient coeffnlep10CC
WilsonCoefficient coeffnlep01
std::vector< double > Bsgamma_Mu_cache
gslpp::vector< gslpp::complex > tmp_coeffsgammaNLO
gslpp::vector< gslpp::complex > tmp_coeffsgammaLO
gslpp::matrix< double > R_inv_t
WilsonCoefficient coeffnlep00
gslpp::vector< gslpp::complex > ** ComputeCoeffdnunu()
WilsonCoefficient coeffBMll_Buras
gslpp::vector< gslpp::complex > tmp_coeffBMll
WilsonCoefficient coeffnlep11
gslpp::vector< gslpp::complex > tmp_coeffBMllLO
WilsonCoefficient coeffnlep00qcd
WilsonCoefficient coeffnlep01B
gslpp::vector< gslpp::complex > ** ComputeCoeffBMll_Buras(double mu, QCD::lepton lepton, bool noSM=false, schemes scheme=NDR)
schemes BMllprime_scheme_cache
const StandardModel & model
schemes BMll_scheme_cache
gslpp::vector< gslpp::complex > ** ComputeCoeffBnlep01(double mu, schemes scheme=NDR)
gslpp::vector< gslpp::complex > nlep2
WilsonCoefficient coeffnlep00CC
WilsonCoefficient coeffnlep10
WilsonCoefficient coeffdmumu
gslpp::vector< gslpp::complex > ** ComputeCoeffsnunu(QCD::lepton lepton, bool noSM=false)
gslpp::vector< gslpp::complex > ** ComputeCoeffsgamma(double mu, bool noSM=false, schemes scheme=NDR)
gslpp::vector< gslpp::complex > ** ComputeCoeffdmumu(double mu, schemes scheme=NDR)
WilsonCoefficient coeffsnunu
std::vector< WilsonCoefficient > Bpsgamma_WC_cache
std::vector< WilsonCoefficient > BMllprime_WC_cache
gslpp::matrix< double > MisiaktoBurasNLO
gslpp::vector< gslpp::complex > ** ComputeCoeffprimesgamma(double mu, schemes scheme=NDR)
gslpp::vector< gslpp::complex > ** ComputeCoeffBnlep11(double mu, schemes scheme=NDR)
unsigned int BMll_order_ini_cache
std::vector< WilsonCoefficient > BMll_WC_cache
WilsonCoefficient coeffdnunu
std::vector< double > BMll_Mu_cache
WilsonCoefficient coeffnlep11A
WilsonCoefficient coeffprimeBMll
virtual std::vector< WilsonCoefficient > & CMBMll(QCD::lepton lepton)=0
virtual std::vector< WilsonCoefficient > & CMBXsnn(QCD::lepton lepton)=0
virtual std::vector< WilsonCoefficient > & CMprimebsg()=0
virtual std::vector< WilsonCoefficient > & CMbnlep(int a)=0
virtual std::vector< WilsonCoefficient > & CMbnlepCC(const int a)=0
virtual std::vector< WilsonCoefficient > & CMprimeBMll(QCD::lepton lepton)=0
virtual std::vector< WilsonCoefficient > & CMbsg()=0
const double Beta1(const double nf) const
The coefficient for a certain number of flavours .
const double Beta0(const double nf) const
The coefficient for a certain number of flavours .
lepton
An enum type for leptons.
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.
gslpp::vector< gslpp::complex > ** getCoeff() const
void setCoeff(const gslpp::vector< gslpp::complex > &z, orders order_i)
void setScheme(schemes scheme)
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.