a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
StandardModelMatching Class Reference

A class for the matching in the Standard Model. More...

#include <StandardModelMatching.h>

+ Inheritance diagram for StandardModelMatching:

Detailed Description

A class for the matching in the Standard Model.

Author
HEPfit Collaboration

Definition at line 26 of file StandardModelMatching.h.

Public Member Functions

virtual std::vector< WilsonCoefficient > & CMdbd2 ()
 \( \Delta B = 2 \), \( B_{d} \) More...
 
virtual std::vector< WilsonCoefficient > & CMdbs2 ()
 \( \Delta B = 2 \), \( B_{s} \) More...
 
virtual std::vector< WilsonCoefficient > & CMdd2 ()
 \( \Delta C = 2 \), More...
 
 StandardModelMatching (const StandardModel &SM_i)
 
void updateSMParameters ()
 Updates to new Standard Model parameter sets. More...
 
virtual ~StandardModelMatching ()
 
- Public Member Functions inherited from ModelMatching
virtual std::vector< WilsonCoefficient > & CMBMll (QCD::lepton lepton)=0
 
virtual std::vector< WilsonCoefficient > & CMbnlep (const int a)=0
 
virtual std::vector< WilsonCoefficient > & CMbnlepCC (const int a)=0
 
virtual std::vector< WilsonCoefficient > & CMbsg ()=0
 
virtual std::vector< WilsonCoefficient > & CMd1 ()=0
 
virtual std::vector< WilsonCoefficient > & CMd1Buras ()=0
 
virtual std::vector< WilsonCoefficient > & CMprimeBMll (QCD::lepton lepton)=0
 
virtual std::vector< WilsonCoefficient > & CMprimebsg ()=0
 
virtual ~ModelMatching ()
 

Constructor & Destructor Documentation

◆ StandardModelMatching()

StandardModelMatching::StandardModelMatching ( const StandardModel SM_i)

Definition at line 16 of file StandardModelMatching.cpp.

17 : SM(SM_i),
18  mcdbd2(5, NDR, NLO),
19  mcdbs2(5, NDR, NLO),
20  mcdd2(5, NDR, NLO),
21  mcdk2(5, NDR, NLO),
22  mck(10, NDR, NLO),
23  mckcc(10, NDR, NLO),
24  mcbsg(8, NDR, NNLO),
25  mcprimebsg(8, NDR, NNLO),
26  mcBMll(13, NDR, NLO),
27  mcprimeBMll(13, NDR, NLO),
28  mcbnlep(10, NDR, NLO, NLO_QED11),
29  mcbnlepCC(10, NDR, NLO),
30  mcd1(10, NDR, NLO),
31  mcd1Buras(10, NDR, NLO),
32  mckpnn(1, NDR, NLO, NLO_QED11),
33  mckmm(1, NDR, NLO),
34  mcbsnn(1, NDR, NLO),
35  mcbdnn(1, NDR, NLO),
36  mcbsmm(8, NDR, NNLO, NLO_QED22),
37  mcbdmm(8, NDR, NNLO, NLO_QED22),
38  mcbtaunu(3, NDR, LO),
39  mcDLij(2, NDR, LO),
40  mcDLi3j(20, NDR, LO),
41  mcmueconv(8, NDR, LO),
42  mcgminus2mu(2, NDR, NLO),
43  Vckm(3,3,0.)
44 {
45  swa = 0.;
46  swb = 0.;
47  swc = 0.;
48  xcachea = 0.;
49  xcacheb = 0.;
50  xcachec = 0.;
51 
52 
53  for (int j=0; j<10; j++) {
54  CWD1ArrayLO[j] = 0.;
55  CWD1ArrayNLO[j] = 0.;
56  CWbnlepArrayLOqcd[j] = 0.;
57  CWbnlepArrayNLOqcd[j] = 0.;
58  CWbnlepArrayLOew[j] = 0.;
59  CWbnlepArrayNLOew[j] = 0.;
60  };
61 
62 
63  for(int j=0; j<19; j++){
64  CWBMllArrayLO[j] = 0.;
65  CWBMllArrayNLO[j] = 0.;
66  }
67 
68  for(int j=0; j<8; j++){
69  CWbsgArrayLO[j] = 0.;
70  CWbsgArrayNLO[j] = 0.;
71  CWbsgArrayNNLO[j] = 0.;
72  CWprimebsgArrayLO[j] = 0.;
73  CWprimebsgArrayNLO[j] = 0.;
74  }
75 
76  for(int j=0; j<8; j++){
77  CWBsmmArrayNNLOqcd[j] = 0.;
78  CWBsmmArrayNLOqcd[j] = 0.;
79  CWBsmmArrayLOqcd[j] = 0.;
80  CWBsmmArrayNLOewt4[j] = 0.;
81  CWBsmmArrayNLOewt2[j] = 0.;
82  CWBsmmArrayNLOew[j] = 0.;
83  }
84 
85  for(int j=0; j<8; j++){
86  CWBdmmArrayNNLOqcd[j] = 0.;
87  CWBdmmArrayNLOqcd[j] = 0.;
88  CWBdmmArrayLOqcd[j] = 0.;
89  CWBdmmArrayNLOewt4[j] = 0.;
90  CWBdmmArrayNLOewt2[j] = 0.;
91  CWBdmmArrayNLOew[j] = 0.;
92  }
93 
94 
95  Nc = SM.getNc();
96  CF = SM.getCF();
97  gamma0 = 6. * (Nc - 1.) / Nc;
98  J5 = SM.Beta1(5) * gamma0 / 2. / SM.Beta0(5) / SM.Beta0(5) - ((Nc - 1.)/(2. * Nc) * (-21. + 57./Nc - 19./3. * Nc + 20./3.)) / 2. / SM.Beta0(5);
99  BtNDR = 5. * (Nc - 1.) / 2. / Nc + 3. * CF;
100 }

