Skip to content

Commit

Permalink
move Hierarchies.hpp into hierarchies/ sub-directory
Browse files Browse the repository at this point in the history
in order to reflect where it belongs to
  • Loading branch information
Expander committed Jul 9, 2018
1 parent 7265b75 commit 3cde822
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 32 deletions.
74 changes: 42 additions & 32 deletions source/HierarchyCalculator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -49,20 +49,20 @@ namespace {

/** The hierarchy map which maps all hierarchies to their mother hierarchies */
const std::map<int, int> hierarchyMap = {
{ Hierarchies::h3 , Hierarchies::h3 },
{ Hierarchies::h32q2g , Hierarchies::h3 },
{ Hierarchies::h3q22g , Hierarchies::h3 },
{ Hierarchies::h4 , Hierarchies::h4 },
{ Hierarchies::h5 , Hierarchies::h5 },
{ Hierarchies::h5g1 , Hierarchies::h5 },
{ Hierarchies::h6 , Hierarchies::h6 },
{ Hierarchies::h6g2 , Hierarchies::h6 },
{ Hierarchies::h6b , Hierarchies::h6b },
{ Hierarchies::h6b2qg2, Hierarchies::h6b },
{ Hierarchies::h6bq22g, Hierarchies::h6b },
{ Hierarchies::h6bq2g2, Hierarchies::h6b },
{ Hierarchies::h9 , Hierarchies::h9 },
{ Hierarchies::h9q2 , Hierarchies::h9 }
{ hierarchies::Hierarchies::h3 , hierarchies::Hierarchies::h3 },
{ hierarchies::Hierarchies::h32q2g , hierarchies::Hierarchies::h3 },
{ hierarchies::Hierarchies::h3q22g , hierarchies::Hierarchies::h3 },
{ hierarchies::Hierarchies::h4 , hierarchies::Hierarchies::h4 },
{ hierarchies::Hierarchies::h5 , hierarchies::Hierarchies::h5 },
{ hierarchies::Hierarchies::h5g1 , hierarchies::Hierarchies::h5 },
{ hierarchies::Hierarchies::h6 , hierarchies::Hierarchies::h6 },
{ hierarchies::Hierarchies::h6g2 , hierarchies::Hierarchies::h6 },
{ hierarchies::Hierarchies::h6b , hierarchies::Hierarchies::h6b },
{ hierarchies::Hierarchies::h6b2qg2, hierarchies::Hierarchies::h6b },
{ hierarchies::Hierarchies::h6bq22g, hierarchies::Hierarchies::h6b },
{ hierarchies::Hierarchies::h6bq2g2, hierarchies::Hierarchies::h6b },
{ hierarchies::Hierarchies::h9 , hierarchies::Hierarchies::h9 },
{ hierarchies::Hierarchies::h9q2 , hierarchies::Hierarchies::h9 }
};

/**
Expand Down Expand Up @@ -107,7 +107,7 @@ HierarchyCalculator::HierarchyCalculator(const Parameters& p_,
void HierarchyCalculator::init(){
// fill flag list
flagMap.clear();
for (int i = ExpansionDepth::FIRST; i < ExpansionDepth::NUMBER_OF_EXPANSIONS; i++) {
for (int i = hierarchies::ExpansionDepth::FIRST; i < hierarchies::ExpansionDepth::NUMBER_OF_EXPANSIONS; i++) {
flagMap.emplace(i, 1u);
}

Expand Down Expand Up @@ -259,6 +259,8 @@ himalaya::HierarchyObject HierarchyCalculator::calculateDMh3L(bool isAlphab)
*/
int HierarchyCalculator::compareHierarchies(himalaya::HierarchyObject& ho)
{
using namespace himalaya::hierarchies;

// set flags to truncate the expansion
flagMap.at(ExpansionDepth::xx) = 0;
flagMap.at(ExpansionDepth::xxMst) = 0;
Expand Down Expand Up @@ -360,6 +362,8 @@ int HierarchyCalculator::compareHierarchies(himalaya::HierarchyObject& ho)
*/
bool HierarchyCalculator::isHierarchySuitable(const himalaya::HierarchyObject& ho) const
{
using namespace himalaya::hierarchies;

double Mst1, Mst2;
if(!ho.getIsAlphab()){
Mst1 = p.MSt(0);
Expand Down Expand Up @@ -828,6 +832,8 @@ double HierarchyCalculator::shiftMst1ToMDR(const himalaya::HierarchyObject& ho,
const unsigned int oneLoopFlag,
const unsigned int twoLoopFlag) const
{
using namespace himalaya::hierarchies;

double Mst1mod = 0., Mst1, Mst2;
if(!ho.getIsAlphab()){
Mst1 = p.MSt(0);
Expand Down Expand Up @@ -882,6 +888,8 @@ double HierarchyCalculator::shiftMst2ToMDR(const himalaya::HierarchyObject& ho,
const unsigned int oneLoopFlag,
const unsigned int twoLoopFlag) const
{
using namespace himalaya::hierarchies;

double Mst2mod = 0., Mst2;
if(!ho.getIsAlphab()){
Mst2 = p.MSt(1);
Expand Down Expand Up @@ -936,11 +944,11 @@ Eigen::Matrix2d HierarchyCalculator::shiftH3mToDRbarPrime(
int truncateXt = 1;

const int suitableHierarchy = ho.getSuitableHierarchy();
if(suitableHierarchy == himalaya::Hierarchies::h3
|| suitableHierarchy == himalaya::Hierarchies::h32q2g
|| suitableHierarchy == himalaya::Hierarchies::h3q22g
|| suitableHierarchy == himalaya::Hierarchies::h9
|| suitableHierarchy == himalaya::Hierarchies::h9q2) truncateXt = 0;
if(suitableHierarchy == himalaya::hierarchies::Hierarchies::h3
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h32q2g
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h3q22g
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h9
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h9q2) truncateXt = 0;

// pre-factor of shift -> checked normalization against H3m normalization and they coincide
const double k = 1 / (16 * pow2(Pi));
Expand All @@ -955,7 +963,7 @@ Eigen::Matrix2d HierarchyCalculator::shiftH3mToDRbarPrime(
const double Mst2 = shiftMst2ToMDR(ho, ho.getMDRFlag(), ho.getMDRFlag());
double Xt = p.Au(2,2) - p.mu / Tbeta;
// Hierarchy h4 only covers O(Xt^0)
if(suitableHierarchy == himalaya::Hierarchies::h4) Xt = 0;
if(suitableHierarchy == himalaya::hierarchies::Hierarchies::h4) Xt = 0;

// threshold for degenerate squark mass case is 1% of the stop mass
const double eps = Mst1 * 0.01;
Expand Down Expand Up @@ -1055,11 +1063,11 @@ double HierarchyCalculator::shiftH3mToDRbarPrimeMh2(
// truncate shift at O(Xt^2) to be consistent with H3m result
int truncateXt = 1;
const int suitableHierarchy = ho.getSuitableHierarchy();
if(suitableHierarchy == himalaya::Hierarchies::h3
|| suitableHierarchy == himalaya::Hierarchies::h32q2g
|| suitableHierarchy == himalaya::Hierarchies::h3q22g
|| suitableHierarchy == himalaya::Hierarchies::h9
|| suitableHierarchy == himalaya::Hierarchies::h9q2) truncateXt = 0;
if(suitableHierarchy == himalaya::hierarchies::Hierarchies::h3
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h32q2g
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h3q22g
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h9
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h9q2) truncateXt = 0;

// tanbeta
const double Tbeta = p.vu / p.vd;
Expand All @@ -1070,7 +1078,7 @@ double HierarchyCalculator::shiftH3mToDRbarPrimeMh2(

double Xt = p.Au(2,2) - p.mu / Tbeta;
// Hierarchy h4 only covers O(Xt^0)
if(suitableHierarchy == himalaya::Hierarchies::h4) Xt = 0;
if(suitableHierarchy == himalaya::hierarchies::Hierarchies::h4) Xt = 0;

// threshold for degenerate squark mass case is 1% of the stop mass
const double eps = Mst1 * 0.01;
Expand Down Expand Up @@ -1299,11 +1307,11 @@ void HierarchyCalculator::calcDeltaLambda3L(himalaya::HierarchyObject& ho, bool
// set Xt order truncation for EFT contribution to be consistent with H3m
const int suitableHierarchy = ho.getSuitableHierarchy();
const int xtOrder =
(suitableHierarchy == himalaya::Hierarchies::h3
|| suitableHierarchy == himalaya::Hierarchies::h32q2g
|| suitableHierarchy == himalaya::Hierarchies::h3q22g
|| suitableHierarchy == himalaya::Hierarchies::h9
|| suitableHierarchy == himalaya::Hierarchies::h9q2) ? 3 : 4;
(suitableHierarchy == himalaya::hierarchies::Hierarchies::h3
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h32q2g
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h3q22g
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h9
|| suitableHierarchy == himalaya::hierarchies::Hierarchies::h9q2) ? 3 : 4;

// to obtain delta_lambda one has to divide the difference of the two calculations by v^2
const double v2 = pow2(p.vu) + pow2(p.vd);
Expand Down Expand Up @@ -1388,6 +1396,8 @@ double HierarchyCalculator::getExpansionUncertainty(himalaya::HierarchyObject& h
const unsigned int oneLoopFlag,
const unsigned int twoLoopFlag,
const unsigned int threeLoopFlag){
using namespace himalaya::hierarchies;

double Mh;
double Mhcut;
std::vector<double> errors;
Expand Down
2 changes: 2 additions & 0 deletions source/HierarchyObject.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -414,6 +414,8 @@ void HierarchyObject::setDLambdaDRbarPrimeToMSbarShift(int loops, double shift)
*/
std::string HierarchyObject::getH3mHierarchyNotation(int hierarchy) const
{
using namespace himalaya::hierarchies;

switch (hierarchy){
case Hierarchies::h3:
return "h3";
Expand Down
File renamed without changes.
1 change: 1 addition & 0 deletions test/test_FO_expressions.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ TEST_CASE("test_FO_expansions")
{
using namespace himalaya;
using namespace himalaya::mh2_eft;
using namespace himalaya::hierarchies;

const double eps = 1e-10;

Expand Down

0 comments on commit 3cde822

Please sign in to comment.