#include <HierarchyCalculator.hpp>
|
| HierarchyCalculator (const Parameters &p_, bool verbose_=true) |
|
HierarchyObject | calculateDMh3L (bool isAlphab) |
|
int | compareHierarchies (HierarchyObject &ho) |
|
Eigen::Matrix2d | calculateHierarchy (himalaya::HierarchyObject &ho, int oneLoopFlagIn, int twoLoopFlagIn, int threeLoopFlagIn) const |
|
Eigen::Matrix2d | calcDRbarToMDRbarShift (const HierarchyObject &ho, bool shiftOneLoop, bool shiftTwoLoop) const |
|
Eigen::Matrix2d | getMt41L (const HierarchyObject &ho, unsigned shiftOneLoop, unsigned shiftTwoLoop) const |
|
Eigen::Matrix2d | getMt42L (const HierarchyObject &ho, unsigned shiftOneLoop, unsigned shiftTwoLoop) const |
|
double | shiftMst1ToMDR (const HierarchyObject &ho, unsigned oneLoopFlag, unsigned twoLoopFlag) const |
|
double | shiftMst2ToMDR (const HierarchyObject &ho, unsigned oneLoopFlag, unsigned twoLoopFlag) const |
|
double | getExpansionUncertainty (const himalaya::HierarchyObject &ho, const Eigen::Matrix2d &massMatrix, int oneLoopFlag, int twoLoopFlag, int threeLoopFlag) |
|
The HierarchyCalculatur class
Definition at line 29 of file HierarchyCalculator.hpp.
◆ HierarchyCalculator()
himalaya::HierarchyCalculator::HierarchyCalculator |
( |
const Parameters & |
p_, |
|
|
bool |
verbose_ = true |
|
) |
| |
Constructor
- Parameters
-
p_ | Himalaya input parameters |
verbose_ | suppress informative output during the calculation, if set to false |
Constructor
- Parameters
-
p_ | a HimalayaInterface struct |
verbose_ | suppress informative output during the calculation, if set to false |
Definition at line 153 of file HierarchyCalculator.cpp.
◆ calcAsOver4Pi()
double himalaya::HierarchyCalculator::calcAsOver4Pi |
( |
| ) |
const |
|
private |
◆ calcBeta()
double himalaya::HierarchyCalculator::calcBeta |
( |
| ) |
const |
|
private |
◆ calcCosBeta()
double himalaya::HierarchyCalculator::calcCosBeta |
( |
| ) |
const |
|
private |
◆ calcDeltaLambda3L()
◆ calcDRbarToMDRbarShift()
Eigen::Matrix2d himalaya::HierarchyCalculator::calcDRbarToMDRbarShift |
( |
const HierarchyObject & |
ho, |
|
|
bool |
shiftOneLoop, |
|
|
bool |
shiftTwoLoop |
|
) |
| const |
Calculates the contribution to the order (alpha_x) and (alpha_s alpha_x) as the difference of the Higgs mass matrices of the MDR and DR scheme. Here, x can be t or b.
- Parameters
-
ho | a HierarchyObject with constant isAlphab. |
shiftOneLoop | a bool to shift the terms at one-loop level. |
shiftTwoLoop | a bool to shift the terms at two-loop level. |
- Returns
- The loop corrected Higgs mass matrix difference of the MDR and DR scheme at the given order.
Definition at line 1246 of file HierarchyCalculator.cpp.
◆ calcHiggsMassMatrixPrefactor()
double himalaya::HierarchyCalculator::calcHiggsMassMatrixPrefactor |
( |
| ) |
const |
|
private |
calculate prefactor of the Higgs mass matrix
Prefactor of self-energy from Section 3 from [1005.5709].
GF = 1/(Sqrt[2] (vu^2 + vd^2)) is defined in the DR'-bar scheme. Sin[beta]^2 = vu^2 / (vu^2 + vd^2)
- Returns
- 3 Sqrt[2] GF / (2 Pi^2 Sin[beta]^2)
Definition at line 1308 of file HierarchyCalculator.cpp.
◆ calcMeanMsq()
double himalaya::HierarchyCalculator::calcMeanMsq |
( |
| ) |
const |
|
private |
◆ calcMsfMDRFlag()
std::array< double, 2 > himalaya::HierarchyCalculator::calcMsfMDRFlag |
( |
const HierarchyObject & |
ho, |
|
|
int |
loopOrder |
|
) |
| const |
|
private |
◆ calcSinBeta()
double himalaya::HierarchyCalculator::calcSinBeta |
( |
| ) |
const |
|
private |
◆ calcTanBeta()
double himalaya::HierarchyCalculator::calcTanBeta |
( |
| ) |
const |
|
private |
◆ calculateDMh3L()
Calculates the 3-loop mass matrix and other information of the hierarchy selection process.
- Parameters
-
isAlphab | a bool which determines if the returned object is proportinal to alpha_b. |
- Returns
- A HierarchyObject which holds all information of the calculation.
Definition at line 171 of file HierarchyCalculator.cpp.
◆ calculateHierarchy()
Eigen::Matrix2d himalaya::HierarchyCalculator::calculateHierarchy |
( |
himalaya::HierarchyObject & |
ho, |
|
|
int |
oneLoopFlagIn, |
|
|
int |
twoLoopFlagIn, |
|
|
int |
threeLoopFlagIn |
|
) |
| const |
Calculates the hierarchy contributions for a specific hierarchy at a specific loop order.
- Parameters
-
ho | a HierarchyObject with constant isAlphab. |
oneLoopFlagIn | an integer flag which is 0 or 1 in order to add or omit the expanded one-loop results to the returned value, respectivley. |
twoLoopFlagIn | an integer flag which is 0 or 1 in order to add or omit the expanded two-loop results to the returned value, respectivley. |
threeLoopFlagIn | an integer flag which is 0 or 1 in order to add or omit the expanded three-loop results to the returned value, respectivley. |
- Exceptions
-
runtime_error | Throws a runtime_error if the tree-level is requested in terms of hierarchies. |
- Returns
- The loop corrected Higgs mass matrix which contains the expanded corrections at the given order.
Calculates the hierarchy contributions for a specific hierarchy at a specific loop order.
Note: The hierarchy files containing 1-, 2- and 3-loop terms (αs^0 αt/b, αs αt/b, αs^2 αt/b).
- Todo:
- If one is interested in the expansion at one- and two-loop, choose a unified choice for the MDR scheme.
- Parameters
-
ho | a HierarchyObject with constant isAlphab. |
oneLoopFlagIn | an integer flag which is 0 or 1 in order to add or omit the expanded one-loop results to the returned value, respectivley. |
twoLoopFlagIn | an integer flag which is 0 or 1 in order to add or omit the expanded two-loop results to the returned value, respectivley. |
threeLoopFlagIn | an integer flag which is 0 or 1 in order to add or omit the expanded three-loop results to the returned value, respectivley. |
- Exceptions
-
runtime_error | Throws a runtime_error if the tree-level is requested in terms of hierarchies. |
- Returns
- The loop corrected Higgs mass matrix which contains the expanded corrections at the given order.
Definition at line 470 of file HierarchyCalculator.cpp.
◆ calcV()
double himalaya::HierarchyCalculator::calcV |
( |
| ) |
const |
|
private |
◆ calcV2()
double himalaya::HierarchyCalculator::calcV2 |
( |
| ) |
const |
|
private |
◆ compareHierarchies()
Compares deviation of all hierarchies with the exact two-loop result and returns the hierarchy which minimizes the error.
- Parameters
-
- Returns
- An integer which is identified with the suitable hierarchy.
Definition at line 300 of file HierarchyCalculator.cpp.
◆ getExpansionUncertainty()
double himalaya::HierarchyCalculator::getExpansionUncertainty |
( |
const himalaya::HierarchyObject & |
ho, |
|
|
const Eigen::Matrix2d & |
massMatrix, |
|
|
int |
oneLoopFlag, |
|
|
int |
twoLoopFlag, |
|
|
int |
threeLoopFlag |
|
) |
| |
Estimates the uncertainty of the expansion at a given order.
- Parameters
-
ho | a HierarchyObject with constant isAlphab. |
massMatrix | the CP-even Higgs mass matrix without the corrections whose uncertainty should be estimated. |
oneLoopFlag | an integer flag which is 0 or 1 in order to estimate the uncertainty of the one-loop expansion terms. |
twoLoopFlag | an integer flag which is 0 or 1 in order to estimate the uncertainty of the two-loop expansion terms. |
threeLoopFlag | an integer flag which is 0 or 1 in order to estimte the uncertainty of the three-loop expansion terms. |
- Returns
- A double which is the estimated uncertainty.
Definition at line 1426 of file HierarchyCalculator.cpp.
◆ getMt41L()
Eigen::Matrix2d himalaya::HierarchyCalculator::getMt41L |
( |
const HierarchyObject & |
ho, |
|
|
unsigned |
shiftOneLoop, |
|
|
unsigned |
shiftTwoLoop |
|
) |
| const |
Calculates the loop corrected Higgs mass matrix at the order O(alpha_x). Here, x can be t or b.
- Parameters
-
ho | a HierarchyObject with constant isAlphab. |
shiftOneLoop | An integer flag which is 0 or 1 in order to shift the one-loop terms to the MDR scheme. |
shiftTwoLoop | An integer flag which is 0 or 1 in order to shift the two-loop terms to the MDR scheme. |
- Returns
- The loop corrected Higgs mass matrix at the order O(alpha_x).
Definition at line 1140 of file HierarchyCalculator.cpp.
◆ getMt42L()
Eigen::Matrix2d himalaya::HierarchyCalculator::getMt42L |
( |
const HierarchyObject & |
ho, |
|
|
unsigned |
shiftOneLoop, |
|
|
unsigned |
shiftTwoLoop |
|
) |
| const |
Calculates the loop corrected Higgs mass matrix at the order O(alpha_x*alpha_s). Here, x can be t or b.
- Parameters
-
ho | a HierarchyObject with constant isAlphab. |
shiftOneLoop | An integer flag which is 0 or 1 in order to shift the one-loop terms to the MDR scheme. |
shiftTwoLoop | An integer flag which is 0 or 1 in order to shift the two-loop terms to the MDR scheme. |
- Returns
- The loop corrected Higgs mass matrix at the order O(alpha_x*alpha_s).
Definition at line 1212 of file HierarchyCalculator.cpp.
◆ isHierarchySuitable()
bool himalaya::HierarchyCalculator::isHierarchySuitable |
( |
const HierarchyObject & |
ho | ) |
const |
|
private |
Checks if a hierarchy is suitable to the given mass spectrum.
- Parameters
-
- Returns
- A bool if the hierarchy candidate is suitable to the given mass spectrum.
Definition at line 386 of file HierarchyCalculator.cpp.
◆ shiftH3mToDRbarPrime()
Eigen::Matrix2d himalaya::HierarchyCalculator::shiftH3mToDRbarPrime |
( |
const HierarchyObject & |
ho | ) |
const |
|
private |
Shifts the H3m renormalization scheme to DR' scheme
- Parameters
-
- Returns
- A matrix which shifts the H3m scheme to the DR' scheme at three-loop level
Shifts the H3m renormalization scheme to DR' scheme. This shift has to be added to the H3m result!
- Parameters
-
- Returns
- A matrix which shifts the H3m scheme to the DR' scheme at three-loop level
Definition at line 925 of file HierarchyCalculator.cpp.
◆ shiftH3mToDRbarPrimeMh2()
Shifts the H3m renormalization scheme to DR' scheme
- Parameters
-
ho | a HierarchyObject with constant isAlphab |
omitLogs | a flag to omit logarithmic contributions: (0) omit logs, (1) add them |
- Returns
- A double which shifts the H3m scheme to the DR' scheme at three-loop level
Shifts the H3m renormalization scheme to DR' scheme. This shift has to be added to the H3m result! Note: This shift is WITHOUT the three-loop pre-factor g3^4*k^3*Mt^2*yt^2*Sin[beta]^2 with k = 1 / (16 Pi^2)
- Parameters
-
- Returns
- A double which shifts the H3m scheme to the DR' scheme at three-loop level
Definition at line 1043 of file HierarchyCalculator.cpp.
◆ shiftMst1ToMDR()
double himalaya::HierarchyCalculator::shiftMst1ToMDR |
( |
const HierarchyObject & |
ho, |
|
|
unsigned |
oneLoopFlag, |
|
|
unsigned |
twoLoopFlag |
|
) |
| const |
Shifts Msx1 according to the hierarchy to the MDR scheme.
- Parameters
-
ho | a HierarchyObject with constant isAlphab. |
oneLoopFlag | an integer flag which is 0 or 1 in order to shift the order O(alpha_s). |
twoLoopFlag | an integer flag which is 0 or 1 in order to shift the order O(alpha_s^2). |
- Returns
- A double which is the MDR sx_1 mass.
Definition at line 817 of file HierarchyCalculator.cpp.
◆ shiftMst2ToMDR()
double himalaya::HierarchyCalculator::shiftMst2ToMDR |
( |
const HierarchyObject & |
ho, |
|
|
unsigned |
oneLoopFlag, |
|
|
unsigned |
twoLoopFlag |
|
) |
| const |
Shifts Mst2 according to the hierarchy to the MDR scheme.
- Parameters
-
ho | a HierarchyObject with constant isAlphab. |
oneLoopFlag | an integer flag which is 0 or 1 in order to shift the order O(alpha_s). |
twoLoopFlag | an integer flag which is 0 or 1 in order to shift the order O(alpha_s^2). |
- Returns
- A double which is the MDR stop_2 mass.
Shifts Msx2 according to the hierarchy to the MDR scheme.
- Parameters
-
ho | a HierarchyObject with constant isAlphab. |
oneLoopFlag | an integer flag which is 0 or 1 in order to shift the order O(alpha_s). |
twoLoopFlag | an integer flag which is 0 or 1 in order to shift the order O(alpha_s^2). |
- Returns
- A double which is the MDR sx_2 mass.
Definition at line 873 of file HierarchyCalculator.cpp.
◆ expansionDepth
std::array<int, 12> himalaya::HierarchyCalculator::expansionDepth {} |
|
private |
◆ verbose
bool himalaya::HierarchyCalculator::verbose {true} |
|
private |
The documentation for this class was generated from the following files: