CMS 3D CMS Logo

TauValidationMiniAOD.h
Go to the documentation of this file.
1 #ifndef TauValidationMiniAOD_h
2 #define TauValidationMiniAOD_h
3 
4 // -*- C++ -*-
5 //
6 // Package: TauValidationMiniAOD
7 // Class: TauValidationMiniAOD
8 //
9 /* *\class TauValidationMiniAOD TauValidationMiniAOD.cc
10 
11  Description: EDAnalyzer to validate tau collection in miniAOD
12  Implementation:
13 
14 */
15 // Original Author: Aniello Spiezia On August 13, 2019
16 // Updated April, 2020 by Ece Asilar and Gage DeZoort
17 // Updated July, 2023 by Gourab Saha
18 
19 // user include files
28 
29 // Include DQM core
33 
34 struct histoInfo {
35  int nbins;
36  double min;
37  double max;
38  histoInfo(int n, double m, double M) {
39  nbins = n;
40  min = m;
41  max = M;
42  }
44  nbins = config.getParameter<int>("nbins");
45  min = config.getParameter<double>("min");
46  max = config.getParameter<double>("max");
47  }
48 };
49 
50 // class declaration
52 public:
53  explicit TauValidationMiniAOD(const edm::ParameterSet &);
54  ~TauValidationMiniAOD() override;
55 
56  void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
57  void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup) override;
58  // https://twiki.cern.ch/twiki/bin/viewauth/CMS/TauIDRecommendationForRun2#Decay_Mode_Reconstruction
59  int findDecayMode(int Nc, int Np) { return 5 * (Nc - 1) + Np; };
60 
61 private:
67 
68  std::map<std::string, MonitorElement *> ptMap, etaMap, phiMap, massMap, puMap;
69  std::map<std::string, MonitorElement *> ptTightvsJetMap, phiTightvsJetMap, etaTightvsJetMap, massTightvsJetMap,
71  std::map<std::string, MonitorElement *> ptTightvsEleMap, phiTightvsEleMap, etaTightvsEleMap, massTightvsEleMap,
73  std::map<std::string, MonitorElement *> ptTightvsMuoMap, phiTightvsMuoMap, etaTightvsMuoMap, massTightvsMuoMap,
75  std::map<std::string, MonitorElement *> ptMediumvsJetMap, phiMediumvsJetMap, etaMediumvsJetMap, massMediumvsJetMap,
77  std::map<std::string, MonitorElement *> ptMediumvsEleMap, phiMediumvsEleMap, etaMediumvsEleMap, massMediumvsEleMap,
79  std::map<std::string, MonitorElement *> ptMediumvsMuoMap, phiMediumvsMuoMap, etaMediumvsMuoMap, massMediumvsMuoMap,
81  std::map<std::string, MonitorElement *> ptLoosevsJetMap, phiLoosevsJetMap, etaLoosevsJetMap, massLoosevsJetMap,
83  std::map<std::string, MonitorElement *> ptLoosevsEleMap, phiLoosevsEleMap, etaLoosevsEleMap, massLoosevsEleMap,
85  std::map<std::string, MonitorElement *> ptLoosevsMuoMap, phiLoosevsMuoMap, etaLoosevsMuoMap, massLoosevsMuoMap,
87  std::map<std::string, MonitorElement *> decayModeFindingMap, decayModeMap, byDeepTau2018v2p5VSerawMap,
89  std::map<std::string, MonitorElement *> mtau_dm0Map, mtau_dm1p2Map, mtau_dm5Map, mtau_dm6Map, mtau_dm10Map,
91  std::map<std::string, MonitorElement *> dmMigrationMap, ntau_vs_dmMap;
92  std::map<std::string, MonitorElement *> pTOverProng_dm0Map, pTOverProng_dm1p2Map, pTOverProng_dm5Map,
96  std::vector<edm::ParameterSet> discriminators_;
97  std::vector<edm::ParameterSet> againstXs_;
105 };
106 
107 #endif
std::map< std::string, MonitorElement * > massLoosevsJetMap
std::map< std::string, MonitorElement * > puLoosevsMuoMap
std::map< std::string, MonitorElement * > massMediumvsEleMap
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
std::map< std::string, MonitorElement * > phiTightvsMuoMap
std::map< std::string, MonitorElement * > massTightvsMuoMap
std::map< std::string, MonitorElement * > decayModeMap
std::map< std::string, MonitorElement * > puTightvsEleMap
std::map< std::string, MonitorElement * > ptTightvsJetMap
std::map< std::string, MonitorElement * > puMediumvsEleMap
std::map< std::string, MonitorElement * > massTightvsEleMap
edm::EDGetTokenT< std::vector< reco::Vertex > > primaryVertexCollectionToken_
std::map< std::string, MonitorElement * > etaMediumvsJetMap
std::map< std::string, MonitorElement * > massLoosevsMuoMap
std::map< std::string, MonitorElement * > ntau_vs_dmMap
std::map< std::string, MonitorElement * > puTightvsMuoMap
std::map< std::string, MonitorElement * > mtau_dm11Map
std::map< std::string, MonitorElement * > phiTightvsJetMap
std::map< std::string, MonitorElement * > etaMap
std::map< std::string, MonitorElement * > ptMediumvsJetMap
std::map< std::string, MonitorElement * > etaTightvsMuoMap
std::map< std::string, MonitorElement * > decayModeFindingMap
Definition: config.py:1
std::map< std::string, MonitorElement * > puLoosevsEleMap
std::map< std::string, MonitorElement * > phiTightvsEleMap
edm::EDGetTokenT< std::vector< reco::GenJet > > genJetsToken_
std::map< std::string, MonitorElement * > pTOverProng_dm1p2Map
std::map< std::string, MonitorElement * > ptMediumvsMuoMap
std::map< std::string, MonitorElement * > pTOverProng_dm11Map
TauValidationMiniAOD(const edm::ParameterSet &)
std::map< std::string, MonitorElement * > massTightvsJetMap
std::map< std::string, MonitorElement * > ptLoosevsMuoMap
int iEvent
Definition: GenABIO.cc:224
std::map< std::string, MonitorElement * > puMediumvsMuoMap
std::map< std::string, MonitorElement * > puMap
std::map< std::string, MonitorElement * > phiMap
edm::ParameterSet histoSettings_
edm::EDGetTokenT< std::vector< pat::Tau > > tauCollection_
std::map< std::string, MonitorElement * > massMediumvsJetMap
std::map< std::string, MonitorElement * > etaTightvsJetMap
std::map< std::string, MonitorElement * > summaryMap
edm::EDGetTokenT< std::vector< reco::GenParticle > > prunedGenToken_
std::map< std::string, MonitorElement * > mtau_dm5Map
std::map< std::string, MonitorElement * > pTOverProng_dm10Map
std::map< std::string, MonitorElement * > phiLoosevsJetMap
std::map< std::string, MonitorElement * > ptLoosevsJetMap
std::map< std::string, MonitorElement * > etaLoosevsJetMap
std::map< std::string, MonitorElement * > massMediumvsMuoMap
std::map< std::string, MonitorElement * > puLoosevsJetMap
std::map< std::string, MonitorElement * > mtau_dm6Map
std::map< std::string, MonitorElement * > ptLoosevsEleMap
std::map< std::string, MonitorElement * > byDeepTau2018v2p5VSmurawMap
std::map< std::string, MonitorElement * > ptMediumvsEleMap
std::map< std::string, MonitorElement * > puTightvsJetMap
std::map< std::string, MonitorElement * > pTOverProng_dm0Map
histoInfo(int n, double m, double M)
int findDecayMode(int Nc, int Np)
std::vector< edm::ParameterSet > discriminators_
std::map< std::string, MonitorElement * > massLoosevsEleMap
std::map< std::string, MonitorElement * > etaLoosevsEleMap
std::map< std::string, MonitorElement * > phiLoosevsEleMap
std::map< std::string, MonitorElement * > etaMediumvsEleMap
std::map< std::string, MonitorElement * > ptTightvsEleMap
std::map< std::string, MonitorElement * > phiLoosevsMuoMap
std::map< std::string, MonitorElement * > dmMigrationMap
std::map< std::string, MonitorElement * > etaLoosevsMuoMap
std::map< std::string, MonitorElement * > phiMediumvsEleMap
std::map< std::string, MonitorElement * > pTOverProng_dm6Map
edm::EDGetTokenT< edm::View< reco::Candidate > > refCollectionInputTagToken_
std::map< std::string, MonitorElement * > mtau_dm0Map
std::map< std::string, MonitorElement * > puMediumvsJetMap
std::map< std::string, MonitorElement * > mtau_dm1p2Map
std::map< std::string, MonitorElement * > byDeepTau2018v2p5VSjetrawMap
std::map< std::string, MonitorElement * > massMap
std::map< std::string, MonitorElement * > ptTightvsMuoMap
std::map< std::string, MonitorElement * > mtau_dm10Map
void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup) override
std::map< std::string, MonitorElement * > pTOverProng_dm5Map
std::map< std::string, MonitorElement * > etaTightvsEleMap
std::vector< edm::ParameterSet > againstXs_
std::map< std::string, MonitorElement * > ptMap
Definition: Run.h:45
std::map< std::string, MonitorElement * > phiMediumvsMuoMap
std::map< std::string, MonitorElement * > byDeepTau2018v2p5VSerawMap
histoInfo(const edm::ParameterSet &config)
std::map< std::string, MonitorElement * > etaMediumvsMuoMap
std::map< std::string, MonitorElement * > phiMediumvsJetMap