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

#include <unitarity.h>

+ Inheritance diagram for unitarityR18:

Detailed Description

Definition at line 1844 of file unitarity.h.

Public Member Functions

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

◆ unitarityR18()

unitarityR18::unitarityR18 ( const StandardModel SM_i)

unitarityR18 constructor.

Definition at line 4053 of file unitarity.cpp.

4054 : ThObservable(SM_i),myTHDM(static_cast<const THDM&> (SM_i))
4055 {}

Member Function Documentation

◆ computeThValue()

double unitarityR18::computeThValue ( )
virtual

Implements ThObservable.

Definition at line 4057 of file unitarity.cpp.

4058 {
4059  double YtQ = myTHDM.getMyTHDMCache()->Ytop_at_Q;
4060  double Yb1Q = myTHDM.getMyTHDMCache()->Ybottom1_at_Q;
4061  double Yb2Q = myTHDM.getMyTHDMCache()->Ybottom2_at_Q;
4062  double Ytau1Q = myTHDM.getMyTHDMCache()->Ytau1_at_Q;
4063  double Ytau2Q = myTHDM.getMyTHDMCache()->Ytau2_at_Q;
4064  double la1Q = myTHDM.getMyTHDMCache()->lambda1_at_Q;
4065  double la2Q = myTHDM.getMyTHDMCache()->lambda2_at_Q;
4066  double la3Q = myTHDM.getMyTHDMCache()->lambda3_at_Q;
4067  double la4Q = myTHDM.getMyTHDMCache()->lambda4_at_Q;
4068  double la5Q = myTHDM.getMyTHDMCache()->lambda5_at_Q;
4069  double WFRc1 = myTHDM.getMyTHDMCache()->WFRcomb1;
4070  double WFRc2 = myTHDM.getMyTHDMCache()->WFRcomb2;
4071  double WFRc3 = myTHDM.getMyTHDMCache()->WFRcomb3;
4072  double WFRc4 = myTHDM.getMyTHDMCache()->WFRcomb4;
4073  double Rpeps = myTHDM.getMyTHDMCache()->Rpeps;
4074 
4075  double betalambda1 = 6.0*la1Q*la1Q + 2.0*la3Q*la3Q + 2.0*la3Q*la4Q + la4Q*la4Q + la5Q*la5Q
4076  + 6.0*la1Q*Yb1Q*Yb1Q + 2.0*la1Q*Ytau1Q*Ytau1Q
4077  - 6.0*Yb1Q*Yb1Q*Yb1Q*Yb1Q - 2.0*Ytau1Q*Ytau1Q*Ytau1Q*Ytau1Q;
4078  double betalambda2 = 6.0*la2Q*la2Q + 2.0*la3Q*la3Q + 2.0*la3Q*la4Q + la4Q*la4Q + la5Q*la5Q
4079  + 6.0*la2Q*Yb2Q*Yb2Q + 2.0*la2Q*Ytau2Q*Ytau2Q + 6.0*la2Q*YtQ*YtQ
4080  - 6.0*Yb2Q*Yb2Q*Yb2Q*Yb2Q - 2.0*Ytau2Q*Ytau2Q*Ytau2Q*Ytau2Q - 6.0*YtQ*YtQ*YtQ*YtQ;
4081  double betalambda5 = la5Q*(la1Q + la2Q + 4.0*la3Q + 6.0*la4Q)
4082  + 3.0*la5Q*Yb1Q*Yb1Q + la5Q*Ytau1Q*Ytau1Q + la5Q*(3.0*Yb2Q*Yb2Q + Ytau2Q*Ytau2Q + 3.0*YtQ*YtQ)
4083  - 6.0*Yb1Q*Yb1Q*Yb2Q*Yb2Q - 2.0*Ytau1Q*Ytau1Q*Ytau2Q*Ytau2Q;
4084 
4085  double uniNLO21a = -la1Q/(16.0*M_PI);
4086  double uniNLO21b = 3.0*betalambda1/(256.0*M_PI*M_PI*M_PI);
4087  gslpp::complex uniNLO21c = (gslpp::complex::i()*M_PI-1.0)*(la1Q*la1Q+la5Q*la5Q)/(256.0*M_PI*M_PI*M_PI);
4088  gslpp::complex uniNLO21d = -la1Q/(512.0*M_PI*M_PI*M_PI) * (WFRc1+2.0*WFRc2-WFRc3-2.0*WFRc4);
4089 
4090  double uniNLO22a = -la2Q/(16.0*M_PI);
4091  double uniNLO22b = 3.0*betalambda2/(256.0*M_PI*M_PI*M_PI);
4092  gslpp::complex uniNLO22c = (gslpp::complex::i()*M_PI-1.0)*(la2Q*la2Q+la5Q*la5Q)/(256.0*M_PI*M_PI*M_PI);
4093  gslpp::complex uniNLO22d = -la2Q/(512.0*M_PI*M_PI*M_PI) * (-WFRc1+2.0*WFRc2+WFRc3-2.0*WFRc4);
4094 
4095  double uniNLO23a = -la5Q/(16.0*M_PI);
4096  double uniNLO23b = 3.0*betalambda5/(256.0*M_PI*M_PI*M_PI);
4097  gslpp::complex uniNLO23c = (gslpp::complex::i()*M_PI-1.0)*(la1Q+la2Q)*la5Q/(256.0*M_PI*M_PI*M_PI);
4098  gslpp::complex uniNLO23d = -2.0*la5Q/(512.0*M_PI*M_PI*M_PI) * (WFRc2-WFRc4);
4099 
4100  gslpp::complex uniA=uniNLO21a+uniNLO21b+uniNLO21c+uniNLO21d;
4101  gslpp::complex uniB=uniNLO22a+uniNLO22b+uniNLO22c+uniNLO22d;
4102  gslpp::complex uniC=uniNLO23a+uniNLO23b+uniNLO23c+uniNLO23d;
4103 
4104  double R=0.01;
4105  double a0LO = uniNLO21a+uniNLO22a-sqrt((uniNLO21a-uniNLO22a)*(uniNLO21a-uniNLO22a)+4.0*uniNLO23a*uniNLO23a);
4106  gslpp::complex a0NLO = (uniA+uniB-sqrt((uniA-uniB)*(uniA-uniB)+4.0*uniC*uniC));
4107  if(a0NLO.abs()>Rpeps)
4108  {
4109  R = (a0NLO-a0LO).abs()/(a0NLO.abs());
4110  }
4111 
4112  return R;
4113 }

Member Data Documentation

◆ myTHDM

const THDM& unitarityR18::myTHDM
private

Definition at line 1854 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
THDMcache::lambda1_at_Q
double lambda1_at_Q
Definition: THDMcache.h:2445
unitarityR18::myTHDM
const THDM & myTHDM
Definition: unitarity.h:1854
THDMcache::lambda3_at_Q
double lambda3_at_Q
Definition: THDMcache.h:2447
THDMcache::WFRcomb3
double WFRcomb3
Definition: THDMcache.h:2452
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
THDMcache::WFRcomb4
double WFRcomb4
Definition: THDMcache.h:2453
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