17 |
|
#include "fastjet/PseudoJet.hh"; |
18 |
|
|
19 |
|
#include "TParticle.h"; |
20 |
+ |
#include "TLorentzVector.h"; |
21 |
|
|
22 |
|
class UltraFastSim { |
23 |
|
|
30 |
|
bool run(Pythia8::Event &event); |
31 |
|
|
32 |
|
const std::vector<TParticle>& genTauList() {return genTaus;} |
33 |
+ |
const std::vector<TParticle>& visTauList() {return visTaus;} |
34 |
|
const std::vector<TParticle>& bQuarkList() {return bQuarks;} |
35 |
|
const std::vector<TParticle>& cQuarkList() {return cQuarks;} |
36 |
|
const std::vector<TParticle>& photonList() {return photons;} |
43 |
|
const std::vector<fastjet::PseudoJet>& bJetList() {return bJets;} |
44 |
|
const std::vector<fastjet::PseudoJet>& bJetListStdGeom() {return bJetsStdGeom;} |
45 |
|
|
46 |
+ |
const TLorentzVector& getMET() {return MET;} |
47 |
+ |
const TLorentzVector& getMHT() {return MHT;} |
48 |
+ |
|
49 |
+ |
const double getET() {return ET;} |
50 |
+ |
const double getHT() {return HT;} |
51 |
+ |
|
52 |
|
private: |
53 |
|
|
54 |
|
UltraFastSim(); |
58 |
|
void makeJets(); |
59 |
|
void makeBJets(); |
60 |
|
void makeTaus(); |
61 |
+ |
void makeETSums(); |
62 |
|
|
63 |
|
void setCommon(Pythia8::Particle& particle, TParticle& smearedParticle); |
64 |
|
void tkSmear(Pythia8::Particle& particle, TParticle& smearedParticle); |
71 |
|
fastjet::ClusterSequence* cs; |
72 |
|
|
73 |
|
std::vector<TParticle> genTaus; |
74 |
+ |
std::vector<TParticle> visTaus; |
75 |
|
std::vector<TParticle> bQuarks; |
76 |
|
std::vector<TParticle> cQuarks; |
77 |
|
std::vector<TParticle> photons; |
84 |
|
std::vector<fastjet::PseudoJet> bJets; |
85 |
|
std::vector<fastjet::PseudoJet> bJetsStdGeom; |
86 |
|
|
87 |
+ |
TLorentzVector MET; |
88 |
+ |
TLorentzVector MHT; |
89 |
+ |
|
90 |
+ |
double ET; |
91 |
+ |
double HT; |
92 |
+ |
|
93 |
|
}; |
94 |
|
|
95 |
|
#endif |