EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TaggingStudyModule.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file TaggingStudyModule.h
1 #ifndef TAGGINGSTUDYMODULE_HH
2 #define TAGGINGSTUDYMODULE_HH
3 
4 #include "classes/DelphesClasses.h"
5 
6 #include "Module.h"
7 
8 class TaggingStudyModule : public Module {
9 
10  public:
11 
12  TaggingStudyModule(ExRootTreeReader* data);
13 
15 
16  void initialize() override;
17  bool execute(std::map<std::string, std::any>* DataStore) override;
18  void finalize() override;
19 
20 
21  private:
22  // errd0 and errz0 are in millimeters
23  // bool Tagged(Jet* jet, float minSignif=2.2, float minPT = 1.0, int minTracks = 3, float errd0 = -1, float errz0 = -1);
24 
25  // Branch variables for storage to disk
26  float _jet_pt;
27  float _jet_eta;
28  float _jet_flavor;
29  float _jet_tagged;
30  float _jet_btag;
31 
32 
33  // study map linking variations to numbers and kinds of jet
34 
35  std::map<std::string, std::map<std::string, int>> study_variations;
36  std::vector<int> minTrackVar{2, 3, 4};
37  std::vector<float> minSignifVar{1.5, 1.75, 2.0, 2.25, 2.5, 2.75, 3.0, 3.25, 3.5, 3.75, 4.00, 4.25, 4.50, 4.75, 5.00, 6.00, 7.00, 8.00, 9.00,10.00,12.00,14.00, 16.00};
38  std::vector<float> minTrkPTVar{0.10, 0.25, 0.5, 0.75, 1.0, 1.25, 1.5};
39 
40 };
41 
42 #endif