DESY Hbb Analysis Framework
Public Member Functions | Private Member Functions | Private Attributes | List of all members
mssm_xs_tools Class Reference

#include <mssm_xs_tools.h>

Public Member Functions

double bbH4F_A (double mA, double tanb)
 get cross section for production of A in association with b quarks (4FS) (in pb) More...
 
double bbH4F_A_scale (double mA, double tanb, const bool kUP)
 get uncertainties for A production in association with b quarks from mu scale variations (4FS, in pb) More...
 
double bbH4F_H (double mA, double tanb)
 get cross section for production of H in association with b quarks (4FS) (in pb) More...
 
double bbH4F_h (double mA, double tanb)
 get cross section for production of h in association with b quarks (4FS) (in pb) More...
 
double bbH4F_H_scale (double mA, double tanb, const bool kUP)
 get uncertainties for H production in association with b quarks from mu scale variations (4FS, in pb) More...
 
double bbH4F_h_scale (double mA, double tanb, const bool kUP)
 get uncertainties for h production in association with b quarks from mu scale variations (4FS, in pb) More...
 
double bbH5F_A (double mA, double tanb)
 get cross section for production of A in association with b quarks (5FS) (in pb) More...
 
double bbH5F_A_pdfas (double mA, double tanb, const bool kUP)
 get uncertainties for A production in association with b quarks from variations of pdfs and alphas (same for 4FS and 5FS, in pb) More...
 
double bbH5F_A_scale (double mA, double tanb, const bool kUP)
 get uncertainties for A production in association with b quarks from mu scale variations (5FS, in pb) More...
 
double bbH5F_H (double mA, double tanb)
 get cross section for production of H in association with b quarks (5FS) (in pb) More...
 
double bbH5F_h (double mA, double tanb)
 get cross section for production of h in association with b quarks (5FS) (in pb) More...
 
double bbH5F_H_pdfas (double mA, double tanb, const bool kUP)
 get uncertainties for H production in association with b quarks from variations of pdfs and alphas (same for 4FS and 5FS, in pb) More...
 
double bbH5F_h_pdfas (double mA, double tanb, const bool kUP)
 get uncertainties for h production in association with b quarks from variations of pdfs and alphas (same for 4FS and 5FS, in pb) More...
 
double bbH5F_H_scale (double mA, double tanb, const bool kUP)
 get uncertainties for H production in association with b quarks from mu scale variations (5FS, in pb) More...
 
double bbH5F_h_scale (double mA, double tanb, const bool kUP)
 get uncertainties for h production in association with b quarks from mu scale variations (5FS, in pb) More...
 
double bbHSantander_A (double mA, double tanb)
 get cross section for production of A in association with b quarks (using Santander matching scheme) (in pb) More...
 
double bbHSantander_A_pdfas (double mA, double tanb, const bool kUP)
 get uncertainties for A production in association with b quarks from pdf+alphas variations (Santander matching scheme, in pb) More...
 
double bbHSantander_A_scale (double mA, double tanb, const bool kUP)
 get uncertainties for A production in association with b quarks from mu variations (Santander matching scheme, in pb) More...
 
double bbHSantander_H (double mA, double tanb)
 get cross section for production of H in association with b quarks (using Santander matching scheme) (in pb) More...
 
double bbHSantander_h (double mA, double tanb)
 get cross section for production of h in association with b quarks (using Santander matching scheme) (in pb) More...
 
double bbHSantander_H_pdfas (double mA, double tanb, const bool kUP)
 get uncertainties for H production in association with b quarks from pdf+alphas variations (Santander matching scheme, in pb) More...
 
double bbHSantander_h_pdfas (double mA, double tanb, const bool kUP)
 get uncertainties for h production in association with b quarks from pdf+alphas variations (Santander matching scheme, in pb) More...
 
double bbHSantander_H_scale (double mA, double tanb, const bool kUP)
 get uncertainties for H production in association with b quarks from mu variations (Santander matching scheme, in pb) More...
 
double bbHSantander_h_scale (double mA, double tanb, const bool kUP)
 get uncertainties for h production in association with b quarks from mu variations (Santander matching scheme, in pb) More...
 
double br (const char *decay, double mA, double tanb)
 get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb More...
 
double br_Abb (double mA, double tanb)
 get BR(A->bb) for given value of mA and tanb More...
 
double br_Acc (double mA, double tanb)
 get BR(A->cc) for given value of mA and tanb More...
 
double br_Add (double mA, double tanb)
 get BR(A->dd) for given value of mA and tanb More...
 
double br_Aee (double mA, double tanb)
 get BR(A->ee) for given value of mA and tanb More...
 
double br_Agammagamma (double mA, double tanb)
 get BR(A->gammagamma) for given value of mA and tanb More...
 
double br_Agg (double mA, double tanb)
 get BR(A->gg) for given value of mA and tanb More...
 
double br_Amumu (double mA, double tanb)
 get BR(A->mumu) for given value of mA and tanb More...
 
double br_Ass (double mA, double tanb)
 get BR(A->ss) for given value of mA and tanb More...
 
double br_ASUSY (double mA, double tanb)
 get BR(A->SUSY) for given value of mA and tanb More...
 
double br_Atautau (double mA, double tanb)
 get BR(A->tautau) for given value of mA and tanb More...
 
double br_Att (double mA, double tanb)
 get BR(A->tt) for given value of mA and tanb More...
 
double br_Auu (double mA, double tanb)
 get BR(A->uu) for given value of mA and tanb More...
 
double br_AWW (double mA, double tanb)
 get BR(A->WW) for given value of mA and tanb More...
 
double br_AZgamma (double mA, double tanb)
 get BR(A->Zgamma) for given value of mA and tanb More...
 
double br_AZh (double mA, double tanb)
 get BR(A->Zh) for given value of mA and tanb More...
 
double br_AZZ (double mA, double tanb)
 get BR(A->ZZ) for given value of mA and tanb More...
 
double br_Hbb (double mA, double tanb)
 get BR(H->bb) for given value of mA and tanb More...
 
double br_hbb (double mA, double tanb)
 get BR(h->bb) for given value of mA and tanb More...
 
double br_Hcc (double mA, double tanb)
 get BR(H->cc) for given value of mA and tanb More...
 
double br_hcc (double mA, double tanb)
 get BR(h->cc) for given value of mA and tanb More...
 
double br_Hdd (double mA, double tanb)
 get BR(H->dd) for given value of mA and tanb More...
 
double br_hdd (double mA, double tanb)
 get BR(h->dd) for given value of mA and tanb More...
 
double br_Hee (double mA, double tanb)
 get BR(H->ee) for given value of mA and tanb More...
 
double br_hee (double mA, double tanb)
 get BR(h->ee) for given value of mA and tanb More...
 
double br_Hgammagamma (double mA, double tanb)
 get BR(H->gammagamma) for given value of mA and tanb More...
 
double br_hgammagamma (double mA, double tanb)
 get BR(h->gammagamma) for given value of mA and tanb More...
 
double br_Hgg (double mA, double tanb)
 get BR(H->gg) for given value of mA and tanb More...
 
double br_hgg (double mA, double tanb)
 get BR(h->gg) for given value of mA and tanb More...
 
double br_Hhh (double mA, double tanb)
 get BR(H->hh) for given value of mA and tanb More...
 
double br_Hmumu (double mA, double tanb)
 get BR(H->tautau) for given value of mA and tanb More...
 
double br_hmumu (double mA, double tanb)
 get BR(h->mumu) for given value of mA and tanb More...
 
double br_Hpcbb (double mA, double tanb)
 get BR(H+->cbb) for given value of mA and tanb More...
 
double br_Hpcdb (double mA, double tanb)
 get BR(H+->cdb) for given value of mA and tanb More...
 
double br_Hpcsb (double mA, double tanb)
 get BR(H+->csb) for given value of mA and tanb More...
 
double br_Hpenu (double mA, double tanb)
 get BR(H+->enu) for given value of mA and tanb More...
 
double br_HpHHW (double mA, double tanb)
 get BR(H+->HHA) for given value of mA and tanb More...
 
double br_Hpmunu (double mA, double tanb)
 get BR(H+->munu) for given value of mA and tanb More...
 
double br_HpSUSY (double mA, double tanb)
 get BR(H+->SUSY) for given value of mA and tanb More...
 
double br_Hptaunu (double mA, double tanb)
 get BR(H+->taunu) for given value of mA and tanb More...
 
double br_Hptbb (double mA, double tanb)
 get BR(H+->tbb) for given value of mA and tanb More...
 
