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

NLO over LO ratio for the second Z2-even 00 eigenvalue (corresponding to unitarityNLOev2). More...

#include <unitarity.h>

+ Inheritance diagram for unitarityRp2:

Detailed Description

NLO over LO ratio for the second Z2-even 00 eigenvalue (corresponding to unitarityNLOev2).

Definition at line 1149 of file unitarity.h.

Public Member Functions

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

◆ unitarityRp2()

unitarityRp2::unitarityRp2 ( const StandardModel SM_i)

unitarityRp2 constructor.

Definition at line 2029 of file unitarity.cpp.

2030 : ThObservable(SM_i),myTHDM(static_cast<const THDM&> (SM_i))
2031 {}

Member Function Documentation

◆ computeThValue()

double unitarityRp2::computeThValue ( )
virtual
Returns
\(|a^{\text{even,NLO}}_{00-}/a^{\text{even,LO}}_{00-}|\)

Implements ThObservable.

Definition at line 2033 of file unitarity.cpp.

2034 {
2035  double YtQ = myTHDM.getMyTHDMCache()->Ytop_at_Q;
2036  double Yb1Q = myTHDM.getMyTHDMCache()->Ybottom1_at_Q;
2037  double Yb2Q = myTHDM.getMyTHDMCache()->Ybottom2_at_Q;
2038  double Ytau1Q = myTHDM.getMyTHDMCache()->Ytau1_at_Q;
2039  double Ytau2Q = myTHDM.getMyTHDMCache()->Ytau2_at_Q;
2040  double la1Q = myTHDM.getMyTHDMCache()->lambda1_at_Q;
2041  double la2Q = myTHDM.getMyTHDMCache()->lambda2_at_Q;
2042  double la3Q = myTHDM.getMyTHDMCache()->lambda3_at_Q;
2043  double la4Q = myTHDM.getMyTHDMCache()->lambda4_at_Q;
2044  double la5Q = myTHDM.getMyTHDMCache()->lambda5_at_Q;
2045  double WFRc1 = myTHDM.getMyTHDMCache()->WFRcomb1;
2046  double WFRc2 = myTHDM.getMyTHDMCache()->WFRcomb2;
2047  double Rpeps = myTHDM.getMyTHDMCache()->Rpeps;
2048 
2049  double betalambda1 = 6.0*la1Q*la1Q + 2.0*la3Q*la3Q + 2.0*la3Q*la4Q + la4Q*la4Q + la5Q*la5Q
2050  + 6.0*la1Q*Yb1Q*Yb1Q + 2.0*la1Q*Ytau1Q*Ytau1Q
2051  - 6.0*Yb1Q*Yb1Q*Yb1Q*Yb1Q - 2.0*Ytau1Q*Ytau1Q*Ytau1Q*Ytau1Q;
2052  double betalambda2 = 6.0*la2Q*la2Q + 2.0*la3Q*la3Q + 2.0*la3Q*la4Q + la4Q*la4Q + la5Q*la5Q
2053  + 6.0*la2Q*Yb2Q*Yb2Q + 2.0*la2Q*Ytau2Q*Ytau2Q + 6.0*la2Q*YtQ*YtQ
2054  - 6.0*Yb2Q*Yb2Q*Yb2Q*Yb2Q - 2.0*Ytau2Q*Ytau2Q*Ytau2Q*Ytau2Q - 6.0*YtQ*YtQ*YtQ*YtQ;
2055  double betalambda3 = 3.0*la1Q*la3Q + 3.0*la2Q*la3Q + 2.0*la3Q*la3Q + la1Q*la4Q + la2Q*la4Q + la4Q*la4Q + la5Q*la5Q
2056  + 3.0*la3Q*Yb1Q*Yb1Q + 3.0*la3Q*Yb2Q*Yb2Q + la3Q*Ytau1Q*Ytau1Q + la3Q*Ytau2Q*Ytau2Q + 3.0*la3Q*YtQ*YtQ
2057  - 6.0*Yb1Q*Yb1Q*(Yb2Q*Yb2Q + YtQ*YtQ) - 2.0*Ytau1Q*Ytau1Q*Ytau2Q*Ytau2Q;
2058  double betalambda4 = la1Q*la4Q + la2Q*la4Q + 4.0*la3Q*la4Q + 2.0*la4Q*la4Q + 4.0*la5Q*la5Q
2059  + 3.0*la4Q*Yb1Q*Yb1Q + 3.0*la4Q*Yb2Q*Yb2Q + la4Q*Ytau1Q*Ytau1Q + la4Q*Ytau2Q*Ytau2Q + 3.0*la4Q*YtQ*YtQ
2060  - 2.0*Ytau1Q*Ytau1Q*Ytau2Q*Ytau2Q - 6.0*Yb1Q*Yb1Q*(Yb2Q*Yb2Q - YtQ*YtQ);
2061 
2062  double uniNLO1a = -3.0*la1Q/(16.0*M_PI);
2063  double uniNLO1b = 9.0*betalambda1/(256.0*M_PI*M_PI*M_PI);
2064  gslpp::complex uniNLO1c = (gslpp::complex::i()*M_PI-1.0)*(9.0*la1Q*la1Q+(2.0*la3Q+la4Q)*(2.0*la3Q+la4Q))/(256.0*M_PI*M_PI*M_PI);
2065  gslpp::complex uniNLO1d = -3.0*la1Q/(512.0*M_PI*M_PI*M_PI) * WFRc1;
2066 
2067  double uniNLO2a = -3.0*la2Q/(16.0*M_PI);
2068  double uniNLO2b = 9.0*betalambda2/(256.0*M_PI*M_PI*M_PI);
2069  gslpp::complex uniNLO2c = (gslpp::complex::i()*M_PI-1.0)*(9.0*la2Q*la2Q+(2.0*la3Q+la4Q)*(2.0*la3Q+la4Q))/(256.0*M_PI*M_PI*M_PI);
2070  gslpp::complex uniNLO2d = -3.0*la2Q/(512.0*M_PI*M_PI*M_PI) * (-WFRc1+2.0*WFRc2);
2071 
2072  double uniNLO3a = -(2.0*la3Q+la4Q)/(16.0*M_PI);
2073  double uniNLO3b = 3.0*(2.0*betalambda3+betalambda4)/(256.0*M_PI*M_PI*M_PI);
2074  gslpp::complex uniNLO3c = 3.0*(gslpp::complex::i()*M_PI-1.0)*(la1Q+la2Q)*(2.0*la3Q+la4Q)/(256.0*M_PI*M_PI*M_PI);
2075  gslpp::complex uniNLO3d = -(2.0*la3Q+la4Q)/(512.0*M_PI*M_PI*M_PI) * WFRc2;
2076 
2077  gslpp::complex uniA=uniNLO1a+uniNLO1b+uniNLO1c+uniNLO1d;
2078  gslpp::complex uniB=uniNLO2a+uniNLO2b+uniNLO2c+uniNLO2d;
2079  gslpp::complex uniC=uniNLO3a+uniNLO3b+uniNLO3c+uniNLO3d;
2080 
2081  double Rp=0.01;
2082  double a0LO = uniNLO1a+uniNLO2a-sqrt((uniNLO1a-uniNLO2a)*(uniNLO1a-uniNLO2a)+4.0*uniNLO3a*uniNLO3a);
2083  if(fabs(a0LO)>Rpeps)
2084  {
2085  Rp = ((uniA+uniB-sqrt((uniA-uniB)*(uniA-uniB)+4.0*uniC*uniC))-a0LO).abs()/fabs(a0LO);
2086  }
2087 
2088  return Rp;
2089 }

