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 GeneralTHDMmyGTHDM
 

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 {}

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();
46 
47  double MZ=myGTHDM.getMz();
48 
49  /*square mass of the charged Higgs*/
50 
51  double mHp2=myGTHDM.getmHp2();
52 
53  /*up and down couplings */
56 
57  /*The following inputs are needed but are not defined before*/
58 
61  double Cb = 1.0086;
62 
65  double mu = MW;
66  double mtMZ = myGTHDM.Mrun(mu, myGTHDM.getQuarks(QCD::TOP).getMass_scale(),
70  /* std::cout << "mtMZ = " << mtMZ << std::endl;
71  std::cout << "mbMZ = " << mbMZ << std::endl;
72  std::cout << "GF = " << GF << std::endl;
73  std::cout << "MZ = " << MZ << std::endl;
74  std::cout << "MW = " << MW << std::endl;
75  std::cout << "as = " << as << std::endl;
76  std::cout << "a = " << a << std::endl;*/
77 
78 
79 
80  double xH = (mtMZ*mtMZ)/(mHp2);
81  double pi = M_PI;
82 
83 
84  double Qb = myGTHDM.getQuarks(QCD::BOTTOM).getCharge();
85 // double Qt = myGTHDM.getQuarks(QCD::TOP).getCharge();
86 
87 
88 
89  /*double gAb = SM.getQuarks(QCD::BOTTOM).getIsospin();
90  double gVb = SM.getQuarks(QCD::BOTTOM).getIsospin()-2.0*SM.getQuarks(QCD::BOTTOM).getCharge()*SM.sW2();*/
91  double gbLSM = -0.42112;
92  double gbRSM = 0.07744;
93 
94  double Sb = 1.3214;
95 
96 
97 
100  double f1 =(xH*xH - xH - xH*log(xH))/((1.0 - xH)*(1.0 - xH));
101 
102  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;
103 
104  /*Couplings*/
105 
106  double gbL= gbLSM + (sqrt(2.0)*GF*mtMZ*mtMZ*(u).abs2())/(16.0*pi*pi)*(f1 + (as/(3.0*pi))*f2);
107 
108  double gbR = gbRSM - (sqrt(2.0)*GF*mbMZ*mbMZ*(d).abs2())/(16.*pi*pi)*(f1+ (as/(3.0*pi))*f2);
109  double sb = ((gbL- gbR)*(gbL- gbR)+ (gbL+ gbR)*(gbL+ gbR))*(1.0 + 3.0*a*Qb*Qb/(4.0*pi));
110 
111 
112  /* std::cout << "f1 = " << f1 << std::endl;
113  std::cout << "f2 = " << f2 << std::endl;
114  std::cout << "gbL = " << gbL << std::endl;
115  std::cout << "gbR = " << gbR << std::endl;
116  std::cout << "sb = " << sb << std::endl;*/
117 
118 
119  /*Rb*/
120 
121  double Rb0GGTHDM = 1.0/(1.0 + (Sb*Cb)/sb);
122  // std::cout << "Rb0GGTHDM = " << Rb0GGTHDM << std::endl;
123 
124  return Rb0GGTHDM;
125 
126 
127  /* double DeltaRb0=1.0;
128  double Rb0SM=myGTHDM.R0_f(SM.getQuarks(SM.BOTTOM));
129  return Rb0SM+DeltaRb0;*/
130 
131 }

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:
Rb0GTHDM::myGTHDM
const GeneralTHDM & myGTHDM
Definition: GeneralTHDMEWPO.h:43
QCD::BOTTOM
Definition: QCD.h:329
GeneralTHDM::getNd_11
gslpp::complex getNd_11() const
A getter for Nd matrix element 11.
Definition: GeneralTHDM.h:910
StandardModel::getAlsMz
double getAlsMz() const
A get method to access the value of .
Definition: StandardModel.h:727
GeneralTHDM::Mw
virtual double Mw() const
Definition: GeneralTHDM.cpp:673
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
Particle::getMass_scale
double getMass_scale() const
A get method to access the scale at which the particle mass is defined.
Definition: Particle.h:133
ThObservable::ThObservable
ThObservable(const StandardModel &SM_i)
Constructor.
Definition: ThObservable.h:32
Particle::getMass
const double & getMass() const
A get method to access the particle mass.
Definition: Particle.h:61
GeneralTHDM::getmHp2
double getmHp2() const
A getter for the squared charged Higgs mass.
Definition: GeneralTHDM.h:608
QCD::TOP
Definition: QCD.h:328
StandardModel::getGF
double getGF() const
A get method to retrieve the Fermi constant .
Definition: StandardModel.h:736
gslpp::sqrt
complex sqrt(const complex &z)
Definition: gslpp_complex.cpp:385
Particle::getCharge
double getCharge() const
A get method to access the particle charge.
Definition: Particle.h:97
QCD::getQuarks
Particle getQuarks(const QCD::quark q) const
A get method to access a quark as an object of the type Particle.
Definition: QCD.h:534
GeneralTHDM::getNu_11
gslpp::complex getNu_11() const
A getter for Nu matrix element 11.
Definition: GeneralTHDM.h:818
GeneralTHDM::getATHDMflag
bool getATHDMflag() const
A getter for the flag to switch on the Aligned Two Higgs Doublet Model.
Definition: GeneralTHDM.h:1200
StandardModel::getMz
double getMz() const
A get method to access the mass of the boson .
Definition: StandardModel.h:718
QCD::Mrun
double Mrun(const double mu, const double m, const orders order=FULLNNLO) const
Computes a running quark mass from .
Definition: QCD.cpp:1064
FULLNNLO
Definition: OrderScheme.h:38
StandardModel::getAle
double getAle() const
A get method to retrieve the fine-structure constant .
Definition: StandardModel.h:745