double br_Hptdb (double mA, double tanb)
 get BR(H+->tdb) for given value of mA and tanb More...
 
double br_Hptsb (double mA, double tanb)
 get BR(H+->tsb) for given value of mA and tanb More...
 
double br_Hpubb (double mA, double tanb)
 get BR(H+->ubb) for given value of mA and tanb More...
 
double br_Hpudb (double mA, double tanb)
 get BR(H+->udb) for given value of mA and tanb More...
 
double br_Hpusb (double mA, double tanb)
 get BR(H+->usb) for given value of mA and tanb More...
 
double br_HpWA (double mA, double tanb)
 get BR(H+->WA) for given value of mA and tanb More...
 
double br_HpWh (double mA, double tanb)
 get BR(H+->Wh) for given value of mA and tanb More...
 
double br_Hss (double mA, double tanb)
 get BR(H->ss) for given value of mA and tanb More...
 
double br_hss (double mA, double tanb)
 get BR(h->ss) for given value of mA and tanb More...
 
double br_HSUSY (double mA, double tanb)
 get BR(H->SUSY) for given value of mA and tanb More...
 
double br_hSUSY (double mA, double tanb)
 get BR(h->SUSY) for given value of mA and tanb More...
 
double br_Htautau (double mA, double tanb)
 get BR(H->tautau) for given value of mA and tanb More...
 
double br_htautau (double mA, double tanb)
 get BR(h->tautau) for given value of mA and tanb More...
 
double br_Htt (double mA, double tanb)
 get BR(H->tt) for given value of mA and tanb More...
 
double br_htt (double mA, double tanb)
 get BR(h->tt) for given value of mA and tanb More...
 
double br_Huu (double mA, double tanb)
 get BR(H->uu) for given value of mA and tanb More...
 
double br_huu (double mA, double tanb)
 get BR(h->uu) for given value of mA and tanb More...
 
double br_HWW (double mA, double tanb)
 get BR(H->WW) for given value of mA and tanb More...
 
double br_hWW (double mA, double tanb)
 get BR(h->WW) for given value of mA and tanb More...
 
double br_HZgamma (double mA, double tanb)
 get BR(H->gammagamma) for given value of mA and tanb More...
 
double br_hZgamma (double mA, double tanb)
 get BR(h->Zgamma) for given value of mA and tanb More...
 
double br_HZZ (double mA, double tanb)
 get BR(H->ZZ) for given value of mA and tanb More...
 
double br_hZZ (double mA, double tanb)
 get BR(h->ZZ) for given value of mA and tanb More...
 
double br_tHpb (double mA, double tanb)
 get BR(t->H+b) for given value of mA and tanb More...
 
double ggH_A (double mA, double tanb)
 get cross section for production of A in gluon-gluon fusion (in pb) More...
 
double ggH_A_pdfas (double mA, double tanb, const bool kUP)
 get uncertainties for gluon-gluon fusion production of A from variations of pdfs and alphas (in pb) More...
 
double ggH_A_scale (double mA, double tanb, const bool kUP)
 get uncertainties for gluon-gluon fusion production of A from mu scale variations (in pb) More...
 
double ggH_H (double mA, double tanb)
 get cross section for production of H in gluon-gluon fusion (in pb) More...
 
double ggH_h (double mA, double tanb)
 get cross section for production of h in gluon-gluon fusion (in pb) More...
 
double ggH_H_pdfas (double mA, double tanb, const bool kUP)
 get uncertainties for gluon-gluon fusion production of H from variations of pdfs and alphas (in pb) More...
 
double ggH_h_pdfas (double mA, double tanb, const bool kUP)
 get uncertainties for gluon-gluon fusion production of h from variations of pdfs and alphas (in pb) More...
 
double ggH_H_scale (double mA, double tanb, const bool kUP)
 get uncertainties for gluon-gluon fusion production of H from mu scale variations (in pb) More...
 
double ggH_h_scale (double mA, double tanb, const bool kUP)
 get uncertainties for gluon-gluon fusion production of h from mu scale variations (in pb) More...
 
TH2F * hist (std::string name)
 a save way to access a histogram from the stack; returns NULL if histogram does not exist on stack More...
 
double mass (const char *boson, double mA, double tanb)
 get mass of a given Higgs boson for given values of mA and tanb (in GeV) More...
 
double mH (double mA, double tanb)
 get mH for given value of mA and tanb (in GeV) More...
 
double mh (double mA, double tanb)
 get mh for given value of mA and tanb (in GeV) More...
 
double mHp (double mA, double tanb)
 get mH+ for given value of mA and tanb (in GeV) More...
 
 mssm_xs_tools (const char *filename="", bool kINTERPLOTATION=false, unsigned verbosity=0)
 constructor More...
 
double mu2mA (double mu, double tanb)
 
double width (const char *boson, double mA, double tanb)
 get totla decay width of a given Higgs boson for given values of mA and tanb (in GeV) More...
 
double width_A (double mA, double tanb)
 
double width_H (double mA, double tanb)
 
double width_h (double mA, double tanb)
 
double width_Hp (double mA, double tanb)
 
double width_tHpb (double mA, double tanb)
 
double xsec (const char *mode, double mA, double tanb)
 get production cross section for a given production model of a given Higgs boson for given values of mA and tanb (in pb) More...
 
 ~mssm_xs_tools ()
 destructor More...
 

Private Member Functions

std::string br_rule (const char *br)
 rule to determine histogram names related to branching fractions in the input file More...
 
std::string mass_rule (const char *b)
 rule to determine histogram names related to masses in the input file More...
 
double read (const char *key, double mA, double tanb, std::string(mssm_xs_tools::*rule)(const char *key))
 
void setup (const char *filename)
 open input file to access histograms (only needed if input file was not specified in the constructor) More...
 
std::string width_rule (const char *b)
 rule to determine histogram names related to full decay widths in the input file More...
 
std::string xsec_rule (const char *xs)
 rule to determine histogram names related to cross sections in the input file More...
 

Private Attributes

std::map< std::string, TH2F * > hists_
 histogram container (filled in constructor) More...
 
TFile * input_
 root input file (opened in constructor) More...
 
bool kINTERPOL_
 apply bilinear interpolation (built-in to TH2F) or get bin content, plain as it is More...
 
int nbinsX_
 
int nbinsY_
 
unsigned verbosity_
 verbosity level More...
 

Detailed Description

Definition at line 73 of file mssm_xs_tools.h.

Constructor & Destructor Documentation

mssm_xs_tools::mssm_xs_tools ( const char *  filename = "",
bool  kINTERPLOTATION = false,
unsigned  verbosity = 0 
)

constructor

Definition at line 5 of file mssm_xs_tools.cc.

References input_.

Referenced by mssm_xs_tools_new().

5  : verbosity_(verbosity), kINTERPOL_(kINT){
6  if(verbosity>99){
7  std::cout << "Welcome to the MSSM neutral cross section tool (v1.0). In case of questions contact:"
8  << std::endl
9  << " Allison Mc Carn / ATLAS (allison.renae.mc.carn@cern.ch)," << std::endl
10  << " Trevor Vickey / ATLAS (trevor.vickey@cern.ch), " << std::endl
11  << " Felix Frensch / CMS (felix.frensch@cern.ch) " << std::endl
12  << " Roger Wolf / CMS (roger.wolf@cern.ch), " << std::endl
13  << " Stefan Liebler / Theory (stefan.liebler@desy.de), " << std::endl
14  << " Michael Spira / Theory (michael.spira@psi.ch), " << std::endl
15  << " Pietro Slavich / Theory (slavich@lpthe.jussieu.fr). " << std::endl;
16 
17  }
18  if(!filename){
19  std::cout << "Chose input file using the method mssm_xs_tools::setup()" << std::endl;
20  }
21  else{
22  input_ = new TFile(filename);
23  }
24 }
TFile * input_
root input file (opened in constructor)
unsigned verbosity_
verbosity level
bool kINTERPOL_
apply bilinear interpolation (built-in to TH2F) or get bin content, plain as it is ...
mssm_xs_tools::~mssm_xs_tools ( )
inline

destructor

Definition at line 79 of file mssm_xs_tools.h.

References hist(), and nano_94X_2017_rereco31Mar18-v1::name.

79 {};

Member Function Documentation

double mssm_xs_tools::bbH4F_A ( double  mA,
double  tanb 
)
inline

get cross section for production of A in association with b quarks (4FS) (in pb)

Definition at line 280 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_A().

