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

#include <GeneralTHDMEWPO.h>

+ Inheritance diagram for Rb0GTHDM:

Detailed Description

Definition at line 30 of file GeneralTHDMEWPO.h.

Public Member Functions

double computeThValue ()
 
 Rb0GTHDM (const StandardModel &SM_i)
 Constructor. More...
 
- Public Member Functions inherited from ThObservable
double getBinMax ()
 A get method to get the maximum value of the bin. More...
 
double getBinMin ()
 A get method to get the minimum value of the bin. More...
 
const StandardModelgetModel ()
 A get method to get the model. More...
 
const std::vector< std::string > getParametersForObservable ()
 A get method to get the parameters for the specific observable. More...
 
void setBinMax (double max)
 A set method to set the maximum value of the bin. More...
 
void setBinMin (double min)
 A set method to set the minimum value of the bin. More...
 
void setParametersForObservable (std::vector< std::string > parametersForObservable_i)
 A set method to get the parameters for the specific observable. More...
 
 ThObservable (const StandardModel &SM_i)
 Constructor. More...
 
 ThObservable (const ThObservable &orig)
 The copy constructor. More...
 
virtual ~ThObservable ()
 The default destructor. More...
 

Private Attributes

const GeneralTHDM & myGTHDM
 

Additional Inherited Members

- Protected Attributes inherited from ThObservable
double max
 the bin maximum. More...
 
double min
 The bin minimum. More...
 
std::vector< std::string > parametersForObservable
 a vector of parameter namesfor the specific observable More...
 
const StandardModelSM
 A reference to an object of StandardMode class. More...
 

Constructor & Destructor Documentation

◆ Rb0GTHDM()

Rb0GTHDM::Rb0GTHDM ( const StandardModel SM_i)

Constructor.

Definition at line 26 of file GeneralTHDMEWPO.cpp.

27: ThObservable(SM_i),myGTHDM(static_cast<const GeneralTHDM&> (SM_i))
28{}
const GeneralTHDM & myGTHDM
ThObservable(const StandardModel &SM_i)
Constructor.
Definition: ThObservable.h:32

Member Function Documentation

◆ computeThValue()

double Rb0GTHDM::computeThValue ( )
virtual
Returns
Rb0GTHDM

From: arXiv: 1002.1071v2 and "QCD corrections to e+e- cross section and Z decay rates: Concepts and results"

Masses of the top and bottom quarks at the scale of the W mass (mu)

Loop functions

Implements ThObservable.

Definition at line 33 of file GeneralTHDMEWPO.cpp.

