JHUGen MELA  JHUGen v7.5.6, MELA v2.4.2
Matrix element calculations as used in JHUGen.
SuperMELA.h
Go to the documentation of this file.
1 #ifndef MELA_SUPERMELA_H
2 #define MELA_SUPERMELA_H
3 
4 
5 #include <string>
6 #include <fstream>
7 #include <vector>
8 #include "Mela.h"
9 #include "MELACombinePdfs.h"
10 #include "RooRealVar.h"
11 #include "RooFormulaVar.h"
12 #include "RooFFTConvPdf.h"
13 #include "TLorentzVector.h"
14 
15 
16 
17 class SuperMELA{
18 public:
19  SuperMELA(double mH=125, std::string channel="4mu", double LHCsqrts=8.);
20  ~SuperMELA();
21  void init();
22 
23  double GetSigShapeSystematic(std::string parName);
24  double GetSigShapeParameter(std::string parName);
25 
26  void SetVerbosity(bool verb=true){ verbose_=verb; }
27  void SetDecayChannel(std::string myChan);
28  void SetMH(double myMH);
29  void SetPathToCards(std::string dirToCards);
30 
31  std::pair<double, double> M4lProb(double m4l);
32  std::pair<double, double> M4lProb(std::pair<double, double> const&);
33 
34 protected:
35  void splitLine(const std::string& rawoption, std::vector<std::string>& splitoptions, char delimiter);
37  std::string& str_mean_CB,
38  std::string& str_sigma_CB,
39  std::string& str_n_CB,
40  std::string& str_alpha_CB,
41  std::string& str_n2_CB,
42  std::string& str_alpha2_CB
43  );
44  void readBkgParsFromFile(std::vector<double>& apars);
46  double& str_mean_CB_err_e,
47  double& str_mean_CB_err_m,
48  double& str_sigma_CB_err_e,
49  double& str_sigma_CB_err_m
50  );
51 
52  void calc_mZZ_range(const double mHVal, double& low_M, double& high_M);
53  bool checkChannel();
54 
55  double mHVal_;
56  double sqrts_;
57  double lowMH_, highMH_;
58  std::string strChan_;
59  int ch_;
60  bool verbose_;
61  std::string pathToCards_;
62 
63  RooRealVar* m4l_rrv_;
64  RooRealVar* mH_rrv_;
65 
66  RooFormulaVar* n_CB_;
67  RooFormulaVar* alpha_CB_;
68  RooFormulaVar* n2_CB_;
69  RooFormulaVar* alpha2_CB_;
70  RooFormulaVar* mean_CB_;
71  RooFormulaVar* sigma_CB_;
72  RooFormulaVar* meanTOT_CB_;
73 
74  RooRealVar* mean_CB_err_;
75  RooRealVar* sigma_CB_err_;
76 
77  RooRealVar* corr_mean_sig;
78  RooRealVar* corr_sigma_sig;
79 
82  RooFFTConvPdf *sig_FFT_;
83  RooRealVar* mean_BW_;
84  RooRealVar* width_BW_;
86 
87  //qqZZ background m4l shape
88  RooRealVar* a0_qqZZ_;
89  RooRealVar* a1_qqZZ_;
90  RooRealVar* a2_qqZZ_;
91  RooRealVar* a3_qqZZ_;
92  RooRealVar* a4_qqZZ_;
93  RooRealVar* a5_qqZZ_;
94  RooRealVar* a6_qqZZ_;
95  RooRealVar* a7_qqZZ_;
96  RooRealVar* a8_qqZZ_;
97  RooRealVar* a9_qqZZ_;
98  RooRealVar* a10_qqZZ_;
99  RooRealVar* a11_qqZZ_;
100  RooRealVar* a12_qqZZ_;
101  RooRealVar* a13_qqZZ_;
104 
105 };
106 
107 
108 #endif
SuperMELA::verbose_
bool verbose_
Definition: SuperMELA.h:60
SuperMELA::sigma_CB_err_
RooRealVar * sigma_CB_err_
Definition: SuperMELA.h:75
SuperMELA::sqrts_
double sqrts_
Definition: SuperMELA.h:56
SuperMELA::a13_qqZZ_
RooRealVar * a13_qqZZ_
Definition: SuperMELA.h:101
SuperMELA::SuperMELA
SuperMELA(double mH=125, std::string channel="4mu", double LHCsqrts=8.)
Definition: SuperMELA.cc:18
SuperMELA::a11_qqZZ_
RooRealVar * a11_qqZZ_
Definition: SuperMELA.h:99
SuperMELA::readBkgParsFromFile
void readBkgParsFromFile(std::vector< double > &apars)
Definition: SuperMELA.cc:490
SuperMELA::~SuperMELA
~SuperMELA()
Definition: SuperMELA.cc:74
MELARelBWUFParam
Definition: MELACombinePdfs.h:134
SuperMELA::meanTOT_CB_
RooFormulaVar * meanTOT_CB_
Definition: SuperMELA.h:72
SuperMELA
Definition: SuperMELA.h:17
SuperMELA::norm_bkg_qqZZ_
double norm_bkg_qqZZ_
Definition: SuperMELA.h:103
SuperMELA::SetVerbosity
void SetVerbosity(bool verb=true)
Definition: SuperMELA.h:26
SuperMELA::a6_qqZZ_
RooRealVar * a6_qqZZ_
Definition: SuperMELA.h:94
SuperMELA::mean_CB_
RooFormulaVar * mean_CB_
Definition: SuperMELA.h:70
SuperMELA::SetMH
void SetMH(double myMH)
Definition: SuperMELA.cc:351
SuperMELA::readSigParsFromFile
void readSigParsFromFile(std::string &str_mean_CB, std::string &str_sigma_CB, std::string &str_n_CB, std::string &str_alpha_CB, std::string &str_n2_CB, std::string &str_alpha2_CB)
Definition: SuperMELA.cc:447
SuperMELA::a8_qqZZ_
RooRealVar * a8_qqZZ_
Definition: SuperMELA.h:96
SuperMELA::n_CB_
RooFormulaVar * n_CB_
Definition: SuperMELA.h:66
SuperMELA::highMH_
double highMH_
Definition: SuperMELA.h:57
SuperMELA::readSigSystFromFile
void readSigSystFromFile(double &str_mean_CB_err_e, double &str_mean_CB_err_m, double &str_sigma_CB_err_e, double &str_sigma_CB_err_m)
Definition: SuperMELA.cc:383
SuperMELA::sigma_CB_
RooFormulaVar * sigma_CB_
Definition: SuperMELA.h:71
SuperMELA::init
void init()
Definition: SuperMELA.cc:158
SuperMELA::qqZZ_pdf_
MELAqqZZPdf_v2 * qqZZ_pdf_
Definition: SuperMELA.h:102
SuperMELA::alpha2_CB_
RooFormulaVar * alpha2_CB_
Definition: SuperMELA.h:69
SuperMELA::norm_sig_CB_
double norm_sig_CB_
Definition: SuperMELA.h:85
SuperMELA::a0_qqZZ_
RooRealVar * a0_qqZZ_
Definition: SuperMELA.h:88
MELACombinePdfs.h
SuperMELA::SetPathToCards
void SetPathToCards(std::string dirToCards)
Definition: SuperMELA.cc:358
SuperMELA::a3_qqZZ_
RooRealVar * a3_qqZZ_
Definition: SuperMELA.h:91
SuperMELA::M4lProb
std::pair< double, double > M4lProb(double m4l)
Definition: SuperMELA.cc:552
SuperMELA::a4_qqZZ_
RooRealVar * a4_qqZZ_
Definition: SuperMELA.h:92
SuperMELA::splitLine
void splitLine(const std::string &rawoption, std::vector< std::string > &splitoptions, char delimiter)
Definition: SuperMELA.cc:363
SuperMELA::sig_FFT_
RooFFTConvPdf * sig_FFT_
Definition: SuperMELA.h:82
SuperMELA::norm_sig_FFT_
double norm_sig_FFT_
Definition: SuperMELA.h:85
SuperMELA::a5_qqZZ_
RooRealVar * a5_qqZZ_
Definition: SuperMELA.h:93
SuperMELA::a9_qqZZ_
RooRealVar * a9_qqZZ_
Definition: SuperMELA.h:97
SuperMELA::GetSigShapeSystematic
double GetSigShapeSystematic(std::string parName)
Definition: SuperMELA.cc:124
SuperMELA::mean_CB_err_
RooRealVar * mean_CB_err_
Definition: SuperMELA.h:74
SuperMELA::corr_mean_sig
RooRealVar * corr_mean_sig
Definition: SuperMELA.h:77
SuperMELA::a10_qqZZ_
RooRealVar * a10_qqZZ_
Definition: SuperMELA.h:98
SuperMELA::mH_rrv_
RooRealVar * mH_rrv_
Definition: SuperMELA.h:64
SuperMELA::GetSigShapeParameter
double GetSigShapeParameter(std::string parName)
Definition: SuperMELA.cc:140
SuperMELA::m4l_rrv_
RooRealVar * m4l_rrv_
Definition: SuperMELA.h:63
SuperMELA::mHVal_
double mHVal_
Definition: SuperMELA.h:55
SuperMELA::ch_
int ch_
Definition: SuperMELA.h:59
SuperMELA::calc_mZZ_range
void calc_mZZ_range(const double mHVal, double &low_M, double &high_M)
Definition: SuperMELA.cc:533
SuperMELA::lowMH_
double lowMH_
Definition: SuperMELA.h:57
SuperMELA::a7_qqZZ_
RooRealVar * a7_qqZZ_
Definition: SuperMELA.h:95
SuperMELA::a1_qqZZ_
RooRealVar * a1_qqZZ_
Definition: SuperMELA.h:89
SuperMELA::sig_BW_
MELARelBWUFParam * sig_BW_
Definition: SuperMELA.h:81
SuperMELA::corr_sigma_sig
RooRealVar * corr_sigma_sig
Definition: SuperMELA.h:78
SuperMELA::n2_CB_
RooFormulaVar * n2_CB_
Definition: SuperMELA.h:68
Mela.h
This is the "MELA" object that interfaces with the Fortran code in both MCFM-JHUGen and pure JHUGen.
SuperMELA::width_BW_
RooRealVar * width_BW_
Definition: SuperMELA.h:84
SuperMELA::strChan_
std::string strChan_
Definition: SuperMELA.h:58
MELAqqZZPdf_v2
Definition: MELACombinePdfs.h:18
SuperMELA::sig_CB_
MELADoubleCB * sig_CB_
Definition: SuperMELA.h:80
SuperMELA::a12_qqZZ_
RooRealVar * a12_qqZZ_
Definition: SuperMELA.h:100
SuperMELA::pathToCards_
std::string pathToCards_
Definition: SuperMELA.h:61
SuperMELA::SetDecayChannel
void SetDecayChannel(std::string myChan)
Definition: SuperMELA.cc:113
MELADoubleCB
Definition: MELACombinePdfs.h:102
SuperMELA::mean_BW_
RooRealVar * mean_BW_
Definition: SuperMELA.h:83
SuperMELA::a2_qqZZ_
RooRealVar * a2_qqZZ_
Definition: SuperMELA.h:90
SuperMELA::alpha_CB_
RooFormulaVar * alpha_CB_
Definition: SuperMELA.h:67
SuperMELA::checkChannel
bool checkChannel()
Definition: SuperMELA.cc:598