◆ ~StandardModelMatching()

StandardModelMatching::~StandardModelMatching ( )
virtual

Definition at line 102 of file StandardModelMatching.cpp.

103 {}

Member Function Documentation

◆ CMdbd2()

std::vector< WilsonCoefficient > & StandardModelMatching::CMdbd2 ( )
virtual

\( \Delta B = 2 \), \( B_{d} \)

Returns
return the vector of SM Wilson coefficients

Implements ModelMatching.

Reimplemented in FlavourWilsonCoefficient_DF2Matching.

Definition at line 993 of file StandardModelMatching.cpp.

997 {
998  double gammam = 6. * CF;
999  double Bt;
1000 
1001 
1002  double xt = x_t(Mut);
1003  gslpp::complex co = GF / 4. / M_PI * Mw * SM.getCKM().computelamt_d();
1004 
1005  vmcdb.clear();
1006 
1007  switch (mcdbd2.getScheme()) {
1008  case NDR:
1009  Bt = BtNDR;
1010  break;
1011  case HV:
1012  case LRI:
1013  default:
1014  std::stringstream out;
1015  out << mcdbd2.getScheme();
1016  throw std::runtime_error("StandardModel::CMdb2(): scheme " + out.str() + "not implemented");
1017  }
1018 
1019  mcdbd2.setMu(Mut);
1020 
1021  switch (mcdbd2.getOrder()) {
1022  case NNLO:
1023  case NLO:
1024  mcdbd2.setCoeff(0, co * co * 4. * (SM.Als(Mut, FULLNLO) / 4. / M_PI * (S1(xt) + //* CHECK ORDER *//
1025  (Bt + gamma0 * log(Mut / Mw)) * S0(xt, xt) + 2. * gammam * S0p(xt) * log(Mut / Mw))), NLO);
1026 #if SUSYFIT_DEBUG & 1
1027  std::cout << "Mw = " << Mw << " mt(mut=" << Mut << ")= " << Mt_mut << " xt(mut=" << Mut << ")= " << xt << "matching of DB=2: S0(xt) = " << S0(xt) <<
1028  ", S1(xt) = " << S1(xt) +
1029  (Bt + gamma0 * log(Muw / Mw)) * S0(xt, xt) + 2. * gammam * S0p(xt) * log(Muw / Mw)
1030  << ", lambdat_d^2 = " << SM.getCKM().computelamt_d()*SM.getCKM().computelamt_d() << std::endl;
1031 #endif
1032  case LO:
1033  mcdbd2.setCoeff(0, co * co * 4. * (S0(xt, xt)), LO);
1034  break;
1035  default:
1036  std::stringstream out;
1037  out << mcdbd2.getOrder();
1038  throw std::runtime_error("StandardModelMatching::CMdbd2(): order " + out.str() + "not implemented");
1039  }
1040 
1041 

◆ CMdbs2()

std::vector< WilsonCoefficient > & StandardModelMatching::CMdbs2 ( )
virtual

\( \Delta B = 2 \), \( B_{s} \)

Returns
return the vector of SM Wilson coefficients

Implements ModelMatching.

Reimplemented in GeneralTHDMMatching, THDMWMatching, FlavourWilsonCoefficient_DF2Matching, and THDMMatching.

Definition at line 1043 of file StandardModelMatching.cpp.

1047 {
1048  double gammam = 6. * CF;
1049  double Bt;
1050  double xt = x_t(Mut);
1051  gslpp::complex co = GF / 4. / M_PI * Mw * SM.getCKM().computelamt_s();
1052 
1053  vmcds.clear();
1054 
1055  switch (mcdbs2.getScheme()) {
1056  case NDR:
1057  Bt = BtNDR;
1058  break;
1059  case HV:
1060  case LRI:
1061  default:
1062  std::stringstream out;
1063  out << mcdbs2.getScheme();
1064  throw std::runtime_error("StandardModel::CMdbs2(): scheme " + out.str() + "not implemented");
1065  }
1066 
1067  mcdbs2.setMu(Mut);
1068 
1069  switch (mcdbs2.getOrder()) {
1070  case NNLO:
1071  case NLO:
1072  mcdbs2.setCoeff(0, co * co * 4. * (SM.Als(Mut, FULLNLO) / 4. / M_PI * (S1(xt) + //* CHECK ORDER *//
1073  (Bt + gamma0 * log(Mut / Mw)) * S0(xt, xt) + 2. * gammam * S0p(xt) * log(Mut / Mw))), NLO);
1074  case LO:
1075  mcdbs2.setCoeff(0, co * co * 4. * (S0(xt, xt)), LO);
1076  break;
1077  default:
1078  std::stringstream out;
1079  out << mcdbs2.getOrder();
1080  throw std::runtime_error("StandardModelMatching::CMdbs2(): order " + out.str() + "not implemented");
1081  }
1082 

◆ CMdd2()

std::vector< WilsonCoefficient > & StandardModelMatching::CMdd2 ( )
virtual

\( \Delta C = 2 \),

Returns
return the vector of SM Wilson coefficients

Implements ModelMatching.

Reimplemented in FlavourWilsonCoefficient_DF2Matching.

Definition at line 1199 of file StandardModelMatching.cpp.

1204 {
1205  vmcd2.clear();
1206 
1207  switch (mcdd2.getScheme()) {
1208  case NDR:
1209  case HV:
1210  case LRI:
1211  break;
1212  default:
1213  std::stringstream out;
1214  out << mcdd2.getScheme();
1215  throw std::runtime_error("StandardModel::CMdd2(): scheme " + out.str() + "not implemented");
1216  }
1217 
1218  mcdd2.setMu(Muw);
1219 
1220  switch (mcdd2.getOrder()) {
1221  case NNLO:
1222  case NLO:
1223  for(int i=0; i<5; i++)
1224  mcdd2.setCoeff(i, 0., NLO);
1225  case LO:
1226  for(int j=0; j<5; j++)
1227  mcdd2.setCoeff(j, 0., LO);
1228  break;
1229  default:
1230  std::stringstream out;
1231  out << mcdd2.getOrder();
1232  throw std::runtime_error("StandardModelMatching::CMdd2(): order " + out.str() + "not implemented");
1233  }

◆ updateSMParameters()

void StandardModelMatching::updateSMParameters ( )

Updates to new Standard Model parameter sets.

Definition at line 105 of file StandardModelMatching.cpp.

106 {
107  Mut = SM.getMut();
108  Muw = SM.getMuw();
109  Ale = SM.getAle();
110  Mt_muw = SM.Mrun(Muw, SM.getQuarks(QCD::TOP).getMass_scale(),
111  SM.getQuarks(QCD::TOP).getMass(), FULLNNLO);
112  Mt_mut = SM.Mrun(Mut, SM.getQuarks(QCD::TOP).getMass_scale(),
113  SM.getQuarks(QCD::TOP).getMass(), FULLNNLO);
114  alstilde = SM.Als(Muw, FULLNNNLO, true) / 4. / M_PI; // SM.Alstilde5(Muw) WHICH ONE TO USE?
115  aletilde = SM.Ale(Muw, FULLNLO) / 4. / M_PI; // Ale / 4. / M_PI; // WHERE IS ale(mu)?
116  GF = SM.getGF();
117  Mw_tree = SM.Mw_tree();
118  Mw = SM.Mw(); /* on-shell Mw */
119  sW2 = SM.sW2(); /* on-shell sW2 */
120  /* NP models should be added here after writing codes for Mw. */
121  /* The following is commented out till further review.*/
122 // if (SM.getModelName()=="StandardModel") {
123 // Mw = SM.Mw(); /* on-shell Mw */
124 // sW2 = SM.sW2(); /* on-shell sW2 */
125 // } else {
126 // Mw = Mw_tree;
127 // sW2 = 1.0 - Mw*Mw/SM.getMz()/SM.getMz();
128 // }
129 // sW2 = (M_PI * Ale ) / ( sqrt(2.) * GF * Mw * Mw ); // WARNING: only for
130  Vckm = SM.getVCKM();
131  lam_t = SM.getCKM().computelamt();
132  L = 2*log(Muw/Mw);
133  Lz = 2*log(Muw/SM.getMz());
134  mu_b = SM.getMub();
135 }

The documentation for this class was generated from the following files:
Mw::Mw
Mw(const StandardModel &SM_i)
Constructor.
Definition: Mw.h:29
NLO_QED11
Definition: OrderScheme.h:51
FULLNNNLO
Definition: OrderScheme.h:39
LO
Definition: OrderScheme.h:33
NDR
Definition: OrderScheme.h:21
gslpp::complex
A class for defining operations on and functions of complex numbers.
Definition: gslpp_complex.h:35
gslpp::log
complex log(const complex &z)
Definition: gslpp_complex.cpp:342
QCD::TOP
Definition: QCD.h:328
NNLO
Definition: OrderScheme.h:35
NLO_QED22
Definition: OrderScheme.h:55
LRI
Definition: OrderScheme.h:23
Mw
An observable class for the -boson mass.
Definition: Mw.h:22
HV
Definition: OrderScheme.h:22
NLO
Definition: OrderScheme.h:34
FULLNNLO
Definition: OrderScheme.h:38
FULLNLO
Definition: OrderScheme.h:37