34{
35
36 if (!myGTHDM.getATHDMflag())
37 {
38 throw std::runtime_error("Rb only aviable in the A2HDM.");
39 }
40
41 double GF = myGTHDM.getGF();
42 double as = myGTHDM.getAlsMz();
43 double a = myGTHDM.getAle();
44
45 double MW=myGTHDM.Mw_tree(); //The Mw mass is used do define the electroweak scale, we can
46 //use the tree level value and forget about the NP contributions
47
48 double MZ=myGTHDM.getMz();
49
50 /*square mass of the charged Higgs*/
51
52 double mHp2=myGTHDM.getmHp2();
53
54 /*up and down couplings */
55 gslpp::complex u = myGTHDM.getNu_11();
56 gslpp::complex d = myGTHDM.getNd_11();
57
58 /*The following inputs are needed but are not defined before*/
59
62 double Cb = 1.0086;
63
66 double mu = MW;
67 double mtMZ = myGTHDM.Mrun(mu, myGTHDM.getQuarks(QCD::TOP).getMass_scale(),
68 myGTHDM.getQuarks(QCD::TOP).getMass(), QCD::TOP, FULLNNLO);
69 double mbMZ = myGTHDM.Mrun(mu, myGTHDM.getQuarks(QCD::BOTTOM).getMass_scale(),
70 myGTHDM.getQuarks(QCD::BOTTOM).getMass(), QCD::BOTTOM, FULLNNLO);
71 /* std::cout << "mtMZ = " << mtMZ << std::endl;
72 std::cout << "mbMZ = " << mbMZ << std::endl;
73 std::cout << "GF = " << GF << std::endl;
74 std::cout << "MZ = " << MZ << std::endl;
75 std::cout << "MW = " << MW << std::endl;
76 std::cout << "as = " << as << std::endl;
77 std::cout << "a = " << a << std::endl;*/
78
79
80
81 double xH = (mtMZ*mtMZ)/(mHp2);
82 double pi = M_PI;
83
84
85 double Qb = myGTHDM.getQuarks(QCD::BOTTOM).getCharge();
86// double Qt = myGTHDM.getQuarks(QCD::TOP).getCharge();
87
88
89
90 /*double gAb = SM.getQuarks(QCD::BOTTOM).getIsospin();
91 double gVb = SM.getQuarks(QCD::BOTTOM).getIsospin()-2.0*SM.getQuarks(QCD::BOTTOM).getCharge()*SM.sW2();*/
92 double gbLSM = -0.42112;
93 double gbRSM = 0.07744;
94
95 double Sb = 1.3214;
96
97
98
101 double f1 =(xH*xH - xH - xH*log(xH))/((1.0 - xH)*(1.0 - xH));
102
103 double f2 = - (6.0*xH*(xH-2.0)*gsl_sf_dilog(1.0-1./xH))/((xH-1.0)*(xH-1.0))+ xH*(-27.0+11.0*xH)/((xH-1.0)*(xH-1.0))+ xH*(25.0-9.0*xH)*log(xH)/((xH-1.0)*(xH-1.0)*(xH-1.0))+ (6.0*xH*(3.0-xH)/((xH-1.0)*(xH-1.0)) - (12.0*xH*log(xH))/((xH-1.0)*(xH-1.0)*(xH-1.0)))*log((mtMZ*mtMZ)/(MZ*MZ)) - 3.0*f1;
104
105 /*Couplings*/
106
107 double gbL= gbLSM + (sqrt(2.0)*GF*mtMZ*mtMZ*(u).abs2())/(16.0*pi*pi)*(f1 + (as/(3.0*pi))*f2);
108
109 double gbR = gbRSM - (sqrt(2.0)*GF*mbMZ*mbMZ*(d).abs2())/(16.*pi*pi)*(f1+ (as/(3.0*pi))*f2);
110 double sb = ((gbL- gbR)*(gbL- gbR)+ (gbL+ gbR)*(gbL+ gbR))*(1.0 + 3.0*a*Qb*Qb/(4.0*pi));
111
112
113 /* std::cout << "f1 = " << f1 << std::endl;
114 std::cout << "f2 = " << f2 << std::endl;
115 std::cout << "gbL = " << gbL << std::endl;
116 std::cout << "gbR = " << gbR << std::endl;
117 std::cout << "sb = " << sb << std::endl;*/
118
119
120 /*Rb*/
121
122 double Rb0GGTHDM = 1.0/(1.0 + (Sb*Cb)/sb);
123 // std::cout << "Rb0GGTHDM = " << Rb0GGTHDM << std::endl;
124
125 return Rb0GGTHDM;
126
127
128 /* double DeltaRb0=1.0;
129 double Rb0SM=myGTHDM.R0_f(SM.getQuarks(SM.BOTTOM));
130 return Rb0SM+DeltaRb0;*/
131
132}
@ FULLNNLO
Definition: OrderScheme.h:39
@ BOTTOM
Definition: QCD.h:329
@ TOP
Definition: QCD.h:328

Member Data Documentation

◆ myGTHDM

const GeneralTHDM& Rb0GTHDM::myGTHDM
private

Definition at line 43 of file GeneralTHDMEWPO.h.


The documentation for this class was generated from the following files: