Loading [MathJax]/extensions/tex2jax.js
JHUGen MELA  JHUGen v7.5.6, MELA v2.4.2
Matrix element calculations as used in JHUGen.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
TVar.hh
Go to the documentation of this file.
1 #ifndef EvtProb_VAR
2 #define EvtProb_VAR
3 
4 #define xstr_lit(s) str_lit(s)
5 #define str_lit(s) #s
6 #ifndef _melapkgpathstr_
7 #ifndef _melapkgpath_
8 #define _melapkgpath_ ./
9 #endif
10 #define _melapkgpathstr_ xstr_lit(_melapkgpath_)
11 #endif
12 
13 #include <cstring>
14 #include <string>
15 #include <vector>
16 #include <utility>
17 #include "TString.h"
18 #include "TH1F.h"
19 #include "TH2F.h"
20 #include "TLorentzVector.h"
21 
22 
23 // typedefs for use in simple_event_record
24 typedef std::pair<int, TLorentzVector> SimpleParticle_t;
25 typedef std::vector<SimpleParticle_t> SimpleParticleCollection_t;
26 
27 
28 namespace TVar{
29  enum{
31  kUseAssociated_Leptons=2, // l or nu
36  };
42  CandidateDecay_ZW, // Untested
46  };
48  SILENT = 0,
49  ERROR = 1,
50  INFO = 2,
51  DEBUG = 3,
54  };
56  MCFM = 0,
57  JHUGen = 1,
60  };
61  enum Production{
64  ZZQQB_STU, // Should be the same as ZZQQB, just for crosscheck
66 
67  ttH, // ttH
68  bbH, // bbH
69  JQCD, // ? + 1 jet
70 
71  JJQCD, // SBF
72  JJVBF, // VBF
73  JJEW, // VBF+VH (had.)
74  JJEWQCD, // VBF+VH+QCD, all hadronic
75  Had_ZH, // ZH, Z->uu/dd
76  Had_WH, // W(+/-)H, W->ud
77  Lep_ZH, // ZH, Z->ll/nunu
78  Lep_WH, // W(+/-)H, W->lnu
79 
80  // s-channel contributions
90 
91  // t+u-channel contributions
101 
102  GammaH, // gammaH, stable A (could implement S and TU in the future
104  };
109  };
115  };
116  enum ResonancePropagatorScheme{ // Assigned specific integer value on purpose, translated directly to the JHUGen propagator indices
120  CPS=3,
122  };
123 
124  enum Process{
125  HSMHiggs, // Call this for any MCFM |H|**2-only ME.
134 
146 
147  H1minus, // 1-
148  H1plus, // 1+
149 
150  H2_g1, // 2m+, Zg, gg
151  H2_g2, // 2h2+
152  H2_g3, // 2h3+
153  H2_g4, // 2h+
154  H2_g5, // 2b+
155  H2_g1g5, // 2m+
156  H2_g6, // 2h6+
157  H2_g7, // 2h7+
158  H2_g8, // 2h-
159  H2_g9, // 2h9-
160  H2_g10, // 2h10-
161 
162  bkgGammaGamma, // gamma+gamma cont.
163  bkgZGamma, // Z+gamma cont.
164  bkgZJets, // Z + 0/1/2 jets (ZZGG, JQCD, JJQCD)
165  bkgZZ, // qq/gg->ZZ cont.
166  bkgWW, // qq/gg->WW cont.
167  bkgWWZZ, // gg->ZZ+WW cont.
168 
169  bkgZZ_SMHiggs, // ggZZ cont. + SMHigg
170  bkgWW_SMHiggs, // ggWW cont. + SMHiggs
171  bkgWWZZ_SMHiggs, // ggZZ+WW cont. + SMHiggs
172 
173  HSMHiggs_WWZZ, // MCFM |H|**2 ZZ+WW with ZZ-WW interference
174 
175  /**** For width ***/
177 
178  /***** Self Defined******/
182 
184  };
186  // Nominal value
188  // Scale uncertainties
191  // Resolution uncertainties
194  };
212 
214  };
215 
216  //---------------------------------
217  // Functions
218  //---------------------------------
219  TString ProcessName(TVar::Process temp);
220  TString ProductionName(TVar::Production temp);
222 
223  //---------------------------------
224  // Structs
225  //---------------------------------
226  struct simple_event_record{ // Somewhat not-so-simple particles
228  int AssociationVCompatibility; // Z=23, W+-=|+-24| or none=0
234 
235  // Output 4-vectors
236  std::vector<int> intermediateVid; // Origin of daughters, not associated particles
240 
241  std::vector<SimpleParticleCollection_t> pTopDaughters;
242  std::vector<SimpleParticleCollection_t> pAntitopDaughters;
245 
246  // Constructor
253  nRequested_Tops(0),
255  {}
256 
257  };
258 
264  };
265 
266  std::string GetMELAPath_NoEnvExpansion();
267  std::string GetMELAPath();
268 }
269 
270 
271 #endif
TVar::H1plus
@ H1plus
Definition: TVar.hh:148
TVar::ERROR
@ ERROR
Definition: TVar.hh:49
TVar::bkgWW_SMHiggs
@ bkgWW_SMHiggs
Definition: TVar.hh:170
TVar::FixedWidth
@ FixedWidth
Definition: TVar.hh:119
SimpleParticle_t
std::pair< int, TLorentzVector > SimpleParticle_t
Definition: TVar.hh:24
TVar::JJVBF
@ JJVBF
Definition: TVar.hh:72
TVar::Dynamic_qJJ_qH
@ Dynamic_qJJ_qH
Definition: TVar.hh:206
TVar::D_zzzg_g1prime2
@ D_zzzg_g1prime2
Definition: TVar.hh:144
TVar::simple_event_record::pTopDaughters
std::vector< SimpleParticleCollection_t > pTopDaughters
Definition: TVar.hh:241
TVar::simple_event_record::pStableAntitops
SimpleParticleCollection_t pStableAntitops
Definition: TVar.hh:244
TVar::Had_ZH_S
@ Had_ZH_S
Definition: TVar.hh:86
TVar::D_g1g4
@ D_g1g4
Definition: TVar.hh:138
TVar::FermionMassRemoval
FermionMassRemoval
Definition: TVar.hh:110
TVar::LeptonInterference
LeptonInterference
Definition: TVar.hh:105
TVar::H0_Zgs_PS
@ H0_Zgs_PS
Definition: TVar.hh:131
TVar::VerbosityLevel
VerbosityLevel
Definition: TVar.hh:47
TVar::Fixed_mH
@ Fixed_mH
Definition: TVar.hh:197
TVar::JJEWQCD
@ JJEWQCD
Definition: TVar.hh:74
TVar::H0minus
@ H0minus
Definition: TVar.hh:128
TVar::CandidateDecay_ZZ
@ CandidateDecay_ZZ
Definition: TVar.hh:41
TVar::kNoAssociated
@ kNoAssociated
Definition: TVar.hh:30
TVar::simple_event_record::nRequested_AssociatedJets
int nRequested_AssociatedJets
Definition: TVar.hh:229
TVar::Fixed_mWPlusmH
@ Fixed_mWPlusmH
Definition: TVar.hh:200
TVar::bkgGammaGamma
@ bkgGammaGamma
Definition: TVar.hh:162
TVar::nFermionMassRemovalSchemes
@ nFermionMassRemovalSchemes
Definition: TVar.hh:114
TVar::event_scales_type
Definition: TVar.hh:259
TVar::INFO
@ INFO
Definition: TVar.hh:50
TVar::Lep_WH_S
@ Lep_WH_S
Definition: TVar.hh:89
TVar::nProcesses
@ nProcesses
Definition: TVar.hh:183
TVar::ProductionName
TString ProductionName(TVar::Production temp)
Definition: TVar.cc:64
TVar::GammaH
@ GammaH
Definition: TVar.hh:102
TVar::simple_event_record::simple_event_record
simple_event_record()
Definition: TVar.hh:247
TVar::Dynamic_HT
@ Dynamic_HT
Definition: TVar.hh:208
TVar::CandidateDecayMode
CandidateDecayMode
Definition: TVar.hh:37
TVar::H2_g10
@ H2_g10
Definition: TVar.hh:160
TVar::SelfDefine_spin2
@ SelfDefine_spin2
Definition: TVar.hh:181
TVar::CandidateDecay_Stable
@ CandidateDecay_Stable
Definition: TVar.hh:38
TVar::bkgZJets
@ bkgZJets
Definition: TVar.hh:164
TVar::ZZINDEPENDENT
@ ZZINDEPENDENT
Definition: TVar.hh:65
TVar::simple_event_record::pDaughters
SimpleParticleCollection_t pDaughters
Definition: TVar.hh:237
TVar::kUseAssociated_StableTops
@ kUseAssociated_StableTops
Definition: TVar.hh:35
TVar::Process
Process
Definition: TVar.hh:124
TVar::EventScaleScheme
EventScaleScheme
Definition: TVar.hh:195
TVar::JJQCD
@ JJQCD
Definition: TVar.hh:71
TVar
Definition: TVar.hh:28
TVar::HSMHiggs_WWZZ
@ HSMHiggs_WWZZ
Definition: TVar.hh:173
TVar::ZZQQB
@ ZZQQB
Definition: TVar.hh:63
TVar::CandidateDecay_WW
@ CandidateDecay_WW
Definition: TVar.hh:40
TVar::kUseAssociated_Jets
@ kUseAssociated_Jets
Definition: TVar.hh:33
TVar::H1minus
@ H1minus
Definition: TVar.hh:147
TVar::D_g1g4_pi_2
@ D_g1g4_pi_2
Definition: TVar.hh:139
TVar::simple_event_record::nRequested_AssociatedPhotons
int nRequested_AssociatedPhotons
Definition: TVar.hh:231
TVar::D_zzzg_PS
@ D_zzzg_PS
Definition: TVar.hh:142
TVar::nEventScaleSchemes
@ nEventScaleSchemes
Definition: TVar.hh:213
TVar::DEBUG_VERBOSE
@ DEBUG_VERBOSE
Definition: TVar.hh:52
TVar::D_zzzg_g1prime2_pi_2
@ D_zzzg_g1prime2_pi_2
Definition: TVar.hh:145
TVar::MADGRAPH
@ MADGRAPH
Definition: TVar.hh:59
TVar::H2_g7
@ H2_g7
Definition: TVar.hh:157
TVar::simple_event_record::AssociationVCompatibility
int AssociationVCompatibility
Definition: TVar.hh:228
TVar::ZZQQB_TU
@ ZZQQB_TU
Definition: TVar.hh:92
TVar::SMSyst_ResUp
@ SMSyst_ResUp
Definition: TVar.hh:192
TVar::ZZGG
@ ZZGG
Definition: TVar.hh:62
TVar::ProcessName
TString ProcessName(TVar::Process temp)
Definition: TVar.cc:6
TVar::MomentumToEnergy
@ MomentumToEnergy
Definition: TVar.hh:113
TVar::H0_Zgsg1prime2
@ H0_Zgsg1prime2
Definition: TVar.hh:129
TVar::simple_event_record::nRequested_Tops
int nRequested_Tops
Definition: TVar.hh:232
TVar::simple_event_record::pMothers
SimpleParticleCollection_t pMothers
Definition: TVar.hh:239
TVar::bkgWW
@ bkgWW
Definition: TVar.hh:166
TVar::D_zzgg
@ D_zzgg
Definition: TVar.hh:141
TVar::DefaultLeptonInterf
@ DefaultLeptonInterf
Definition: TVar.hh:106
TVar::D_zzgg_PS
@ D_zzgg_PS
Definition: TVar.hh:143
TVar::H2_g5
@ H2_g5
Definition: TVar.hh:154
TVar::CPS
@ CPS
Definition: TVar.hh:120
TVar::bkgWWZZ
@ bkgWWZZ
Definition: TVar.hh:167
TVar::H0_g1prime2
@ H0_g1prime2
Definition: TVar.hh:126
TVar::simple_event_record::intermediateVid
std::vector< int > intermediateVid
Definition: TVar.hh:236
TVar::H2_g3
@ H2_g3
Definition: TVar.hh:152
TVar::SMSyst_None
@ SMSyst_None
Definition: TVar.hh:187
TVar::DEBUG_MECHECK
@ DEBUG_MECHECK
Definition: TVar.hh:53
TVar::simple_event_record::AssociationCode
int AssociationCode
Definition: TVar.hh:227
TVar::H0_gsgs_PS
@ H0_gsgs_PS
Definition: TVar.hh:133
TVar::simple_event_record::pStableTops
SimpleParticleCollection_t pStableTops
Definition: TVar.hh:243
TVar::HSMHiggs
@ HSMHiggs
Definition: TVar.hh:125
TVar::H2_g2
@ H2_g2
Definition: TVar.hh:151
TVar::Lep_WH_TU
@ Lep_WH_TU
Definition: TVar.hh:100
TVar::bkgZGamma
@ bkgZGamma
Definition: TVar.hh:163
TVar::GetMELAPath
std::string GetMELAPath()
Definition: TVar.cc:122
TVar::H2_g9
@ H2_g9
Definition: TVar.hh:159
TVar::Fixed_mZPlusmH
@ Fixed_mZPlusmH
Definition: TVar.hh:201
TVar::H0_gsgs
@ H0_gsgs
Definition: TVar.hh:132
TVar::D_gg10
@ D_gg10
Definition: TVar.hh:176
TVar::GetMELAPath_NoEnvExpansion
std::string GetMELAPath_NoEnvExpansion()
Definition: TVar.cc:118
TVar::Had_ZH_TU
@ Had_ZH_TU
Definition: TVar.hh:97
TVar::MCFM
@ MCFM
Definition: TVar.hh:56
TVar::Lep_ZH_S
@ Lep_ZH_S
Definition: TVar.hh:88
TVar::D_g1g2
@ D_g1g2
Definition: TVar.hh:136
TVar::JJEW_S
@ JJEW_S
Definition: TVar.hh:84
TVar::CandidateDecay_ZW
@ CandidateDecay_ZW
Definition: TVar.hh:42
TVar::SMSyst_ResDown
@ SMSyst_ResDown
Definition: TVar.hh:193
TVar::Dynamic_qJ_qJ_qH
@ Dynamic_qJ_qJ_qH
Definition: TVar.hh:207
TVar::ConserveDifermionMass
@ ConserveDifermionMass
Definition: TVar.hh:112
TVar::SILENT
@ SILENT
Definition: TVar.hh:48
TVar::Dynamic_Softest_pTJ
@ Dynamic_Softest_pTJ
Definition: TVar.hh:210
TVar::CandidateDecay_ZG
@ CandidateDecay_ZG
Definition: TVar.hh:43
TVar::MatrixElement
MatrixElement
Definition: TVar.hh:55
TVar::event_scales_type::factorizationScheme
TVar::EventScaleScheme factorizationScheme
Definition: TVar.hh:261
TVar::ZZQQB_STU
@ ZZQQB_STU
Definition: TVar.hh:64
TVar::JJVBF_TU
@ JJVBF_TU
Definition: TVar.hh:94
TVar::event_scales_type::fac_scale_factor
double fac_scale_factor
Definition: TVar.hh:263
TVar::H2_g1
@ H2_g1
Definition: TVar.hh:150
TVar::Fixed_mZ
@ Fixed_mZ
Definition: TVar.hh:199
TVar::bkgWWZZ_SMHiggs
@ bkgWWZZ_SMHiggs
Definition: TVar.hh:171
TVar::NoPropagator
@ NoPropagator
Definition: TVar.hh:117
TVar::JHUGen
@ JHUGen
Definition: TVar.hh:57
TVar::Had_ZH
@ Had_ZH
Definition: TVar.hh:75
TVar::NoRemoval
@ NoRemoval
Definition: TVar.hh:111
TVar::H2_g1g5
@ H2_g1g5
Definition: TVar.hh:155
TVar::H2_g8
@ H2_g8
Definition: TVar.hh:158
TVar::InterfOff
@ InterfOff
Definition: TVar.hh:108
TVar::ResonancePropagatorScheme
ResonancePropagatorScheme
Definition: TVar.hh:116
TVar::Dynamic_qH
@ Dynamic_qH
Definition: TVar.hh:204
TVar::Had_WH_S
@ Had_WH_S
Definition: TVar.hh:87
TVar::JJEW
@ JJEW
Definition: TVar.hh:73
TVar::D_g1g1prime2
@ D_g1g1prime2
Definition: TVar.hh:135
TVar::bkgZZ_SMHiggs
@ bkgZZ_SMHiggs
Definition: TVar.hh:169
TVar::CandidateDecay_WG
@ CandidateDecay_WG
Definition: TVar.hh:44
TVar::bkgZZ
@ bkgZZ
Definition: TVar.hh:165
TVar::simple_event_record::nRequested_Antitops
int nRequested_Antitops
Definition: TVar.hh:233
TVar::SMSyst_ScaleDown
@ SMSyst_ScaleDown
Definition: TVar.hh:190
TVar::InterfOn
@ InterfOn
Definition: TVar.hh:107
TVar::Fixed_mW
@ Fixed_mW
Definition: TVar.hh:198
TVar::Fixed_TwomtPlusmH
@ Fixed_TwomtPlusmH
Definition: TVar.hh:202
TVar::Had_WH_TU
@ Had_WH_TU
Definition: TVar.hh:98
TVar::event_scales_type::ren_scale_factor
double ren_scale_factor
Definition: TVar.hh:262
TVar::H0_Zgs
@ H0_Zgs
Definition: TVar.hh:130
TVar::SuperMelaSyst
SuperMelaSyst
Definition: TVar.hh:185
TVar::ttH
@ ttH
Definition: TVar.hh:67
TVar::SelfDefine_spin0
@ SelfDefine_spin0
Definition: TVar.hh:179
TVar::simple_event_record::pAssociated
SimpleParticleCollection_t pAssociated
Definition: TVar.hh:238
TVar::JQCD
@ JQCD
Definition: TVar.hh:69
TVar::RunningWidth
@ RunningWidth
Definition: TVar.hh:118
TVar::kUseAssociated_Photons
@ kUseAssociated_Photons
Definition: TVar.hh:32
TVar::ANALYTICAL
@ ANALYTICAL
Definition: TVar.hh:58
TVar::H2_g6
@ H2_g6
Definition: TVar.hh:156
TVar::Lep_ZH
@ Lep_ZH
Definition: TVar.hh:77
TVar::SMSyst_ScaleUp
@ SMSyst_ScaleUp
Definition: TVar.hh:189
TVar::event_scales_type::renomalizationScheme
TVar::EventScaleScheme renomalizationScheme
Definition: TVar.hh:260
TVar::kUseAssociated_UnstableTops
@ kUseAssociated_UnstableTops
Definition: TVar.hh:34
TVar::ZZQQB_S
@ ZZQQB_S
Definition: TVar.hh:81
TVar::simple_event_record::pAntitopDaughters
std::vector< SimpleParticleCollection_t > pAntitopDaughters
Definition: TVar.hh:242
TVar::DEBUG
@ DEBUG
Definition: TVar.hh:51
TVar::JJEWQCD_S
@ JJEWQCD_S
Definition: TVar.hh:85
TVar::simple_event_record::nRequested_AssociatedLeptons
int nRequested_AssociatedLeptons
Definition: TVar.hh:230
TVar::D_zzzg
@ D_zzzg
Definition: TVar.hh:140
TVar::H2_g4
@ H2_g4
Definition: TVar.hh:153
TVar::JJEWQCD_TU
@ JJEWQCD_TU
Definition: TVar.hh:96
SimpleParticleCollection_t
std::vector< SimpleParticle_t > SimpleParticleCollection_t
Definition: TVar.hh:25
TVar::Dynamic_qJJH
@ Dynamic_qJJH
Definition: TVar.hh:205
TVar::D_g1g2_pi_2
@ D_g1g2_pi_2
Definition: TVar.hh:137
TVar::AltRunningWidth
@ AltRunningWidth
Definition: TVar.hh:121
TVar::DefaultScaleScheme
@ DefaultScaleScheme
Definition: TVar.hh:196
TVar::CandidateDecay_ff
@ CandidateDecay_ff
Definition: TVar.hh:39
TVar::Fixed_mtPlusmH
@ Fixed_mtPlusmH
Definition: TVar.hh:203
TVar::Had_WH
@ Had_WH
Definition: TVar.hh:76
TVar::JJEW_TU
@ JJEW_TU
Definition: TVar.hh:95
TVar::Dynamic_Leading_pTJ
@ Dynamic_Leading_pTJ
Definition: TVar.hh:209
TVar::Production
Production
Definition: TVar.hh:61
TVar::JJVBF_S
@ JJVBF_S
Definition: TVar.hh:83
TVar::Lep_WH
@ Lep_WH
Definition: TVar.hh:78
TVar::JJQCD_TU
@ JJQCD_TU
Definition: TVar.hh:93
TVar::simple_event_record
Definition: TVar.hh:226
TVar::SelfDefine_spin1
@ SelfDefine_spin1
Definition: TVar.hh:180
TVar::nProductions
@ nProductions
Definition: TVar.hh:103
TVar::MatrixElementName
TString MatrixElementName(TVar::MatrixElement temp)
Definition: TVar.cc:109
TVar::H0hplus
@ H0hplus
Definition: TVar.hh:127
TVar::bbH
@ bbH
Definition: TVar.hh:68
TVar::kUseAssociated_Leptons
@ kUseAssociated_Leptons
Definition: TVar.hh:31
TVar::Dynamic_RandomUniform_Constrained
@ Dynamic_RandomUniform_Constrained
Definition: TVar.hh:211
TVar::JJQCD_S
@ JJQCD_S
Definition: TVar.hh:82
TVar::Lep_ZH_TU
@ Lep_ZH_TU
Definition: TVar.hh:99
TVar::CandidateDecay_GG
@ CandidateDecay_GG
Definition: TVar.hh:45