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

#include <THDMWSTU.h>

+ Inheritance diagram for THDMWDeltaU:

Detailed Description

Definition at line 91 of file THDMWSTU.h.

Public Member Functions

double computeThValue ()
 THDMW contribution to \(U\). More...
 
 THDMWDeltaU (const StandardModel &SM_i)
 Constructor for DeltaU. More...
 
- Public Member Functions inherited from THDMWSTU
double F (const double m02, const double m12) const
 Function \(F(m02,m12)\) used for THDMW. Remember that this function is defined for THDMW and SUSY while for THDM we have a multiplicative factor 0.5. More...
 
 THDMWSTU (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...
 

Additional Inherited Members

- Public Attributes inherited from THDMWSTU
const THDMWmyTHDMW
 
- Protected Attributes inherited from THDMWSTU
THDMWcachemycache
 
- 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

◆ THDMWDeltaU()

THDMWDeltaU::THDMWDeltaU ( const StandardModel SM_i)

Constructor for DeltaU.

Definition at line 172 of file THDMWSTU.cpp.

173 : THDMWSTU(SM_i)
174 {}

Member Function Documentation

◆ computeThValue()

double THDMWDeltaU::computeThValue ( )
virtual

THDMW contribution to \(U\).

Returns
\(\Delta U\)

Reimplemented from THDMWSTU.

Definition at line 176 of file THDMWSTU.cpp.

177 {
178  double mSp2=myTHDMW.getMyTHDMWCache()->mSpsq;
179  double mSR2=myTHDMW.getMyTHDMWCache()->mSRsq;
180  double mSI2=myTHDMW.getMyTHDMWCache()->mSIsq;
181  double s_W2 = myTHDMW.sW2();
182  //std::cout<< "SinW_2=" << s_W2 << std::endl;//Why this value?
183  double c_W2 = 1-myTHDMW.sW2();
184  double MZ2=pow(myTHDMW.getMz(),2);
185  double MW2=pow(myTHDMW.Mw(),2);
186  //We define the self energies removing the coupling because it will cancel
187 
188  gslpp::complex delPiWW_MW;
189  gslpp::complex delPiZZ_MZ;
190  gslpp::complex delPiWW_0;
191  gslpp::complex delPiZZ_0;
192  gslpp::complex delPiAAprime_0;
193  gslpp::complex delPiZAprime_0;
194  //gslpp::complex delPiAA_MZ;
195  //gslpp::complex delPiZA_MZ;
196  //gslpp::complex delPiAA_MW;
197  //gslpp::complex delPiZA_MW;
198 
199 
200 
201  //gslpp::complex S;
202 
203  //g1 on arxiv:0907.2696 is e/s_W
204 
205 
206  //delPiAA_MZ=(2./pow(M_PI,2))*(mycache->B00_MZ2_MZ2_mSp2_mSp2(MZ2,mSp2)-0.5*mycache->A0_MZ2_mSp2(MZ2,mSp2));
207  //delPiZA_MZ=((1.-2.*s_W2)/(pow(M_PI,2)*sqrt(c_W2)*sqrt(s_W2)))*(mycache->B00_MZ2_MZ2_mSp2_mSp2(MZ2,mSp2)-0.5*mycache->A0_MZ2_mSp2(MZ2,mSp2));
208  //delPiAA_MW=(2./pow(M_PI,2))*(mycache->B00_MZ2_MZ2_mSp2_mSp2(MW2,mSp2)-0.5*mycache->A0_MZ2_mSp2(MW2,mSp2));
209  //delPiZA_MW=((1.-2.*s_W2)/(pow(M_PI,2)*sqrt(c_W2)*sqrt(s_W2)))*(mycache->B00_MZ2_MZ2_mSp2_mSp2(MW2,mSp2)-0.5*mycache->A0_MZ2_mSp2(MW2,mSp2));
210 
211 
212  //S=(16.*M_PI*s_W2*c_W2)*(((delPiZZ_MZ.real()-delPiZZ_0.real())/MZ2)-(c_W2-s_W2)*delPiZA_MZ.real()/(sqrt(s_W2)*sqrt(c_W2)*MZ2)-delPiAA_MZ.real()/MZ2);
213 
214  //std::cout<< "U new=" << (16.*M_PI*s_W2)*((delPiWW_MW.real()-delPiWW_0.real())/MW2-(sqrt(c_W2)/sqrt(s_W2))*(delPiZA_MZ/MZ2)-delPiAA_MZ/MZ2)-c_W2*S << std::endl;
215  //std::cout<< "U new MW=" << (16.*M_PI*s_W2)*((delPiWW_MW.real()-delPiWW_0.real())/MW2-(sqrt(c_W2)/sqrt(s_W2))*(delPiZA_MW/MW2)-delPiAA_MW/MW2)-c_W2*S << std::endl;
216  //std::cout<< "U new mix=" << (16.*M_PI*s_W2)*((delPiWW_MW.real()-delPiWW_0.real())/MW2-(sqrt(c_W2)/sqrt(s_W2))*(delPiZA_MW/MZ2)-delPiAA_MW/MZ2)-c_W2*S << std::endl;
217  //std::cout<< "Delta MW=" << (delPiWW_MW.real()-delPiWW_0.real())/MW2 << std::endl;
218  //std::cout<< "Term with delMZ=" << c_W2*(delPiZZ_MZ.real()-delPiZZ_0.real())/MZ2 << std::endl;
219  //std::cout<< "delPiAA=" << s_W2*delPiAA_MZ.real()/MZ2 << std::endl;
220  //std::cout<< "delPiAZ=" << 2*sqrt(s_W2)*sqrt(c_W2)*delPiZA_MZ.real()/MZ2 << std::endl;
221 
222  if(fabs(myTHDMW.getMyTHDMWCache()->setOtherParameters()-1.)<1.e-10)
223  {
224  delPiWW_MW=(1./(2.*pow(M_PI,2)*s_W2))*(mycache->B00_MZ2_MZ2_mSi2_mSp2(MW2,mSI2,mSp2)+mycache->B00_MZ2_MZ2_mSr2_mSp2(MW2,mSR2,mSp2)-0.5*mycache->A0_MZ2_mSp2(MW2,mSp2)-0.25*mycache->A0_MZ2_mSp2(MW2,mSR2)-0.25*mycache->A0_MZ2_mSp2(MW2,mSI2));
225  delPiZZ_MZ=(1./(2.*pow(M_PI,2)*c_W2*s_W2))*(pow(1.-2.*s_W2,2)*(mycache->B00_MZ2_MZ2_mSp2_mSp2(MZ2,mSp2)-0.5*mycache->A0_MZ2_mSp2(MZ2,mSp2))+mycache->B00_MZ2_MZ2_mSr2_mSi2(MZ2,mSR2,mSI2)-0.25*mycache->A0_MZ2_mSp2(MZ2,mSR2)-0.25*mycache->A0_MZ2_mSp2(MZ2,mSI2));
226 
227  delPiWW_0=(1./(8.*pow(M_PI,2)*s_W2))*(0.5*F(mSp2,mSR2)+0.5*F(mSp2,mSI2));
228  delPiZZ_0=(1./(8.*pow(M_PI,2)*s_W2*c_W2))*(0.5*F(mSI2,mSR2));
229  delPiAAprime_0=-(1/(6.*pow(M_PI,2)))*mycache->B0_MZ2_0_mSp2_mSp2(MZ2,mSp2);
230  delPiZAprime_0=-((1-2*s_W2)/(12.*pow(M_PI,2)*sqrt(c_W2)*sqrt(s_W2)))*mycache->B0_MZ2_0_mSp2_mSp2(MZ2,mSp2);
231  return (16.*M_PI*s_W2)*((delPiWW_MW.real()-delPiWW_0.real())/MW2-c_W2*((delPiZZ_MZ.real()-delPiZZ_0.real())/MZ2)-(s_W2*delPiAAprime_0.real())-(2.*sqrt(s_W2)*sqrt(c_W2)*delPiZAprime_0.real()));
232 
233  }
234  else
235  {
236 
237  return std::numeric_limits<double>::quiet_NaN();
238  }
239 
240 
241 
242  }

The documentation for this class was generated from the following files:
THDMWcache::A0_MZ2_mSp2
gslpp::complex A0_MZ2_mSp2(const double MZ2, const double mSp2) const
Definition: THDMWcache.cpp:141
THDMWSTU::F
double F(const double m02, const double m12) const
Function used for THDMW. Remember that this function is defined for THDMW and SUSY while for THDM we...
Definition: THDMWSTU.cpp:27
THDMWSTU::myTHDMW
const THDMW & myTHDMW
Definition: THDMWSTU.h:38
gslpp::complex
A class for defining operations on and functions of complex numbers.
Definition: gslpp_complex.h:35
THDMWSTU::THDMWSTU
THDMWSTU(const StandardModel &SM_i)
Constructor.
Definition: THDMWSTU.cpp:15
StandardModel::sW2
virtual double sW2(const double Mw_i) const
The square of the sine of the weak mixing angle in the on-shell scheme, denoted as .
Definition: StandardModel.cpp:1000
THDMWcache::B00_MZ2_MZ2_mSi2_mSp2
gslpp::complex B00_MZ2_MZ2_mSi2_mSp2(const double MZ2, const double mSi2, const double mSp2) const
Definition: THDMWcache.cpp:252
THDMWSTU::mycache
THDMWcache * mycache
Definition: THDMWSTU.h:51
THDMWcache::B00_MZ2_MZ2_mSr2_mSp2
gslpp::complex B00_MZ2_MZ2_mSr2_mSp2(const double MZ2, const double mSr2, const double mSp2) const
Definition: THDMWcache.cpp:238
THDMWcache::mSpsq
double mSpsq
Definition: THDMWcache.h:83
THDMWcache::mSIsq
double mSIsq
Definition: THDMWcache.h:81
THDMW::getMyTHDMWCache
THDMWcache * getMyTHDMWCache() const
A method get the THDMWCache.
Definition: THDMW.h:318
gslpp::pow
complex pow(const complex &z1, const complex &z2)
Definition: gslpp_complex.cpp:395
gslpp::sqrt
complex sqrt(const complex &z)
Definition: gslpp_complex.cpp:385
THDMWcache::B00_MZ2_MZ2_mSp2_mSp2
gslpp::complex B00_MZ2_MZ2_mSp2_mSp2(const double MZ2, const double mSp2) const
Definition: THDMWcache.cpp:282
THDMWcache::setOtherParameters
double setOtherParameters()
Definition: THDMWcache.cpp:2737
THDMW::Mw
virtual double Mw() const
Definition: THDMW.cpp:493
THDMWcache::B0_MZ2_0_mSp2_mSp2
gslpp::complex B0_MZ2_0_mSp2_mSp2(const double MZ2, const double mSp2) const
Definition: THDMWcache.cpp:183
StandardModel::getMz
double getMz() const
A get method to access the mass of the boson .
Definition: StandardModel.h:718
gslpp::complex::real
const double & real() const
Definition: gslpp_complex.cpp:53
THDMWcache::B00_MZ2_MZ2_mSr2_mSi2
gslpp::complex B00_MZ2_MZ2_mSr2_mSi2(const double MZ2, const double mSr2, const double mSi2) const
Definition: THDMWcache.cpp:266
THDMWcache::mSRsq
double mSRsq
Definition: THDMWcache.h:80