280 { return xsec("bb4F->A", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH4F_A_scale ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for A production in association with b quarks from mu scale variations (4FS, in pb)

Definition at line 314 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_A_scale().

314 { return xsec(kUP ? "bb4F->A::scaleUp" : "bb4F->A::scaleDown", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH4F_H ( double  mA,
double  tanb 
)
inline

get cross section for production of H in association with b quarks (4FS) (in pb)

Definition at line 282 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_H().

282 { return xsec("bb4F->H", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH4F_h ( double  mA,
double  tanb 
)
inline

get cross section for production of h in association with b quarks (4FS) (in pb)

Definition at line 284 of file mssm_xs_tools.h.

References bbHSantander_A(), bbHSantander_H(), bbHSantander_h(), and xsec().

Referenced by bbHSantander_h().

284 { return xsec("bb4F->h", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH4F_H_scale ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for H production in association with b quarks from mu scale variations (4FS, in pb)

Definition at line 316 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_H_scale().

316 { return xsec(kUP ? "bb4F->H::scaleUp" : "bb4F->H::scaleDown", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH4F_h_scale ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for h production in association with b quarks from mu scale variations (4FS, in pb)

Definition at line 318 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_h_scale().

318 { return xsec(kUP ? "bb4F->h::scaleUp" : "bb4F->h::scaleDown", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH5F_A ( double  mA,
double  tanb 
)
inline

get cross section for production of A in association with b quarks (5FS) (in pb)

Definition at line 274 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_A(), and bbHSantander_A_pdfas().

274 { return xsec("bb5F->A", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH5F_A_pdfas ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for A production in association with b quarks from variations of pdfs and alphas (same for 4FS and 5FS, in pb)

Definition at line 320 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_A_pdfas().

320 { return xsec((kUP ? "bb5F->A::pdfasUp" : "bb5F->A::pdfasDown"), mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH5F_A_scale ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for A production in association with b quarks from mu scale variations (5FS, in pb)

Definition at line 308 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_A_scale().

308 { return xsec(kUP ? "bb5F->A::scaleUp" : "bb5F->A::scaleDown", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH5F_H ( double  mA,
double  tanb 
)
inline

get cross section for production of H in association with b quarks (5FS) (in pb)

Definition at line 276 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_H(), and bbHSantander_H_pdfas().

276 { return xsec("bb5F->H", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH5F_h ( double  mA,
double  tanb 
)
inline

get cross section for production of h in association with b quarks (5FS) (in pb)

Definition at line 278 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_h(), and bbHSantander_h_pdfas().

278 { return xsec("bb5F->h", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH5F_H_pdfas ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for H production in association with b quarks from variations of pdfs and alphas (same for 4FS and 5FS, in pb)

Definition at line 322 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_H_pdfas().

322 { return xsec((kUP ? "bb5F->H::pdfasUp" : "bb5F->H::pdfasDown"), mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH5F_h_pdfas ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for h production in association with b quarks from variations of pdfs and alphas (same for 4FS and 5FS, in pb)

Definition at line 324 of file mssm_xs_tools.h.

References bbHSantander_A_pdfas(), bbHSantander_A_scale(), bbHSantander_H_pdfas(), bbHSantander_h_pdfas(), bbHSantander_H_scale(), bbHSantander_h_scale(), br(), br_rule(), mass_rule(), setup(), width_rule(), xsec(), and xsec_rule().

Referenced by bbHSantander_h_pdfas().

324 { return xsec((kUP ? "bb5F->h::pdfasUp" : "bb5F->h::pdfasDown"), mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH5F_H_scale ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for H production in association with b quarks from mu scale variations (5FS, in pb)

Definition at line 310 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_H_scale().

310 { return xsec(kUP ? "bb5F->H::scaleUp" : "bb5F->H::scaleDown", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbH5F_h_scale ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for h production in association with b quarks from mu scale variations (5FS, in pb)

Definition at line 312 of file mssm_xs_tools.h.

References xsec().

Referenced by bbHSantander_h_scale().

312 { return xsec(kUP ? "bb5F->h::scaleUp" : "bb5F->h::scaleDown", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::bbHSantander_A ( double  mA,
double  tanb 
)
inline

get cross section for production of A in association with b quarks (using Santander matching scheme) (in pb)

Definition at line 423 of file mssm_xs_tools.h.

References bbH4F_A(), and bbH5F_A().

Referenced by bbH4F_h(), bbHSantander_A_pdfas(), read(), and XSecToTanBeta().

423  {
424  double t=log(mA/4.92)-2.;
425  double fourflav=this->bbH4F_A(mA,tanb);
426  double fiveflav=this->bbH5F_A(mA,tanb);
427  return (1./(1.+t))*(fourflav+t*fiveflav);
428 }
double bbH5F_A(double mA, double tanb)
get cross section for production of A in association with b quarks (5FS) (in pb)
double bbH4F_A(double mA, double tanb)
get cross section for production of A in association with b quarks (4FS) (in pb)
double mssm_xs_tools::bbHSantander_A_pdfas ( double  mA,
double  tanb,
const bool  kUP 
)

get uncertainties for A production in association with b quarks from pdf+alphas variations (Santander matching scheme, in pb)

Definition at line 471 of file mssm_xs_tools.h.

References bbH5F_A(), bbH5F_A_pdfas(), and bbHSantander_A().

Referenced by bbH5F_h_pdfas(), and read().

471  {
472  return bbH5F_A_pdfas(mA, tanb, kUP)/bbH5F_A(mA, tanb) * bbHSantander_A(mA, tanb);
473 }
double bbHSantander_A(double mA, double tanb)
get cross section for production of A in association with b quarks (using Santander matching scheme) ...
double bbH5F_A_pdfas(double mA, double tanb, const bool kUP)
get uncertainties for A production in association with b quarks from variations of pdfs and alphas (s...
double bbH5F_A(double mA, double tanb)
get cross section for production of A in association with b quarks (5FS) (in pb)
double mssm_xs_tools::bbHSantander_A_scale ( double  mA,
double  tanb,
const bool  kUP 
)

get uncertainties for A production in association with b quarks from mu variations (Santander matching scheme, in pb)

Definition at line 447 of file mssm_xs_tools.h.

References bbH4F_A_scale(), and bbH5F_A_scale().

Referenced by bbH5F_h_pdfas(), and read().

447  {
448  double t=log(mA/4.92)-2.;
449  double unc4F=this->bbH4F_A_scale(mA, tanb, kUP);
450  double unc5F=this->bbH5F_A_scale(mA, tanb, kUP);
451  return 1./(1+t)*(unc4F+(t*unc5F));
452 }
double bbH4F_A_scale(double mA, double tanb, const bool kUP)
get uncertainties for A production in association with b quarks from mu scale variations (4FS...
double bbH5F_A_scale(double mA, double tanb, const bool kUP)
get uncertainties for A production in association with b quarks from mu scale variations (5FS...
double mssm_xs_tools::bbHSantander_H ( double  mA,
double  tanb 
)
inline

get cross section for production of H in association with b quarks (using Santander matching scheme) (in pb)

Definition at line 431 of file mssm_xs_tools.h.

References bbH4F_H(), bbH5F_H(), and mH().

Referenced by bbH4F_h(), bbHSantander_H_pdfas(), read(), and XSecToTanBeta().

431  {
432  double t=log(this->mH(mA,tanb)/4.92)-2.;
433  double fourflav=this->bbH4F_H(mA,tanb);
434  double fiveflav=this->bbH5F_H(mA,tanb);
435  return (1./(1.+t))*(fourflav+t*fiveflav);
436 }
double bbH5F_H(double mA, double tanb)
get cross section for production of H in association with b quarks (5FS) (in pb)
double bbH4F_H(double mA, double tanb)
get cross section for production of H in association with b quarks (4FS) (in pb)
double mH(double mA, double tanb)
get mH for given value of mA and tanb (in GeV)
Definition: mssm_xs_tools.h:96
double mssm_xs_tools::bbHSantander_h ( double  mA,
double  tanb 
)
inline

get cross section for production of h in association with b quarks (using Santander matching scheme) (in pb)

Definition at line 439 of file mssm_xs_tools.h.

References bbH4F_h(), bbH5F_h(), and mh().

Referenced by bbH4F_h(), bbHSantander_h_pdfas(), and read().

439  {
440  double t=log(this->mh(mA,tanb)/4.92)-2.;
441  double fourflav=this->bbH4F_h(mA,tanb);
442  double fiveflav=this->bbH5F_h(mA,tanb);
443  return (1./(1.+t))*(fourflav+t*fiveflav);
444 }
double mh(double mA, double tanb)
get mh for given value of mA and tanb (in GeV)
Definition: mssm_xs_tools.h:98
double bbH5F_h(double mA, double tanb)
get cross section for production of h in association with b quarks (5FS) (in pb)
double bbH4F_h(double mA, double tanb)
get cross section for production of h in association with b quarks (4FS) (in pb)
double mssm_xs_tools::bbHSantander_H_pdfas ( double  mA,
double  tanb,
const bool  kUP 
)

get uncertainties for H production in association with b quarks from pdf+alphas variations (Santander matching scheme, in pb)

Definition at line 476 of file mssm_xs_tools.h.

References bbH5F_H(), bbH5F_H_pdfas(), and bbHSantander_H().

Referenced by bbH5F_h_pdfas(), and read().

476  {
477  return bbH5F_H_pdfas(mA, tanb, kUP)/bbH5F_H(mA, tanb) * bbHSantander_H(mA, tanb);
478 }
double bbHSantander_H(double mA, double tanb)
get cross section for production of H in association with b quarks (using Santander matching scheme) ...
double bbH5F_H_pdfas(double mA, double tanb, const bool kUP)
get uncertainties for H production in association with b quarks from variations of pdfs and alphas (s...
double bbH5F_H(double mA, double tanb)
get cross section for production of H in association with b quarks (5FS) (in pb)
double mssm_xs_tools::bbHSantander_h_pdfas ( double  mA,
double  tanb,
const bool  kUP 
)

get uncertainties for h production in association with b quarks from pdf+alphas variations (Santander matching scheme, in pb)

Definition at line 481 of file mssm_xs_tools.h.

References bbH5F_h(), bbH5F_h_pdfas(), and bbHSantander_h().

Referenced by bbH5F_h_pdfas(), and read().

481  {
482  return bbH5F_h_pdfas(mA, tanb, kUP)/bbH5F_h(mA, tanb) * bbHSantander_h(mA, tanb);
483 }
double bbH5F_h_pdfas(double mA, double tanb, const bool kUP)
get uncertainties for h production in association with b quarks from variations of pdfs and alphas (s...
double bbHSantander_h(double mA, double tanb)
get cross section for production of h in association with b quarks (using Santander matching scheme) ...
double bbH5F_h(double mA, double tanb)
get cross section for production of h in association with b quarks (5FS) (in pb)
double mssm_xs_tools::bbHSantander_H_scale ( double  mA,
double  tanb,
const bool  kUP 
)

get uncertainties for H production in association with b quarks from mu variations (Santander matching scheme, in pb)

Definition at line 455 of file mssm_xs_tools.h.

References bbH4F_H_scale(), bbH5F_H_scale(), and mH().

Referenced by bbH5F_h_pdfas(), and read().

455  {
456  double t=log(this->mH(mA, tanb)/4.92)-2.;
457  double unc4F=this->bbH4F_H_scale(mA, tanb, kUP);
458  double unc5F=this->bbH5F_H_scale(mA, tanb, kUP);
459  return 1./(1+t)*(unc4F+(t*unc5F));
460 }
double bbH4F_H_scale(double mA, double tanb, const bool kUP)
get uncertainties for H production in association with b quarks from mu scale variations (4FS...
double bbH5F_H_scale(double mA, double tanb, const bool kUP)
get uncertainties for H production in association with b quarks from mu scale variations (5FS...
double mH(double mA, double tanb)
get mH for given value of mA and tanb (in GeV)
Definition: mssm_xs_tools.h:96
double mssm_xs_tools::bbHSantander_h_scale ( double  mA,
double  tanb,
const bool  kUP 
)

get uncertainties for h production in association with b quarks from mu variations (Santander matching scheme, in pb)

Definition at line 463 of file mssm_xs_tools.h.

References bbH4F_h_scale(), bbH5F_h_scale(), and mh().

Referenced by bbH5F_h_pdfas(), and read().

463  {
464  double t=log(this->mh(mA, tanb)/4.92)-2.;
465  double unc4F=this->bbH4F_h_scale(mA, tanb, kUP);
466  double unc5F=this->bbH5F_h_scale(mA, tanb, kUP);
467  return 1./(1+t)*(unc4F+(t*unc5F));
468 }
double bbH4F_h_scale(double mA, double tanb, const bool kUP)
get uncertainties for h production in association with b quarks from mu scale variations (4FS...
double mh(double mA, double tanb)
get mh for given value of mA and tanb (in GeV)
Definition: mssm_xs_tools.h:98
double bbH5F_h_scale(double mA, double tanb, const bool kUP)
get uncertainties for h production in association with b quarks from mu scale variations (5FS...
double mssm_xs_tools::br ( const char *  decay,
double  mA,
double  tanb 
)
inline

get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb

Definition at line 88 of file mssm_xs_tools.h.

References br_rule(), and read().

Referenced by bbH5F_h_pdfas(), br_Abb(), br_Acc(), br_Add(), br_Aee(), br_Agammagamma(), br_Agg(), br_Amumu(), br_Ass(), br_ASUSY(), br_Atautau(), br_Att(), br_Auu(), br_AWW(), br_AZgamma(), br_AZh(), br_AZZ(), br_Hbb(), br_hbb(), br_Hcc(), br_hcc(), br_Hdd(), br_hdd(), br_Hee(), br_hee(), br_Hgammagamma(), br_hgammagamma(), br_Hgg(), br_hgg(), br_Hhh(), br_Hmumu(), br_hmumu(), br_Hpcbb(), br_Hpcdb(), br_Hpcsb(), br_Hpenu(), br_HpHHW(), br_Hpmunu(), br_HpSUSY(), br_Hptaunu(), br_Hptbb(), br_Hptdb(), br_Hptsb(), br_Hpubb(), br_Hpudb(), br_Hpusb(), br_HpWA(), br_HpWh(), br_Hss(), br_hss(), br_HSUSY(), br_hSUSY(), br_Htautau(), br_htautau(), br_Htt(), br_htt(), br_Huu(), br_huu(), br_HWW(), br_hWW(), br_HZgamma(), br_hZgamma(), br_HZZ(), br_hZZ(), br_tHpb(), and mssm_xs_tools_br().

88 { return read(decay, mA, tanb, &mssm_xs_tools::br_rule); }
std::string br_rule(const char *br)
rule to determine histogram names related to branching fractions in the input file ...
double read(const char *key, double mA, double tanb, std::string(mssm_xs_tools::*rule)(const char *key))
double mssm_xs_tools::br_Abb ( double  mA,
double  tanb 
)
inline

get BR(A->bb) for given value of mA and tanb

Definition at line 130 of file mssm_xs_tools.h.

References br().

Referenced by XSecToTanBeta().

130 { return br("A->bb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Acc ( double  mA,
double  tanb 
)
inline

get BR(A->cc) for given value of mA and tanb

Definition at line 136 of file mssm_xs_tools.h.

References br().

136 { return br("A->cc", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Add ( double  mA,
double  tanb 
)
inline

get BR(A->dd) for given value of mA and tanb

Definition at line 154 of file mssm_xs_tools.h.

References br().

154 { return br("A->dd", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Aee ( double  mA,
double  tanb 
)
inline

get BR(A->ee) for given value of mA and tanb

Definition at line 196 of file mssm_xs_tools.h.

References br().

196 { return br("A->ee", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Agammagamma ( double  mA,
double  tanb 
)
inline

get BR(A->gammagamma) for given value of mA and tanb

Definition at line 236 of file mssm_xs_tools.h.

References br().

236 { return br("A->gamgam", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Agg ( double  mA,
double  tanb 
)
inline

get BR(A->gg) for given value of mA and tanb

Definition at line 224 of file mssm_xs_tools.h.

References br().

224 { return br("A->gluglu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Amumu ( double  mA,
double  tanb 
)
inline

get BR(A->mumu) for given value of mA and tanb

Definition at line 190 of file mssm_xs_tools.h.

References br().

190 { return br("A->mumu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Ass ( double  mA,
double  tanb 
)
inline

get BR(A->ss) for given value of mA and tanb

Definition at line 142 of file mssm_xs_tools.h.

References br().

142 { return br("A->ss", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_ASUSY ( double  mA,
double  tanb 
)
inline

get BR(A->SUSY) for given value of mA and tanb

Definition at line 256 of file mssm_xs_tools.h.

References br().

256 { return br("A->SUSY", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Atautau ( double  mA,
double  tanb 
)
inline

get BR(A->tautau) for given value of mA and tanb

Definition at line 184 of file mssm_xs_tools.h.

References br().

184 { return br("A->tautau", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Att ( double  mA,
double  tanb 
)
inline

get BR(A->tt) for given value of mA and tanb

Definition at line 124 of file mssm_xs_tools.h.

References br().

124 { return br("A->tt", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Auu ( double  mA,
double  tanb 
)
inline

get BR(A->uu) for given value of mA and tanb

Definition at line 148 of file mssm_xs_tools.h.

References br().

148 { return br("A->uu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_AWW ( double  mA,
double  tanb 
)
inline

get BR(A->WW) for given value of mA and tanb

Definition at line 212 of file mssm_xs_tools.h.

References br().

212 { return br("A->WW", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_AZgamma ( double  mA,
double  tanb 
)
inline

get BR(A->Zgamma) for given value of mA and tanb

Definition at line 230 of file mssm_xs_tools.h.

References br().

230 { return br("A->Zgam", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_AZh ( double  mA,
double  tanb 
)
inline

get BR(A->Zh) for given value of mA and tanb

Definition at line 248 of file mssm_xs_tools.h.

References br().

248 { return br("A->Zh", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_AZZ ( double  mA,
double  tanb 
)
inline

get BR(A->ZZ) for given value of mA and tanb

Definition at line 218 of file mssm_xs_tools.h.

References br().

218 { return br("A->ZZ", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hbb ( double  mA,
double  tanb 
)
inline

get BR(H->bb) for given value of mA and tanb

Definition at line 132 of file mssm_xs_tools.h.

References br().

Referenced by XSecToTanBeta().

132 { return br("H->bb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hbb ( double  mA,
double  tanb 
)
inline

get BR(h->bb) for given value of mA and tanb

Definition at line 134 of file mssm_xs_tools.h.

References br().

134 { return br("h->bb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hcc ( double  mA,
double  tanb 
)
inline

get BR(H->cc) for given value of mA and tanb

Definition at line 138 of file mssm_xs_tools.h.

References br().

138 { return br("H->cc", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hcc ( double  mA,
double  tanb 
)
inline

get BR(h->cc) for given value of mA and tanb

Definition at line 140 of file mssm_xs_tools.h.

References br().

140 { return br("h->cc", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hdd ( double  mA,
double  tanb 
)
inline

get BR(H->dd) for given value of mA and tanb

Definition at line 156 of file mssm_xs_tools.h.

References br().

156 { return br("H->dd", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hdd ( double  mA,
double  tanb 
)
inline

get BR(h->dd) for given value of mA and tanb

Definition at line 158 of file mssm_xs_tools.h.

References br().

158 { return br("h->dd", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hee ( double  mA,
double  tanb 
)
inline

get BR(H->ee) for given value of mA and tanb

Definition at line 198 of file mssm_xs_tools.h.

References br().

198 { return br("H->ee", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hee ( double  mA,
double  tanb 
)
inline

get BR(h->ee) for given value of mA and tanb

Definition at line 200 of file mssm_xs_tools.h.

References br().

200 { return br("h->ee", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hgammagamma ( double  mA,
double  tanb 
)
inline

get BR(H->gammagamma) for given value of mA and tanb

Definition at line 238 of file mssm_xs_tools.h.

References br().

238 { return br("H->gamgam", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hgammagamma ( double  mA,
double  tanb 
)
inline

get BR(h->gammagamma) for given value of mA and tanb

Definition at line 240 of file mssm_xs_tools.h.

References br().

240 { return br("h->gamgam", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hgg ( double  mA,
double  tanb 
)
inline

get BR(H->gg) for given value of mA and tanb

Definition at line 226 of file mssm_xs_tools.h.

References br().

226 { return br("H->gluglu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hgg ( double  mA,
double  tanb 
)
inline

get BR(h->gg) for given value of mA and tanb

Definition at line 228 of file mssm_xs_tools.h.

References br().

228 { return br("h->gluglu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hhh ( double  mA,
double  tanb 
)
inline

get BR(H->hh) for given value of mA and tanb

Definition at line 246 of file mssm_xs_tools.h.

References br().

246 { return br("H->hh", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hmumu ( double  mA,
double  tanb 
)
inline

get BR(H->tautau) for given value of mA and tanb

Definition at line 192 of file mssm_xs_tools.h.

References br().

192 { return br("H->mumu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hmumu ( double  mA,
double  tanb 
)
inline

get BR(h->mumu) for given value of mA and tanb

Definition at line 194 of file mssm_xs_tools.h.

References br().

194 { return br("h->mumu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hpcbb ( double  mA,
double  tanb 
)
inline

get BR(H+->cbb) for given value of mA and tanb

Definition at line 168 of file mssm_xs_tools.h.

References br().

168 { return br("Hp->cbb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hpcdb ( double  mA,
double  tanb 
)
inline

get BR(H+->cdb) for given value of mA and tanb

Definition at line 172 of file mssm_xs_tools.h.

References br().

172 { return br("Hp->cdb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hpcsb ( double  mA,
double  tanb 
)
inline

get BR(H+->csb) for given value of mA and tanb

Definition at line 170 of file mssm_xs_tools.h.

References br().

170 { return br("Hp->csb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hpenu ( double  mA,
double  tanb 
)
inline

get BR(H+->enu) for given value of mA and tanb

Definition at line 206 of file mssm_xs_tools.h.

References br().

206 { return br("Hp->enu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_HpHHW ( double  mA,
double  tanb 
)
inline

get BR(H+->HHA) for given value of mA and tanb

Definition at line 254 of file mssm_xs_tools.h.

References br().

254 { return br("Hp->HHW", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hpmunu ( double  mA,
double  tanb 
)
inline

get BR(H+->munu) for given value of mA and tanb

Definition at line 204 of file mssm_xs_tools.h.

References br().

204 { return br("Hp->munu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_HpSUSY ( double  mA,
double  tanb 
)
inline

get BR(H+->SUSY) for given value of mA and tanb

Definition at line 262 of file mssm_xs_tools.h.

References br().

262 { return br("Hp->SUSY", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hptaunu ( double  mA,
double  tanb 
)
inline

get BR(H+->taunu) for given value of mA and tanb

Definition at line 202 of file mssm_xs_tools.h.

References br().

202 { return br("Hp->taunu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hptbb ( double  mA,
double  tanb 
)
inline

get BR(H+->tbb) for given value of mA and tanb

Definition at line 162 of file mssm_xs_tools.h.

References br().

162 { return br("Hp->tbb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hptdb ( double  mA,
double  tanb 
)
inline

get BR(H+->tdb) for given value of mA and tanb

Definition at line 166 of file mssm_xs_tools.h.

References br().

166 { return br("Hp->tdb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hptsb ( double  mA,
double  tanb 
)
inline

get BR(H+->tsb) for given value of mA and tanb

Definition at line 164 of file mssm_xs_tools.h.

References br().

164 { return br("Hp->tsb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hpubb ( double  mA,
double  tanb 
)
inline

get BR(H+->ubb) for given value of mA and tanb

Definition at line 174 of file mssm_xs_tools.h.

References br().

174 { return br("Hp->ubb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hpudb ( double  mA,
double  tanb 
)
inline

get BR(H+->udb) for given value of mA and tanb

Definition at line 178 of file mssm_xs_tools.h.

References br().

178 { return br("Hp->udb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hpusb ( double  mA,
double  tanb 
)
inline

get BR(H+->usb) for given value of mA and tanb

Definition at line 176 of file mssm_xs_tools.h.

References br().

176 { return br("Hp->usb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_HpWA ( double  mA,
double  tanb 
)
inline

get BR(H+->WA) for given value of mA and tanb

Definition at line 252 of file mssm_xs_tools.h.

References br().

252 { return br("Hp->AW", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_HpWh ( double  mA,
double  tanb 
)
inline

get BR(H+->Wh) for given value of mA and tanb

Definition at line 250 of file mssm_xs_tools.h.

References br().

250 { return br("Hp->hW", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Hss ( double  mA,
double  tanb 
)
inline

get BR(H->ss) for given value of mA and tanb

Definition at line 144 of file mssm_xs_tools.h.

References br().

144 { return br("H->ss", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hss ( double  mA,
double  tanb 
)
inline

get BR(h->ss) for given value of mA and tanb

Definition at line 146 of file mssm_xs_tools.h.

References br().

146 { return br("h->ss", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_HSUSY ( double  mA,
double  tanb 
)
inline

get BR(H->SUSY) for given value of mA and tanb

Definition at line 258 of file mssm_xs_tools.h.

References br().

258 { return br("H->SUSY", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hSUSY ( double  mA,
double  tanb 
)
inline

get BR(h->SUSY) for given value of mA and tanb

Definition at line 260 of file mssm_xs_tools.h.

References br().

260 { return br("h->SUSY", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Htautau ( double  mA,
double  tanb 
)
inline

get BR(H->tautau) for given value of mA and tanb

Definition at line 186 of file mssm_xs_tools.h.

References br().

186 { return br("H->tautau", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_htautau ( double  mA,
double  tanb 
)
inline

get BR(h->tautau) for given value of mA and tanb

Definition at line 188 of file mssm_xs_tools.h.

References br().

188 { return br("h->tautau", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Htt ( double  mA,
double  tanb 
)
inline

get BR(H->tt) for given value of mA and tanb

Definition at line 126 of file mssm_xs_tools.h.

References br().

126 { return br("H->tt", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_htt ( double  mA,
double  tanb 
)
inline

get BR(h->tt) for given value of mA and tanb

Definition at line 128 of file mssm_xs_tools.h.

References br().

128 { return br("h->tt", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_Huu ( double  mA,
double  tanb 
)
inline

get BR(H->uu) for given value of mA and tanb

Definition at line 150 of file mssm_xs_tools.h.

References br().

150 { return br("H->uu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_huu ( double  mA,
double  tanb 
)
inline

get BR(h->uu) for given value of mA and tanb

Definition at line 152 of file mssm_xs_tools.h.

References br().

152 { return br("h->uu", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_HWW ( double  mA,
double  tanb 
)
inline

get BR(H->WW) for given value of mA and tanb

Definition at line 214 of file mssm_xs_tools.h.

References br().

214 { return br("H->WW", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hWW ( double  mA,
double  tanb 
)
inline

get BR(h->WW) for given value of mA and tanb

Definition at line 216 of file mssm_xs_tools.h.

References br().

216 { return br("h->WW", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_HZgamma ( double  mA,
double  tanb 
)
inline

get BR(H->gammagamma) for given value of mA and tanb

Definition at line 232 of file mssm_xs_tools.h.

References br().

232 { return br("H->Zgam", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hZgamma ( double  mA,
double  tanb 
)
inline

get BR(h->Zgamma) for given value of mA and tanb

Definition at line 234 of file mssm_xs_tools.h.

References br().

234 { return br("h->Zgamm", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_HZZ ( double  mA,
double  tanb 
)
inline

get BR(H->ZZ) for given value of mA and tanb

Definition at line 220 of file mssm_xs_tools.h.

References br().

220 { return br("H->ZZ", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::br_hZZ ( double  mA,
double  tanb 
)
inline

get BR(h->ZZ) for given value of mA and tanb

Definition at line 222 of file mssm_xs_tools.h.

References br().

222 { return br("h->ZZ", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
std::string mssm_xs_tools::br_rule ( const char *  br)
private

rule to determine histogram names related to branching fractions in the input file

Definition at line 40 of file mssm_xs_tools.cc.

References nano_94X_2017_rereco31Mar18-v1::name, and ConfFile_cfg::source.

Referenced by bbH5F_h_pdfas(), and br().

40  {
41  /* ______________________________________________________________________________________________
42  * Function argument [decay] expected to be of special form (e.g. "A->tautau"). Search for
43  * deliminator "->" required to be present in [decay]. Split argument: first block corresponds to
44  * building block [BOSON], second block to building block [DECAY]. Prefix histogram name with
45  * "br", append [BOSON], append [DECAY], separated by "_" (histogram name in example above:
46  * "br_A_tautau").
47  */
48  std::string name;
49  std::string source(decay);
50  if(source.find("->")!=std::string::npos){
51  name = std::string("br")+"_"+source.substr(0, source.find("->"))+"_"+source.substr(source.find("->")+2);
52  }
53  return name;
54 }
double mssm_xs_tools::br_tHpb ( double  mA,
double  tanb 
)
inline

get BR(t->H+b) for given value of mA and tanb

Definition at line 160 of file mssm_xs_tools.h.

References br().

160 { return br("t->Hpb", mA, tanb); }
double br(const char *decay, double mA, double tanb)
get branching fraction for a given decay of a given Higgs boson for given values of mA and tanb ...
Definition: mssm_xs_tools.h:88
double mssm_xs_tools::ggH_A ( double  mA,
double  tanb 
)
inline

get cross section for production of A in gluon-gluon fusion (in pb)

Definition at line 268 of file mssm_xs_tools.h.

References xsec().

268 { return xsec("gg->A", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::ggH_A_pdfas ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for gluon-gluon fusion production of A from variations of pdfs and alphas (in pb)

Definition at line 302 of file mssm_xs_tools.h.

References xsec().

302 { return xsec((kUP ? "gg->A::pdfasUp" : "gg->A::pdfasDown"), mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::ggH_A_scale ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for gluon-gluon fusion production of A from mu scale variations (in pb)

Definition at line 296 of file mssm_xs_tools.h.

References xsec().

296 { return xsec(kUP ? "gg->A::scaleUp" : "gg->A::scaleDown", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::ggH_H ( double  mA,
double  tanb 
)
inline

get cross section for production of H in gluon-gluon fusion (in pb)

Definition at line 270 of file mssm_xs_tools.h.

References xsec().

270 { return xsec("gg->H", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::ggH_h ( double  mA,
double  tanb 
)
inline

get cross section for production of h in gluon-gluon fusion (in pb)

Definition at line 272 of file mssm_xs_tools.h.

References xsec().

272 { return xsec("gg->h", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::ggH_H_pdfas ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for gluon-gluon fusion production of H from variations of pdfs and alphas (in pb)

Definition at line 304 of file mssm_xs_tools.h.

References xsec().

304 { return xsec((kUP ? "gg->H::pdfasUp" : "gg->H::pdfasDown"), mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::ggH_h_pdfas ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for gluon-gluon fusion production of h from variations of pdfs and alphas (in pb)

Definition at line 306 of file mssm_xs_tools.h.

References xsec().

306 { return xsec((kUP ? "gg->h::pdfasUp" : "gg->h::pdfasDown"), mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::ggH_H_scale ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for gluon-gluon fusion production of H from mu scale variations (in pb)

Definition at line 298 of file mssm_xs_tools.h.

References xsec().

298 { return xsec(kUP ? "gg->H::scaleUp" : "gg->H::scaleDown", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
double mssm_xs_tools::ggH_h_scale ( double  mA,
double  tanb,
const bool  kUP 
)
inline

get uncertainties for gluon-gluon fusion production of h from mu scale variations (in pb)

Definition at line 300 of file mssm_xs_tools.h.

References xsec().

300 { return xsec(kUP ? "gg->h::scaleUp" : "gg->h::scaleDown", mA, tanb); }
double xsec(const char *mode, double mA, double tanb)
get production cross section for a given production model of a given Higgs boson for given values of ...
Definition: mssm_xs_tools.h:90
TH2F * mssm_xs_tools::hist ( std::string  name)

a save way to access a histogram from the stack; returns NULL if histogram does not exist on stack

Definition at line 98 of file mssm_xs_tools.cc.

References hists_, input_, nbinsX_, nbinsY_, and verbosity_.

Referenced by read(), and ~mssm_xs_tools().

98  {
99  /* ______________________________________________________________________________________________
100  * Check if a histogram with name [histname] is already on stack. If so return historam. If not
101  * try to get a histogram with name [histname] from the input file, cast to TH2F*; add histogram
102  * on stack with key [histogramname]. If getting the histogram from the input file was not
103  * successful issue a WARNING and return a NULL pointer. For verbosity_>2 issue MESSAGE that a
104  * histogram with name [histname] has been read from the input file upon successful completion.
105  * Save histogram on stack for future use. Return pointer to histogram.
106  */
107  if(hists_.find(histname) == hists_.end()){
108  // hist not on stack; read from file; if it fails return NULL.
109  hists_[std::string(histname)] = (TH2F*) input_->Get(histname.c_str());
110  //std::cout << "* " << hists_[std::string(histname)]->GetName() << std::endl;
111  if(!hists_.find(histname)->second){
112  std::cout << "WARNING: required histogram "
113  << "[" << histname << "] "
114  << "does not exist in input file "
115  << "[" << input_->GetName() << "]"
116  << std::endl
117  << " "
118  << "return NULL..."
119  << std::endl;
120  return NULL;
121  }
122  else{
123  // cash maximal number of bins on x- (mA) and y- (tanb) axis of TH2F,
124  // used to define the boundaries of the histogram when running in
125  // interpolation mode
126  nbinsX_ = hists_.find(histname)->second->GetXaxis()->GetNbins();
127  nbinsY_ = hists_.find(histname)->second->GetYaxis()->GetNbins();
128  if(verbosity_>2){
129  std::cout << "MESSAGE: read histogram "
130  << "[" << histname << "] "
131  << "from input file "
132  << "[" << input_->GetName() << "]"
133  << std::endl;
134  }
135  }
136  }
137  return hists_.find(histname)->second;
138 }
std::map< std::string, TH2F * > hists_
histogram container (filled in constructor)
TFile * input_
root input file (opened in constructor)
unsigned verbosity_
verbosity level
double mssm_xs_tools::mass ( const char *  boson,
double  mA,
double  tanb 
)
inline

get mass of a given Higgs boson for given values of mA and tanb (in GeV)

Definition at line 84 of file mssm_xs_tools.h.

References mass_rule(), and read().

Referenced by mH(), mh(), mHp(), mssm_xs_tools_mass(), and mu2mA().

84 { return read(boson, mA, tanb, &mssm_xs_tools::mass_rule); }
std::string mass_rule(const char *b)
rule to determine histogram names related to masses in the input file
double read(const char *key, double mA, double tanb, std::string(mssm_xs_tools::*rule)(const char *key))
std::string mssm_xs_tools::mass_rule ( const char *  b)
private

rule to determine histogram names related to masses in the input file

Definition at line 88 of file mssm_xs_tools.cc.

Referenced by bbH5F_h_pdfas(), and mass().

88  {
89  /* ______________________________________________________________________________________________
90  * Function agrument [boson] expected to be of special form (e.g. "H"). Function argument corres-
91  * ponds to building block [BOSON] of histogram name. Prefix histogram name with "m", append
92  * [BOSON], seperated by "_" (histgoram name in example above: "m_H");
93  */
94  return std::string("m")+"_"+std::string(boson);
95 }
double mssm_xs_tools::mH ( double  mA,
double  tanb 
)
inline

get mH for given value of mA and tanb (in GeV)

Definition at line 96 of file mssm_xs_tools.h.

References mass().

Referenced by bbHSantander_H(), and bbHSantander_H_scale().

96 { return mass("H", mA, tanb); }
double mass(const char *boson, double mA, double tanb)
get mass of a given Higgs boson for given values of mA and tanb (in GeV)
Definition: mssm_xs_tools.h:84
double mssm_xs_tools::mh ( double  mA,
double  tanb 
)
inline

get mh for given value of mA and tanb (in GeV)

Definition at line 98 of file mssm_xs_tools.h.

References mass().

Referenced by bbHSantander_h(), and bbHSantander_h_scale().

98 { return mass("h", mA, tanb); }
double mass(const char *boson, double mA, double tanb)
get mass of a given Higgs boson for given values of mA and tanb (in GeV)
Definition: mssm_xs_tools.h:84
double mssm_xs_tools::mHp ( double  mA,
double  tanb 
)
inline

get mH+ for given value of mA and tanb (in GeV)

Definition at line 100 of file mssm_xs_tools.h.

References mass().

100 { return mass("Hp", mA, tanb); }
double mass(const char *boson, double mA, double tanb)
get mass of a given Higgs boson for given values of mA and tanb (in GeV)
Definition: mssm_xs_tools.h:84
double mssm_xs_tools::mu2mA ( double  mu,
double  tanb 
)
inline

get mA for given value of mu in low-mH scenario (need a more complex name name of the member function here not to shadow it by the function arg in GeV)

Definition at line 104 of file mssm_xs_tools.h.

References mass().

104 { return mass("A", mu, tanb); }
double mass(const char *boson, double mA, double tanb)
get mass of a given Higgs boson for given values of mA and tanb (in GeV)
Definition: mssm_xs_tools.h:84
double mssm_xs_tools::read ( const char *  key,
double  mA,
double  tanb,
std::string(mssm_xs_tools::*)(const char *key)  rule 
)
inlineprivate

a common function to return histograms from the input file. Apart from mA and tanb it takes an identification string for the object in the input file [key] and a conversion rule to transform this string into the histogram name [rule]. The conversion rule is a pointer-to-member-function. The conversion rules are provided as private member functions of the class. The function "read" will determine the histogram name from the rule, determine the bin containing mA and tanb and return the bin content. Alternatiely it returns a bilinear interpolation corresponding to the values mA and tanb, if kINTERPOL_ has been set to true during the instantiation of the class.

Definition at line 356 of file mssm_xs_tools.h.

References bbHSantander_A(), bbHSantander_A_pdfas(), bbHSantander_A_scale(), bbHSantander_H(), bbHSantander_h(), bbHSantander_H_pdfas(), bbHSantander_h_pdfas(), bbHSantander_H_scale(), bbHSantander_h_scale(), hist(), kINTERPOL_, nbinsX_, and nbinsY_.

Referenced by br(), mass(), width(), and xsec().

356  {
357  std::string name = (this->*rule)(key);
358  if(name.find("Santander")!=std::string::npos){
359  if(name.find("_h")!=std::string::npos){
360  if(name.find( "scaleDown" )!=std::string::npos){return bbHSantander_h_scale(mA, tanb, false);} else
361  if(name.find( "scaleUp" )!=std::string::npos){return bbHSantander_h_scale(mA, tanb, true );} else
362  if(name.find( "pdfasDown" )!=std::string::npos){return bbHSantander_h_pdfas(mA, tanb, false);} else
363  if(name.find( "pdfasUp" )!=std::string::npos){return bbHSantander_h_pdfas(mA, tanb, true );}
364  else{
365  return bbHSantander_h(mA, tanb);
366  }
367  } else
368  if(name.find("_H")!=std::string::npos){
369  if(name.find( "scaleDown" )!=std::string::npos){return bbHSantander_H_scale(mA, tanb, false);} else
370  if(name.find( "scaleUp" )!=std::string::npos){return bbHSantander_H_scale(mA, tanb, true );} else
371  if(name.find( "pdfasDown" )!=std::string::npos){return bbHSantander_H_pdfas(mA, tanb, false);} else
372  if(name.find( "pdfasUp" )!=std::string::npos){return bbHSantander_H_pdfas(mA, tanb, true );}
373  else{
374  return bbHSantander_H(mA, tanb);
375  }
376  } else
377  if(name.find("_A")!=std::string::npos){
378  if(name.find( "scaleDown" )!=std::string::npos){return bbHSantander_A_scale(mA, tanb, false);} else
379  if(name.find( "scaleUp" )!=std::string::npos){return bbHSantander_A_scale(mA, tanb, true );} else
380  if(name.find( "pdfasDown" )!=std::string::npos){return bbHSantander_A_pdfas(mA, tanb, false);} else
381  if(name.find( "pdfasUp" )!=std::string::npos){return bbHSantander_A_pdfas(mA, tanb, true );}
382  else{
383  return bbHSantander_A(mA, tanb);
384  }
385  }
386  else{
387  return -1;
388  }
389  }
390  else {
391  if(kINTERPOL_){
392  // restrict interplolation to boundaries of histogram, at the boundaries fall back to plain bin
393  // content
394  if(hist(name)->GetXaxis()->FindBin(mA )<nbinsX_-1 && hist(name)->GetYaxis()->FindBin(tanb)<nbinsY_-1){
395  return hist(name) ? hist(name)->Interpolate(mA,tanb) : -1.;
396  }
397  else{
398  return hist(name) ? hist(name)->GetBinContent(hist(name)->FindBin(mA,tanb)) : -1.;
399  }
400  }
401  else{
402  return hist(name) ? hist(name)->GetBinContent(hist(name)->FindBin(mA,tanb)) : -1.;
403  }
404  }
405  }
double bbHSantander_H(double mA, double tanb)
get cross section for production of H in association with b quarks (using Santander matching scheme) ...
double bbHSantander_h(double mA, double tanb)
get cross section for production of h in association with b quarks (using Santander matching scheme) ...
double bbHSantander_H_scale(double mA, double tanb, const bool kUP)
get uncertainties for H production in association with b quarks from mu variations (Santander matchin...
double bbHSantander_A(double mA, double tanb)
get cross section for production of A in association with b quarks (using Santander matching scheme) ...
double bbHSantander_H_pdfas(double mA, double tanb, const bool kUP)
get uncertainties for H production in association with b quarks from pdf+alphas variations (Santander...
double bbHSantander_A_pdfas(double mA, double tanb, const bool kUP)
get uncertainties for A production in association with b quarks from pdf+alphas variations (Santander...
TH2F * hist(std::string name)
a save way to access a histogram from the stack; returns NULL if histogram does not exist on stack ...
double bbHSantander_A_scale(double mA, double tanb, const bool kUP)
get uncertainties for A production in association with b quarks from mu variations (Santander matchin...
double bbHSantander_h_pdfas(double mA, double tanb, const bool kUP)
get uncertainties for h production in association with b quarks from pdf+alphas variations (Santander...
double bbHSantander_h_scale(double mA, double tanb, const bool kUP)
get uncertainties for h production in association with b quarks from mu variations (Santander matchin...
bool kINTERPOL_
apply bilinear interpolation (built-in to TH2F) or get bin content, plain as it is ...
void mssm_xs_tools::setup ( const char *  filename)
private

open input file to access histograms (only needed if input file was not specified in the constructor)

Definition at line 27 of file mssm_xs_tools.cc.

References input_.

Referenced by bbH5F_h_pdfas().

27  {
28  /* ______________________________________________________________________________________________
29  * If not available, yet open input file from full path specified in [filename]. If input_ does
30  * already point to a file nothing is done. This quarantees that only one file can be opened for
31  * one instance of the class.
32  */
33  if(!input_){
34  input_ = new TFile(filename);
35  }
36  return;
37 }
TFile * input_
root input file (opened in constructor)
double mssm_xs_tools::width ( const char *  boson,
double  mA,
double  tanb 
)
inline

get totla decay width of a given Higgs boson for given values of mA and tanb (in GeV)

Definition at line 86 of file mssm_xs_tools.h.

References read(), and width_rule().

Referenced by mssm_xs_tools_width(), width_A(), width_H(), width_h(), width_Hp(), and width_tHpb().

86 { return read(boson, mA, tanb, &mssm_xs_tools::width_rule); }
std::string width_rule(const char *b)
rule to determine histogram names related to full decay widths in the input file
double read(const char *key, double mA, double tanb, std::string(mssm_xs_tools::*rule)(const char *key))
double mssm_xs_tools::width_A ( double  mA,
double  tanb 
)
inline

Definition at line 110 of file mssm_xs_tools.h.

References width().

110 { return width("A", mA, tanb); }
double width(const char *boson, double mA, double tanb)
get totla decay width of a given Higgs boson for given values of mA and tanb (in GeV) ...
Definition: mssm_xs_tools.h:86
double mssm_xs_tools::width_H ( double  mA,
double  tanb 
)
inline

Definition at line 112 of file mssm_xs_tools.h.

References width().

112 { return width("H", mA, tanb); }
double width(const char *boson, double mA, double tanb)
get totla decay width of a given Higgs boson for given values of mA and tanb (in GeV) ...
Definition: mssm_xs_tools.h:86
double mssm_xs_tools::width_h ( double  mA,
double  tanb 
)
inline

Definition at line 114 of file mssm_xs_tools.h.

References width().

114 { return width("h", mA, tanb); }
double width(const char *boson, double mA, double tanb)
get totla decay width of a given Higgs boson for given values of mA and tanb (in GeV) ...
Definition: mssm_xs_tools.h:86
double mssm_xs_tools::width_Hp ( double  mA,
double  tanb 
)
inline

Definition at line 116 of file mssm_xs_tools.h.

References width().

116 { return width("Hp", mA, tanb); }
double width(const char *boson, double mA, double tanb)
get totla decay width of a given Higgs boson for given values of mA and tanb (in GeV) ...
Definition: mssm_xs_tools.h:86
std::string mssm_xs_tools::width_rule ( const char *  b)
private

rule to determine histogram names related to full decay widths in the input file

Definition at line 57 of file mssm_xs_tools.cc.

Referenced by bbH5F_h_pdfas(), and width().

57  {
58  /* ______________________________________________________________________________________________
59  * Function agrument [boson] expected to be of special form (e.g. "H"). Function argument
60  * corresponds to building block [BOSON] of histogram name. Prefix histogram name with
61  * "width", append [BOSON], separated by "_" (histgoram name in example above: "width_H");
62  */
63  return std::string("width")+"_"+std::string(boson);
64 }
double mssm_xs_tools::width_tHpb ( double  mA,
double  tanb 
)
inline

Definition at line 118 of file mssm_xs_tools.h.

References width().

118 { return width("t_Hpb", mA, tanb); }
double width(const char *boson, double mA, double tanb)
get totla decay width of a given Higgs boson for given values of mA and tanb (in GeV) ...
Definition: mssm_xs_tools.h:86
double mssm_xs_tools::xsec ( const char *  mode,
double  mA,
double  tanb 
)
inline

get production cross section for a given production model of a given Higgs boson for given values of mA and tanb (in pb)

Definition at line 90 of file mssm_xs_tools.h.

References read(), and xsec_rule().

Referenced by bbH4F_A(), bbH4F_A_scale(), bbH4F_H(), bbH4F_h(), bbH4F_H_scale(), bbH4F_h_scale(), bbH5F_A(), bbH5F_A_pdfas(), bbH5F_A_scale(), bbH5F_H(), bbH5F_h(), bbH5F_H_pdfas(), bbH5F_h_pdfas(), bbH5F_H_scale(), bbH5F_h_scale(), ggH_A(), ggH_A_pdfas(), ggH_A_scale(), ggH_H(), ggH_h(), ggH_H_pdfas(), ggH_h_pdfas(), ggH_H_scale(), ggH_h_scale(), and mssm_xs_tools_xsec().

90 { return read(mode, mA, tanb, &mssm_xs_tools::xsec_rule); }
std::string xsec_rule(const char *xs)
rule to determine histogram names related to cross sections in the input file
double read(const char *key, double mA, double tanb, std::string(mssm_xs_tools::*rule)(const char *key))
std::string mssm_xs_tools::xsec_rule ( const char *  xs)
private

rule to determine histogram names related to cross sections in the input file

Definition at line 67 of file mssm_xs_tools.cc.

References nano_94X_2017_rereco31Mar18-v1::name, ConfFile_cfg::process, and ConfFile_cfg::source.

Referenced by bbH5F_h_pdfas(), and xsec().

67  {
68  /* ______________________________________________________________________________________________
69  * Function argument [mode] expected to be of special form (e.g. "gg->A::scaleUp"); "->" and "::"
70  * are deliminators of building blocks; "->" is required to be present, while"::" is optional.
71  * Search for deliminators "->" (required to be present) and "::" (optional) in [mode]. Split
72  * argument: first block corresponds to [PROD], second block to [BOSON], the third block (option-
73  * al) to [UNCERT]. Prefix histogram name with "xs", append [PROD], append [BOSON], append
74  * [UNCERT] if available, seperated by "_" (histogram name in example above: "xs_gg_A_scaleUp").
75  */
76  std::string source(mode);
77  std::string process = source.find("->")!=std::string::npos ? source.substr(0, source.find("->")) : std::string();
78  std::string uncert = source.find("::")!=std::string::npos ? source.substr(source.rfind("::")+2) : std::string();
79  std::string boson = source.substr(source.find("->")+2, source.rfind("::")-(source.find("->")+2));
80  std::string name;
81  if(!process.empty()){
82  name = std::string("xs")+"_"+process+"_"+boson+(uncert.empty()? uncert : std::string("_")+uncert);
83  }
84  return name;
85 }

Member Data Documentation

std::map<std::string, TH2F*> mssm_xs_tools::hists_
private

histogram container (filled in constructor)

Definition at line 413 of file mssm_xs_tools.h.

Referenced by hist().

TFile* mssm_xs_tools::input_
private

root input file (opened in constructor)

Definition at line 411 of file mssm_xs_tools.h.

Referenced by hist(), mssm_xs_tools(), and setup().

bool mssm_xs_tools::kINTERPOL_
private

apply bilinear interpolation (built-in to TH2F) or get bin content, plain as it is

Definition at line 409 of file mssm_xs_tools.h.

Referenced by read().

int mssm_xs_tools::nbinsX_
private

maximal number of bins on x-axis (mA) of TH2F (filled in function hist; used in function read in interpolation mode)

Definition at line 416 of file mssm_xs_tools.h.

Referenced by hist(), and read().

int mssm_xs_tools::nbinsY_
private

maximal number of bins on y-axis (tanb) of TH2F (filled in function hist; used in function read in interpolation mode)

Definition at line 419 of file mssm_xs_tools.h.

Referenced by hist(), and read().

unsigned mssm_xs_tools::verbosity_
private

verbosity level

Definition at line 407 of file mssm_xs_tools.h.

Referenced by hist().


The documentation for this class was generated from the following files: