8#ifndef STANDARDMODELMATCHING_H
9#define STANDARDMODELMATCHING_H
44 virtual std::vector<WilsonCoefficient>&
CMdbd2();
51 virtual std::vector<WilsonCoefficient>&
CMdbs2() ;
58 virtual std::vector<WilsonCoefficient>&
CMdd2() ;
65 virtual std::vector<WilsonCoefficient>& CMdk2() ;
74 virtual std::vector<WilsonCoefficient>&
CMbnlep(
int a) ;
82 virtual std::vector<WilsonCoefficient>&
CMbnlepCC(
int a) ;
90 virtual std::vector<WilsonCoefficient>&
CMbsg() ;
98 virtual std::vector<WilsonCoefficient>&
CMprimebsg() ;
122 virtual std::vector<WilsonCoefficient>& CMK() ;
131 virtual std::vector<WilsonCoefficient>& CMKCC() ;
138 virtual std::vector<WilsonCoefficient>&
CMd1() ;
145 virtual std::vector<WilsonCoefficient>&
CMd1Buras() ;
151 virtual std::vector<WilsonCoefficient>& CMkpnn() ;
156 virtual std::vector<WilsonCoefficient>& CMkmm() ;
162 virtual std::vector<WilsonCoefficient>& CMbsmm() ;
168 virtual std::vector<WilsonCoefficient>& CMbdmm() ;
174 virtual std::vector<WilsonCoefficient>& CMdiujleptonknu(
int i,
int j,
int k) ;
187 virtual std::vector<WilsonCoefficient>& CMBXdnn() ;
193 virtual std::vector<WilsonCoefficient>& CMDLij(
int li_lj) ;
199 virtual std::vector<WilsonCoefficient>& CMDLi3j(
int li_lj) ;
205 virtual std::vector<WilsonCoefficient>& CMmueconv() ;
211 virtual std::vector<WilsonCoefficient>& CMgminus2mu() ;
213 const double x_c(
const double mu,
const orders order =
FULLNNLO)
const;
214 const double x_t(
const double mu,
const orders order =
FULLNNLO)
const;
215 const double mt2omh2(
const double mu,
const orders order =
FULLNNLO)
const;
223 const double A0t(
double x)
const;
231 const double B0t(
double x)
const;
239 const double C0t(
double x)
const;
247 const double D0t(
double x)
const;
255 const double F0t(
double x)
const;
263 const double E0t(
double x)
const;
272 const double A1t(
double x,
double mu)
const;
281 const double B1t(
double x,
double mu)
const;
290 const double C1t(
double x,
double mu)
const;
299 const double D1t(
double x,
double mu)
const;
308 const double F1t(
double x,
double mu)
const;
317 const double E1t(
double x,
double mu)
const;
326 const double G1t(
double x,
double mu)
const;
334 const double C7c_3L_at_mW(
double x)
const;
342 const double C7t_3L_at_mt(
double x)
const;
351 const double C7t_3L_func(
double x,
double mu)
const;
359 const double C8c_3L_at_mW(
double x)
const;
367 const double C8t_3L_at_mt(
double x)
const;
376 const double C8t_3L_func(
double x,
double mu)
const;
384 const double Tt(
double x)
const;
392 const double Wt(
double x)
const;
400 const double Eet(
double x)
const;
409 const double Rest(
double x,
double mu)
const;
418 double C10_OS1(
double x,
double mu);
425 const double Y0(
double x)
const;
433 const double Y1(
double x,
double mu)
const;
441 const double C7LOeff(
double x)
const;
449 const double C7NLOeff(
double x)
const;
457 const double C8LOeff(
double x)
const;
465 const double C8NLOeff(
double x)
const;
473 const double B0b(
double x)
const;
481 const double C0b(
double x)
const;
489 const double D0b(
double x)
const;
497 const double D0b_tilde(
double x)
const;
505 const double E0b(
double x)
const;
514 const double B1d(
double x,
double mu)
const;
523 const double B1d_tilde(
double x,
double mu)
const;
532 const double B1u(
double x,
double mu)
const;
541 const double B1u_tilde(
double x,
double mu)
const;
549 const double C1ew(
double x)
const;
558 const double Zew(
double xt,
double xz)
const;
568 const double Gew(
double xt,
double xz,
double mu)
const;
578 const double Hew(
double xt,
double xz,
double mu)
const;
585 gslpp::complex S0c()
const;
592 gslpp::complex S0ct()
const;
599 gslpp::complex S0tt()
const;
607 const double X0t(
double x)
const;
615 const double X1t(
double x)
const;
626 const double Xewt(
double x,
double a,
double mu)
const;
634 const double S1(
double x)
const;
636 virtual const double S0(
double,
double)
const;
643 virtual std::vector<WilsonCoefficientNew>&
CMDF1(std::string blocks,
unsigned int nops);
645 const double getMt_mut()
const {
650 std::vector<WilsonCoefficient> vmcdb, vmcds, vmcd2, vmck2, vmck, vmckcc;
651 std::vector<WilsonCoefficient> vmcbsg, vmcprimebsg, vmcBMll, vmcprimeBMll, vmcbnlep, vmcbnlepCC, vmcd1, vmcd1Buras;
652 std::vector<WilsonCoefficient> vmckpnn, vmckmm, vmcbsnn, vmcbdnn, vmcbsmm, vmcbdmm, vmculeptonnu;
653 std::vector<WilsonCoefficient> vmcDLij, vmcDLi3j, vmcmueconv, vmcgminus2mu;
654 std::vector<WilsonCoefficientNew> vmcDF1;
659 const double S0(
double)
const;
660 const double S0p(
double x)
const;
661 const double S11(
double x)
const;
662 const double S18(
double x)
const;
664 WilsonCoefficient mcbsg, mcprimebsg, mcBMll, mcprimeBMll, mcbnlep, mcbnlepCC, mcd1, mcd1Buras;
669 double Mut, Muw, Ale, GF, Mw_tree, Nc, CF, Mt_muw, Mt_mut;
670 double gamma0, J5, BtNDR,
Mw, sW2, mu_b, sw;
672 double alstilde, aletilde;
674 gslpp::complex lam_t;
675 gslpp::matrix<gslpp::complex> Vckm;
684 double setWCBsmm(
int i,
double x,
orders order);
693 double setWCBsmmEW(
int i,
double x,
orders_qed order_qed);
702 double setWCBdmm(
int i,
double x,
orders order);
711 double setWCBdmmEW(
int i,
double x,
orders_qed order_qed);
720 double setWCbsg (
int i,
double x,
orders order);
729 double setWCBMll (
int i,
double x,
orders order);
738 double setWCbnlep (
int i,
double x,
orders order);
746 double setWCbnlepEW (
int i,
double x);
753 const double phi1(
double z)
const;
761 const double phi2 (
double x,
double y)
const;
763 double CWbsgArrayLO[8], CWbsgArrayNLO[8], CWbsgArrayNNLO[8];
764 double CWprimebsgArrayLO[8], CWprimebsgArrayNLO[8];
765 double CWBMllArrayLO[19], CWBMllArrayNLO[19];
766 double CWD1ArrayLO[10], CWD1ArrayNLO[10];
767 double CWbnlepArrayLOqcd[10], CWbnlepArrayNLOqcd[10];
768 double CWbnlepArrayLOew[10], CWbnlepArrayNLOew[10];
770 double CWBsmmArrayNNLOqcd[8], CWBsmmArrayNLOqcd[8], CWBsmmArrayLOqcd[8];
771 double CWBsmmArrayNLOewt4[8], CWBsmmArrayNLOewt2[8], CWBsmmArrayNLOew[8];
773 double CWBdmmArrayNNLOqcd[8], CWBdmmArrayNLOqcd[8], CWBdmmArrayLOqcd[8];
774 double CWBdmmArrayNLOewt4[8], CWBdmmArrayNLOewt2[8], CWBdmmArrayNLOew[8];
776 double sw2, swa, sw2a, swb, sw2b, swc, sw2c, swd, sw2d, swe, sw2e, swf, sw2f;
777 double xcachea, xcacheb, xcachec, xcached, xcachee, xcachef;
785 const double phi_z(
double z)
const;
793 const double phi_xy (
double x,
double y)
const;
800 double C3funNNLO(
double x);
808 double C4fun(
double x,
orders ord);
815 double C5funNNLO(
double x);
822 double C6funNNLO(
double x);
829 double C7funLO(
double x);
836 double C8funLO(
double x);
846 double fbb(
double x);
854 double gbb(
double x);
862 double taub2(
double x);
871 double Delta_t(
double mu,
double x);
918 friend double gslpp_special_functions::dilog(
double x);
919 friend double gslpp_special_functions::clausen(
double x);
920 friend double gslpp_special_functions::zeta(
int i);
A class for a template of model matching.
virtual std::vector< WilsonCoefficient > & CMBMll(QCD::lepton lepton)=0
virtual std::vector< WilsonCoefficient > & CMBXsnn(QCD::lepton lepton)=0
virtual std::vector< WilsonCoefficientNew > & CMDF1(std::string blocks, unsigned int nops)=0
virtual std::vector< WilsonCoefficient > & CMd1()=0
virtual std::vector< WilsonCoefficient > & CMd1Buras()=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
An observable class for the -boson mass.
lepton
An enum type for leptons.
A model class for the Standard Model.
A class for the matching in the Standard Model.
void updateSMParameters()
Updates to new Standard Model parameter sets.
virtual std::vector< WilsonCoefficient > & CMdbs2()
,
virtual std::vector< WilsonCoefficient > & CMdbd2()
,
virtual ~StandardModelMatching()
StandardModelMatching(const StandardModel &SM_i)
virtual std::vector< WilsonCoefficient > & CMdd2()
,
A class for the Wilson coefficients.
A class for the Wilson coefficients.
orders
An enum type for orders in QCD.
schemes
An enum type for regularization schemes.
qed_orders
An enum type for qed_orders in electroweak.
orders_qed
An enum type for orders in electroweak.
qcd_orders
An enum type for qcd_orders in QCD.