JHUGen MELA  JHUGen v7.5.6, MELA v2.4.2
Matrix element calculations as used in JHUGen.
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