CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ZToMuMuGammaAnalyzer.h
Go to the documentation of this file.
1 #ifndef ZToMuMuGammaAnalyzer_H
2 #define ZToMuMuGammaAnalyzer_H
3 
6 //
11 // DataFormats
38 
43 
45 
46 // Geometry
56 //
57 #include "TFile.h"
58 #include "TH1.h"
59 #include "TH2.h"
60 #include "TTree.h"
61 #include "TVector3.h"
62 #include "TProfile.h"
63 //
64 
73 
74 //
75 //DQM services
79 
80 
81 
82 #include <vector>
83 #include <string>
84 
97 // forward declarations
98 class TFile;
99 class TH1F;
100 class TH2F;
101 class TProfile;
102 class TTree;
103 class SimVertex;
104 class SimTrack;
105 
106 
108 {
109 
110 
111  public:
112 
113  //
114  explicit ZToMuMuGammaAnalyzer( const edm::ParameterSet& ) ;
115  virtual ~ZToMuMuGammaAnalyzer();
116 
117  virtual void analyze( const edm::Event&, const edm::EventSetup& ) ;
118  virtual void beginJob() ;
119  virtual void endJob() ;
120  virtual void endRun(const edm::Run& , const edm::EventSetup& ) ;
121 
122 
123  private:
135 
136 
139 
144  unsigned int prescaleFactor_;
150  std::stringstream currentFolder_;
151  int nEvt_;
152  int nEntry_;
153 
154 
155  // muon selection
156  float muonMinPt_;
159  float muonMaxDxy_;
165  // dimuon selection
168  // photon selection
172 
173  // mu mu gamma selection
174  float nearMuonDr_;
181 
182  float mumuInvMass( const reco::Muon & m1,const reco::Muon & m2 ) ;
183  float mumuGammaInvMass(const reco::Muon & mu1,const reco::Muon & mu2, const reco::PhotonRef& pho );
184  bool basicMuonSelection ( const reco::Muon & m );
185  bool muonSelection ( const reco::Muon & m, const reco::BeamSpot& bs );
186  bool photonSelection ( const reco::PhotonRef & p );
187 
188 
193 
198 
200 
205 
211 
217 
223 
229 
235 
239 
245 
251 
257 
263 
269 
275 
281 
285  // Information from Particle Flow
286  // Isolation
290  // Identification
307 
308 
309 
310 
311 
312 };
313 
314 
315 
316 
317 
318 #endif
319 
320 
321 
322 
MonitorElement * h_dRPhoPFcand_Pho_unCleaned_[3]
MonitorElement * p_hOverEVsEta_[3]
MonitorElement * h_pfMva_[3]
MonitorElement * h_SumPtOverPhoPt_ChHad_unCleaned_[3]
MonitorElement * h_dRPhoPFcand_Pho_Cleaned_[3]
MonitorElement * h2_nTrackIsolSolidVsEt_[3]
MonitorElement * p_sigmaIetaIetaVsEta_[3]
MonitorElement * p_r1x5VsEta_[3]
bool muonSelection(const reco::Muon &m, const reco::BeamSpot &bs)
MonitorElement * h_phoSigmaIetaIeta_[3]
edm::EDGetTokenT< edm::SortedCollection< EcalRecHit, edm::StrictWeakOrdering< EcalRecHit > > > barrelRecHit_token_
MonitorElement * h2_r2x5VsEta_[3]
MonitorElement * h_newhOverE_[3]
edm::EDGetTokenT< reco::PFCandidateCollection > pfCandidates_
MonitorElement * h2_trackPtSumHollowVsEt_[3]
MonitorElement * h_SumPtOverPhoPt_NeuHad_unCleaned_[3]
edm::EDGetTokenT< std::vector< reco::Photon > > photon_token_
MonitorElement * p_nTrackIsolHollowVsEta_[3]
MonitorElement * h2_r9VsEt_[3]
MonitorElement * h_nCluOutsideMustache_[3]
MonitorElement * h2_ecalSumVsEt_[3]
MonitorElement * h_nTrackIsolSolid_[3]
MonitorElement * h_SumPtOverPhoPt_Pho_Cleaned_[3]
MonitorElement * h_trackPtSumHollow_[3]
MonitorElement * h2_nTrackIsolSolidVsEta_[3]
MonitorElement * p_ecalSumVsEt_[3]
MonitorElement * h_phoEta_[3]
MonitorElement * h_nPho_[3]
MonitorElement * h_chHadIso_[3]
MonitorElement * h_phoSigmaEoverE_[3]
MonitorElement * h_dRPhoPFcand_NeuHad_Cleaned_[3]
MonitorElement * h_r1x5_[3]
MonitorElement * p_phoSigmaEoverEVsNVtx_[3]
MonitorElement * h2_sigmaIetaIetaVsEta_[3]
MonitorElement * h_dRPhoPFcand_NeuHad_unCleaned_[3]
edm::EDGetTokenT< edm::SortedCollection< EcalRecHit, edm::StrictWeakOrdering< EcalRecHit > > > endcapRecHit_token_
MonitorElement * h2_hcalSumVsEt_[3]
MonitorElement * h_hcalSum_[3]
MonitorElement * h_phoPhi_[3]
MonitorElement * p_newhOverEVsEt_[3]
MonitorElement * p_trackPtSumHollowVsEt_[3]
MonitorElement * h2_ecalSumVsEta_[3]
edm::EDGetTokenT< trigger::TriggerEvent > triggerEvent_token_
MonitorElement * p_newhOverEVsEta_[3]
virtual void analyze(const edm::Event &, const edm::EventSetup &)
MonitorElement * h_hOverE_[3]
MonitorElement * h_trackPtSumSolid_[3]
MonitorElement * p_hcalSumVsEt_[3]
MonitorElement * p_e1x5VsEt_[3]
MonitorElement * h2_r2x5VsEt_[3]
MonitorElement * h_h1OverE_[3]
MonitorElement * h_SumPtOverPhoPt_ChHad_Cleaned_[3]
MonitorElement * h2_e1x5VsEta_[3]
MonitorElement * h1_mumuGammaInvMass_[3]
MonitorElement * h2_trackPtSumSolidVsEt_[3]
MonitorElement * h_phoE_[3]
MonitorElement * p_r2x5VsEta_[3]
MonitorElement * h_nRecoVtx_
std::stringstream currentFolder_
MonitorElement * p_e2x5VsEt_[3]
MonitorElement * p_hcalSumVsEta_[3]
float mumuInvMass(const reco::Muon &m1, const reco::Muon &m2)
float mumuGammaInvMass(const reco::Muon &mu1, const reco::Muon &mu2, const reco::PhotonRef &pho)
ZToMuMuGammaAnalyzer(const edm::ParameterSet &)
MonitorElement * h_phoEt_[3]
MonitorElement * p_ecalSumVsEta_[3]
MonitorElement * p_r9VsEta_[3]
MonitorElement * h_nHadIso_[3]
edm::EDGetTokenT< reco::VertexCollection > offline_pvToken_
MonitorElement * p_trackPtSumSolidVsEta_[3]
MonitorElement * h1_mumuInvMass_[3]
photon histos
edm::ParameterSet parameters_
MonitorElement * h2_trackPtSumSolidVsEta_[3]
MonitorElement * h2_hcalSumVsEta_[3]
MonitorElement * h_dRPhoPFcand_ChHad_unCleaned_[3]
bool photonSelection(const reco::PhotonRef &p)
MonitorElement * h_scPhi_[3]
MonitorElement * h2_e1x5VsEt_[3]
MonitorElement * h_scEta_[3]
edm::EDGetTokenT< edm::ValueMap< std::vector< reco::PFCandidateRef > > > photonIsoValmap_token_
MonitorElement * h_nTrackIsolHollow_[3]
MonitorElement * p_r2x5VsEt_[3]
MonitorElement * h_SumPtOverPhoPt_Pho_unCleaned_[3]
MonitorElement * h_SumPtOverPhoPt_NeuHad_Cleaned_[3]
MonitorElement * h_etOutsideMustache_[3]
MonitorElement * h_e1x5_[3]
MonitorElement * h2_nTrackIsolHollowVsEt_[3]
MonitorElement * h2_nTrackIsolHollowVsEta_[3]
edm::EDGetTokenT< reco::BeamSpot > beamSpot_token_
MonitorElement * h2_e2x5VsEta_[3]
MonitorElement * h2_trackPtSumHollowVsEta_[3]
MonitorElement * h_r9_[3]
MonitorElement * p_r1x5VsEt_[3]
MonitorElement * p_nTrackIsolHollowVsEt_[3]
MonitorElement * p_r9VsEt_[3]
bool basicMuonSelection(const reco::Muon &m)
MonitorElement * p_trackPtSumSolidVsEt_[3]
edm::EDGetTokenT< edm::ValueMap< bool > > PhotonIDTight_token_
MonitorElement * p_e2x5VsEta_[3]
MonitorElement * h_e2x5_[3]
MonitorElement * h2_r1x5VsEta_[3]
edm::EDGetTokenT< edm::ValueMap< bool > > PhotonIDLoose_token_
MonitorElement * p_trackPtSumHollowVsEta_[3]
MonitorElement * h_dRPhoPFcand_ChHad_Cleaned_[3]
virtual void endRun(const edm::Run &, const edm::EventSetup &)
MonitorElement * p_hOverEVsEt_[3]
MonitorElement * h2_r1x5VsEt_[3]
MonitorElement * p_nTrackIsolSolidVsEt_[3]
MonitorElement * p_e1x5VsEta_[3]
MonitorElement * p_nTrackIsolSolidVsEta_[3]
MonitorElement * h2_r9VsEta_[3]
Definition: Run.h:41
edm::EDGetTokenT< std::vector< reco::Muon > > muon_token_
MonitorElement * h_ecalSum_[3]
MonitorElement * h_phoIso_[3]
MonitorElement * h_h2OverE_[3]
MonitorElement * h_r2x5_[3]
MonitorElement * h2_e2x5VsEt_[3]