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

#include <unitarity.h>

+ Inheritance diagram for unitarityR15:

Detailed Description

Definition at line 1793 of file unitarity.h.

Public Member Functions

double computeThValue ()
 
 unitarityR15 (const StandardModel &SM_i)
 unitarityR15 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 THDMmyTHDM
 

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

◆ unitarityR15()

unitarityR15::unitarityR15 ( const StandardModel SM_i)

unitarityR15 constructor.

Definition at line 3871 of file unitarity.cpp.

3872 : ThObservable(SM_i),myTHDM(static_cast<const THDM&> (SM_i))
3873 {}

Member Function Documentation

◆ computeThValue()

double unitarityR15::computeThValue ( )
virtual

Implements ThObservable.

Definition at line 3875 of file unitarity.cpp.

3876 {
3877  double YtQ = myTHDM.getMyTHDMCache()->Ytop_at_Q;
3878  double Yb1Q = myTHDM.getMyTHDMCache()->Ybottom1_at_Q;
3879  double Yb2Q = myTHDM.getMyTHDMCache()->Ybottom2_at_Q;
3880  double Ytau1Q = myTHDM.getMyTHDMCache()->Ytau1_at_Q;
3881  double Ytau2Q = myTHDM.getMyTHDMCache()->Ytau2_at_Q;
3882  double la1Q = myTHDM.getMyTHDMCache()->lambda1_at_Q;
3883  double la2Q = myTHDM.getMyTHDMCache()->lambda2_at_Q;
3884  double la3Q = myTHDM.getMyTHDMCache()->lambda3_at_Q;
3885  double la4Q = myTHDM.getMyTHDMCache()->lambda4_at_Q;
3886  double la5Q = myTHDM.getMyTHDMCache()->lambda5_at_Q;
3887  double WFRc1 = myTHDM.getMyTHDMCache()->WFRcomb1;
3888  double WFRc2 = myTHDM.getMyTHDMCache()->WFRcomb2;
3889  double Rpeps = myTHDM.getMyTHDMCache()->Rpeps;
3890 
3891  double betalambda1 = 6.0*la1Q*la1Q + 2.0*la3Q*la3Q + 2.0*la3Q*la4Q + la4Q*la4Q + la5Q*la5Q
3892  + 6.0*la1Q*Yb1Q*Yb1Q + 2.0*la1Q*Ytau1Q*Ytau1Q
3893  - 6.0*Yb1Q*Yb1Q*Yb1Q*Yb1Q - 2.0*Ytau1Q*Ytau1Q*Ytau1Q*Ytau1Q;
3894  double betalambda2 = 6.0*la2Q*la2Q + 2.0*la3Q*la3Q + 2.0*la3Q*la4Q + la4Q*la4Q + la5Q*la5Q
3895  + 6.0*la2Q*Yb2Q*Yb2Q + 2.0*la2Q*Ytau2Q*Ytau2Q + 6.0*la2Q*YtQ*YtQ
3896  - 6.0*Yb2Q*Yb2Q*Yb2Q*Yb2Q - 2.0*Ytau2Q*Ytau2Q*Ytau2Q*Ytau2Q - 6.0*YtQ*YtQ*YtQ*YtQ;
3897  double betalambda5 = la5Q*(la1Q + la2Q + 4.0*la3Q + 6.0*la4Q)
3898  + 3.0*la5Q*Yb1Q*Yb1Q + la5Q*Ytau1Q*Ytau1Q + la5Q*(3.0*Yb2Q*Yb2Q + Ytau2Q*Ytau2Q + 3.0*YtQ*YtQ)
3899  - 6.0*Yb1Q*Yb1Q*Yb2Q*Yb2Q - 2.0*Ytau1Q*Ytau1Q*Ytau2Q*Ytau2Q;
3900 
3901  double uniNLO18a = -la1Q/(16.0*M_PI);
3902  double uniNLO18b = 3.0*betalambda1/(256.0*M_PI*M_PI*M_PI);
3903  gslpp::complex uniNLO18c = (gslpp::complex::i()*M_PI-1.0)*(la1Q*la1Q+la5Q*la5Q)/(256.0*M_PI*M_PI*M_PI);
3904  gslpp::complex uniNLO18d = -la1Q/(512.0*M_PI*M_PI*M_PI) * WFRc1;
3905 
3906  double uniNLO19a = -la2Q/(16.0*M_PI);
3907  double uniNLO19b = 3.0*betalambda2/(256.0*M_PI*M_PI*M_PI);
3908  gslpp::complex uniNLO19c = (gslpp::complex::i()*M_PI-1.0)*(la2Q*la2Q+la5Q*la5Q)/(256.0*M_PI*M_PI*M_PI);
3909  gslpp::complex uniNLO19d = -la2Q/(512.0*M_PI*M_PI*M_PI) * (-WFRc1+2.0*WFRc2);
3910 
3911  double uniNLO20a = -la5Q/(16.0*M_PI);
3912  double uniNLO20b = 3.0*betalambda5/(256.0*M_PI*M_PI*M_PI);
3913  gslpp::complex uniNLO20c = (gslpp::complex::i()*M_PI-1.0)*(la1Q+la2Q)*la5Q/(256.0*M_PI*M_PI*M_PI);
3914  gslpp::complex uniNLO20d = -la4Q/(512.0*M_PI*M_PI*M_PI) * WFRc2;
3915 
3916  gslpp::complex uniA=uniNLO18a+uniNLO18b+uniNLO18c+uniNLO18d;
3917  gslpp::complex uniB=uniNLO19a+uniNLO19b+uniNLO19c+uniNLO19d;
3918  gslpp::complex uniC=uniNLO20a+uniNLO20b+uniNLO20c+uniNLO20d;
3919 
3920  double R=0.01;
3921  double a0LO = uniNLO18a+uniNLO19a+sqrt((uniNLO18a-uniNLO19a)*(uniNLO18a-uniNLO19a)+4.0*uniNLO20a*uniNLO20a);
3922  gslpp::complex a0NLO = (uniA+uniB+sqrt((uniA-uniB)*(uniA-uniB)+4.0*uniC*uniC));
3923  if(a0NLO.abs()>Rpeps)
3924  {
3925  R = (a0NLO-a0LO).abs()/(a0NLO.abs());
3926  }
3927 
3928  return R;
3929 }