Member Data Documentation

◆ myTHDM

const THDM& unitarityRp2::myTHDM
private

Definition at line 1162 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:3398
THDMcache::lambda1_at_Q
double lambda1_at_Q
Definition: THDMcache.h:3403
THDMcache::lambda3_at_Q
double lambda3_at_Q
Definition: THDMcache.h:3405
THDMcache::lambda5_at_Q
double lambda5_at_Q
Definition: THDMcache.h:3407
THDMcache::Ybottom1_at_Q
double Ybottom1_at_Q
Definition: THDMcache.h:3396
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:3399
THDMcache::Rpeps
double Rpeps
Definition: THDMcache.h:3412
ThObservable::ThObservable
ThObservable(const StandardModel &SM_i)
Constructor.
Definition: ThObservable.h:32
unitarityRp2::myTHDM
const THDM & myTHDM
Definition: unitarity.h:1162
THDMcache::lambda2_at_Q
double lambda2_at_Q
Definition: THDMcache.h:3404
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:3397
THDMcache::WFRcomb2
double WFRcomb2
Definition: THDMcache.h:3409
THDMcache::Ytop_at_Q
double Ytop_at_Q
Definition: THDMcache.h:3395
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:3406
THDMcache::WFRcomb1
double WFRcomb1
Definition: THDMcache.h:3408