Member Data Documentation

◆ myTHDM

const THDM& unitarityR15::myTHDM
private

Definition at line 1803 of file unitarity.h.


The documentation for this class was generated from the following files:
THDMcache::Ytau1_at_Q
double Ytau1_at_Q
Definition: THDMcache.h:2440
unitarityR15::myTHDM
const THDM & myTHDM
Definition: unitarity.h:1803
THDMcache::lambda1_at_Q
double lambda1_at_Q
Definition: THDMcache.h:2445
THDMcache::lambda3_at_Q
double lambda3_at_Q
Definition: THDMcache.h:2447
THDMcache::lambda5_at_Q
double lambda5_at_Q
Definition: THDMcache.h:2449
THDMcache::Ybottom1_at_Q
double Ybottom1_at_Q
Definition: THDMcache.h:2438
gslpp::complex
A class for defining operations on and functions of complex numbers.
Definition: gslpp_complex.h:35
THDMcache::Ytau2_at_Q
double Ytau2_at_Q
Definition: THDMcache.h:2441
THDMcache::Rpeps
double Rpeps
Definition: THDMcache.h:2454
ThObservable::ThObservable
ThObservable(const StandardModel &SM_i)
Constructor.
Definition: ThObservable.h:32
THDMcache::lambda2_at_Q
double lambda2_at_Q
Definition: THDMcache.h:2446
gslpp::complex::abs
double abs() const
Definition: gslpp_complex.cpp:81
gslpp::sqrt
complex sqrt(const complex &z)
Definition: gslpp_complex.cpp:385
gslpp::complex::i
static const complex & i()
Definition: gslpp_complex.cpp:154
THDMcache::Ybottom2_at_Q
double Ybottom2_at_Q
Definition: THDMcache.h:2439
THDMcache::WFRcomb2
double WFRcomb2
Definition: THDMcache.h:2451
THDMcache::Ytop_at_Q
double Ytop_at_Q
Definition: THDMcache.h:2437
THDM::getMyTHDMCache
THDMcache * getMyTHDMCache() const
A method get the THDMCache.
Definition: THDM.h:213
THDMcache::lambda4_at_Q
double lambda4_at_Q
Definition: THDMcache.h:2448
THDMcache::WFRcomb1
double WFRcomb1
Definition: THDMcache.h:2450