CMS 3D CMS Logo

ZdcSimHitStudy.h
Go to the documentation of this file.
1 // Package: ZdcSimHitStudy
3 // Class: ZdcSimHitStudy
4 //
5 /*
6  Description:
7  This code has been developed to be a check for the ZDC sim. In
8  2009, it was found that the ZDC Simulation was unrealistic and needed repair.
9  The aim of this code is to show the user the input and output of a ZDC MinBias
10  simulation.
11 
12  Implementation:
13  First a MinBias simulation should be run, it could be pythia,hijin,or
14  hydjet. This will output a .root file which should have information about
15  recoGenParticles, hcalunsuppresseddigis, and g4SimHits_ZDCHits. Use this .root
16  file as the input into the cfg.py which is found in the main directory of this
17  package. This output will be another .root file which is meant to be viewed in
18  a TBrowser.
19 
20 */
21 //
22 // Original Author: Jaime Gomez (U. of Maryland) with SIGNIFICANT assistance of
23 // Dr. Jefferey Temple (U. of Maryland) Adapted from: E. Garcia-Solis' (CSU)
24 // original code
25 //
26 // Created: Summer 2012
28 
29 #ifndef SimG4CMS_ZdcSimHitStudy_H
30 #define SimG4CMS_ZdcSimHitStudy_H
31 
38 
41 
44 
47 
50 
51 #include <fstream>
52 #include <iostream>
53 #include <map>
54 #include <memory>
55 #include <string>
56 #include <vector>
57 
58 class ZdcSimHitStudy : public DQMEDAnalyzer {
59 public:
61  ~ZdcSimHitStudy() override;
62 
63 protected:
64  void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
65 
66  void analyze(const edm::Event &e, const edm::EventSetup &c) override;
67  void analyzeHits(std::vector<PCaloHit> &);
68  int FillHitValHist(int side, int section, int channel, double energy, double time);
69 
70 private:
73  double enetot;
74 
76  //# Below all the monitoring elements #
77  //# are simply the plots "code names" #
78  //# they will be filled in the .cc file #
80 
85 
104 
106 
121 
122  // N counts plots
129 };
130 
131 #endif
ZdcSimHitStudy::meZdc10Ene_
MonitorElement * meZdc10Ene_
Definition: ZdcSimHitStudy.h:88
ZdcSimHitStudy::meZdcEML10EneP_
MonitorElement * meZdcEML10EneP_
Definition: ZdcSimHitStudy.h:91
dqm::impl::MonitorElement
Definition: MonitorElement.h:98
ZdcSimHitStudy::meZdcEEMCh_
MonitorElement * meZdcEEMCh_
Definition: ZdcSimHitStudy.h:91
ZdcSimHitStudy::meZdcEneEmN3_
MonitorElement * meZdcEneEmN3_
Definition: ZdcSimHitStudy.h:92
ZdcSimHitStudy::meZdcEneTEmP1_
MonitorElement * meZdcEneTEmP1_
Definition: ZdcSimHitStudy.h:100
ZdcSimHitStudy::enetotHadN
double enetotHadN
Definition: ZdcSimHitStudy.h:71
ZdcSimHitStudy::meZdcEneHadPTot_
MonitorElement * meZdcEneHadPTot_
Definition: ZdcSimHitStudy.h:102
ZdcSimHitStudy::meZdcHadL10EneP_
MonitorElement * meZdcHadL10EneP_
Definition: ZdcSimHitStudy.h:90
MessageLogger.h
ZdcSimHitStudy::meZdcEneTEmN1_
MonitorElement * meZdcEneTEmN1_
Definition: ZdcSimHitStudy.h:94
ZdcSimHitStudy::enetotP
double enetotP
Definition: ZdcSimHitStudy.h:72
ZdcSimHitStudy::ZdcSimHitStudy
ZdcSimHitStudy(const edm::ParameterSet &ps)
Definition: ZdcSimHitStudy.cc:33
ESHandle.h
ZdcSimHitStudy::meZdcEneEmP4_
MonitorElement * meZdcEneEmP4_
Definition: ZdcSimHitStudy.h:98
ZdcSimHitStudy::enetot
double enetot
Definition: ZdcSimHitStudy.h:73
ZdcSimHitStudy::genpart_GammaF_energydist
MonitorElement * genpart_GammaF_energydist
Definition: ZdcSimHitStudy.h:117
ZdcSimHitStudy::meZdcEneTEmN4_
MonitorElement * meZdcEneTEmN4_
Definition: ZdcSimHitStudy.h:94
edm::Run
Definition: Run.h:45
ZdcSimHitStudy::meZdcNHitEM_
MonitorElement * meZdcNHitEM_
Definition: ZdcSimHitStudy.h:88
edm::EDGetTokenT< reco::GenParticleCollection >
ZdcSimHitStudy::meZdcEneHadN4_
MonitorElement * meZdcEneHadN4_
Definition: ZdcSimHitStudy.h:93
ZdcSimHitStudy::genpart_GammaB
MonitorElement * genpart_GammaB
Definition: ZdcSimHitStudy.h:118
DQMStore.h
ZdcSimHitStudy::meZdcEneEmN4_
MonitorElement * meZdcEneEmN4_
Definition: ZdcSimHitStudy.h:92
ZdcSimHitStudy::meAllZdcNHit_
MonitorElement * meAllZdcNHit_
Definition: ZdcSimHitStudy.h:86
ZdcSimHitStudy::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: ZdcSimHitStudy.cc:50
ZdcSimHitStudy::meZdcTimeHit_
MonitorElement * meZdcTimeHit_
Definition: ZdcSimHitStudy.h:90
ZdcSimHitStudy::meZdcEneTHadN4_
MonitorElement * meZdcEneTHadN4_
Definition: ZdcSimHitStudy.h:95
ZdcSimHitStudy::meZdcDetectHit_
MonitorElement * meZdcDetectHit_
Definition: ZdcSimHitStudy.h:87
ZdcSimHitStudy::genpart_NeutB
MonitorElement * genpart_NeutB
Definition: ZdcSimHitStudy.h:114
ZdcSimHitStudy::genpart_GammaF_counts
MonitorElement * genpart_GammaF_counts
Definition: ZdcSimHitStudy.h:127
ZdcSimHitStudy::meZdc10EneP_
MonitorElement * meZdc10EneP_
Definition: ZdcSimHitStudy.h:91
ZdcSimHitStudy::genpart_Pi0F
MonitorElement * genpart_Pi0F
Definition: ZdcSimHitStudy.h:108
ZdcSimHitStudy::analyzeHits
void analyzeHits(std::vector< PCaloHit > &)
Definition: ZdcSimHitStudy.cc:654
ZdcSimHitStudy::meZdcChannelHit_
MonitorElement * meZdcChannelHit_
Definition: ZdcSimHitStudy.h:89
ZdcSimHitStudy::meZdcEneHadP3_
MonitorElement * meZdcEneHadP3_
Definition: ZdcSimHitStudy.h:99
ZdcSimHitStudy::meZdcEneEmP3_
MonitorElement * meZdcEneEmP3_
Definition: ZdcSimHitStudy.h:98
GenParticle.h
ZdcSimHitStudy::meBadZdcSecHit_
MonitorElement * meBadZdcSecHit_
Definition: ZdcSimHitStudy.h:86
ZdcSimHitStudy::analyze
void analyze(const edm::Event &e, const edm::EventSetup &c) override
Definition: ZdcSimHitStudy.cc:527
MakerMacros.h
ZdcSimHitStudy::genpart_Pi0F_energydist
MonitorElement * genpart_Pi0F_energydist
Definition: ZdcSimHitStudy.h:109
ZdcSimHitStudy::meZdcEneTEmN2_
MonitorElement * meZdcEneTEmN2_
Definition: ZdcSimHitStudy.h:94
ZdcSimHitStudy::genpart_Pi0B_counts
MonitorElement * genpart_Pi0B_counts
Definition: ZdcSimHitStudy.h:124
ZdcSimHitStudy::meBadZdcDetHit_
MonitorElement * meBadZdcDetHit_
Definition: ZdcSimHitStudy.h:86
ZdcSimHitStudy::genpart_NeutF
MonitorElement * genpart_NeutF
Definition: ZdcSimHitStudy.h:112
ZdcSimHitStudy::meZdcEneEmN1_
MonitorElement * meZdcEneEmN1_
Definition: ZdcSimHitStudy.h:92
ZdcSimHitStudy::genpart_GammaB_energydist
MonitorElement * genpart_GammaB_energydist
Definition: ZdcSimHitStudy.h:119
ZdcSimHitStudy::genpart_Pi0F_counts
MonitorElement * genpart_Pi0F_counts
Definition: ZdcSimHitStudy.h:123
ZdcSimHitStudy::meZdcEneHadN2_
MonitorElement * meZdcEneHadN2_
Definition: ZdcSimHitStudy.h:93
ZdcSimHitStudy::meZdcEneTHadN2_
MonitorElement * meZdcEneTHadN2_
Definition: ZdcSimHitStudy.h:95
Service.h
GenParticleFwd.h
ZdcSimHitStudy::meZdcETime_
MonitorElement * meZdcETime_
Definition: ZdcSimHitStudy.h:87
ZdcSimHitStudy::genpart_Pi0B
MonitorElement * genpart_Pi0B
Definition: ZdcSimHitStudy.h:110
ZdcSimHitStudy::meZdcEneEmP2_
MonitorElement * meZdcEneEmP2_
Definition: ZdcSimHitStudy.h:98
ZdcSimHitStudy::meZdcEneTHadP1_
MonitorElement * meZdcEneTHadP1_
Definition: ZdcSimHitStudy.h:101
ZdcSimHitStudy::meZdcEneHadP1_
MonitorElement * meZdcEneHadP1_
Definition: ZdcSimHitStudy.h:99
HCALHighEnergyHPDFilter_cfi.energy
energy
Definition: HCALHighEnergyHPDFilter_cfi.py:5
ZdcSimHitStudy
Definition: ZdcSimHitStudy.h:58
ZdcSimHitStudy::outFile_
std::string outFile_
Definition: ZdcSimHitStudy.h:81
ZdcSimHitStudy::meZdcEneTHadN3_
MonitorElement * meZdcEneTHadN3_
Definition: ZdcSimHitStudy.h:95
ZdcSimHitStudy::meZdcEneTEmP5_
MonitorElement * meZdcEneTEmP5_
Definition: ZdcSimHitStudy.h:100
DQMEDAnalyzer.h
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
ZdcSimHitStudy::meZdcCorEtotNEtotP_
MonitorElement * meZdcCorEtotNEtotP_
Definition: ZdcSimHitStudy.h:103
DQMEDAnalyzer
Definition: DQMEDAnalyzer.py:1
ZdcSimHitStudy::tok_gen_
edm::EDGetTokenT< reco::GenParticleCollection > tok_gen_
Definition: ZdcSimHitStudy.h:82
ZdcSimHitStudy::verbose_
bool verbose_
Definition: ZdcSimHitStudy.h:84
ZdcSimHitStudy::meZdcCorEEmPEHadP_
MonitorElement * meZdcCorEEmPEHadP_
Definition: ZdcSimHitStudy.h:103
ZdcSimHitStudy::meZdcHadEnergyHit_
MonitorElement * meZdcHadEnergyHit_
Definition: ZdcSimHitStudy.h:90
edm::ParameterSet
Definition: ParameterSet.h:36
ZdcSimHitStudy::genpart_NeutB_counts
MonitorElement * genpart_NeutB_counts
Definition: ZdcSimHitStudy.h:126
ZdcSimHitStudy::zdcHits
std::string zdcHits
Definition: ZdcSimHitStudy.h:81
ZdcSimHitStudy::genpart_GammaF
MonitorElement * genpart_GammaF
Definition: ZdcSimHitStudy.h:116
Event.h
ZdcSimHitStudy::meZdcEneTHadP3_
MonitorElement * meZdcEneTHadP3_
Definition: ZdcSimHitStudy.h:101
ZdcSimHitStudy::meZdcEneEmP5_
MonitorElement * meZdcEneEmP5_
Definition: ZdcSimHitStudy.h:98
ZdcSimHitStudy::enetotN
double enetotN
Definition: ZdcSimHitStudy.h:71
ZdcSimHitStudy::checkHit_
bool checkHit_
Definition: ZdcSimHitStudy.h:84
ZdcSimHitStudy::FillHitValHist
int FillHitValHist(int side, int section, int channel, double energy, double time)
Definition: ZdcSimHitStudy.cc:767
ZdcSimHitStudy::meZdcEHadCh_
MonitorElement * meZdcEHadCh_
Definition: ZdcSimHitStudy.h:91
PCaloHit.h
ZdcSimHitStudy::meZdcNHitHad_
MonitorElement * meZdcNHitHad_
Definition: ZdcSimHitStudy.h:88
ZdcSimHitStudy::meZdcEnePTot_
MonitorElement * meZdcEnePTot_
Definition: ZdcSimHitStudy.h:102
ZdcSimHitStudy::g4Label
std::string g4Label
Definition: ZdcSimHitStudy.h:81
ZdcSimHitStudy::meZdcEMEnergyHit_
MonitorElement * meZdcEMEnergyHit_
Definition: ZdcSimHitStudy.h:90
ZdcSimHitStudy::meZdcEneEmN5_
MonitorElement * meZdcEneEmN5_
Definition: ZdcSimHitStudy.h:92
ZdcSimHitStudy::meZdcEneTHadP2_
MonitorElement * meZdcEneTHadP2_
Definition: ZdcSimHitStudy.h:101
ZdcSimHitStudy::enetotHadP
double enetotHadP
Definition: ZdcSimHitStudy.h:72
ZdcSimHitStudy::meZdcEneHadN1_
MonitorElement * meZdcEneHadN1_
Definition: ZdcSimHitStudy.h:93
edm::EventSetup
Definition: EventSetup.h:57
ZdcSimHitStudy::meZdcEneHadN3_
MonitorElement * meZdcEneHadN3_
Definition: ZdcSimHitStudy.h:93
ZdcSimHitStudy::genpart_NeutF_counts
MonitorElement * genpart_NeutF_counts
Definition: ZdcSimHitStudy.h:125
ZdcSimHitStudy::meZdcEneTHadP4_
MonitorElement * meZdcEneTHadP4_
Definition: ZdcSimHitStudy.h:101
ZdcSimHitStudy::meZdcCorEEmNEHadN_
MonitorElement * meZdcCorEEmNEHadN_
Definition: ZdcSimHitStudy.h:97
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
ZdcSimHitStudy::meZdcEneEmNTot_
MonitorElement * meZdcEneEmNTot_
Definition: ZdcSimHitStudy.h:96
ZdcSimHitStudy::genpart_NeutB_energydist
MonitorElement * genpart_NeutB_energydist
Definition: ZdcSimHitStudy.h:115
ZdcSimHitStudy::meZdcEneEmN2_
MonitorElement * meZdcEneEmN2_
Definition: ZdcSimHitStudy.h:92
ZdcSimHitStudy::meZdcEneEmPTot_
MonitorElement * meZdcEneEmPTot_
Definition: ZdcSimHitStudy.h:102
trackingPlots.section
section
Definition: trackingPlots.py:1380
ZdcSimHitStudy::meZdcEneTEmN3_
MonitorElement * meZdcEneTEmN3_
Definition: ZdcSimHitStudy.h:94
ZdcSimHitStudy::meZdcEneTEmP3_
MonitorElement * meZdcEneTEmP3_
Definition: ZdcSimHitStudy.h:100
ZdcSimHitStudy::meZdcEneEmP1_
MonitorElement * meZdcEneEmP1_
Definition: ZdcSimHitStudy.h:98
ZdcSimHitStudy::meZdcNHit_
MonitorElement * meZdcNHit_
Definition: ZdcSimHitStudy.h:87
ZdcSimHitStudy::meZdcSectionHit_
MonitorElement * meZdcSectionHit_
Definition: ZdcSimHitStudy.h:89
ZdcSimHitStudy::meZdcEneTHadN1_
MonitorElement * meZdcEneTHadN1_
Definition: ZdcSimHitStudy.h:95
ZdcSimHitStudy::meZdcEneTEmP2_
MonitorElement * meZdcEneTEmP2_
Definition: ZdcSimHitStudy.h:100
ZdcSimHitStudy::tok_hits_
edm::EDGetTokenT< edm::PCaloHitContainer > tok_hits_
Definition: ZdcSimHitStudy.h:83
ZdcSimHitStudy::meZdcEneHadNTot_
MonitorElement * meZdcEneHadNTot_
Definition: ZdcSimHitStudy.h:96
ZdcSimHitStudy::meZdcNHitLum_
MonitorElement * meZdcNHitLum_
Definition: ZdcSimHitStudy.h:88
Frameworkfwd.h
ZdcSimHitStudy::genpart_Pi0B_energydist
MonitorElement * genpart_Pi0B_energydist
Definition: ZdcSimHitStudy.h:111
ZdcSimHitStudy::meZdcEnergyHit_
MonitorElement * meZdcEnergyHit_
Definition: ZdcSimHitStudy.h:89
ZdcSimHitStudy::meZdcEneHadP2_
MonitorElement * meZdcEneHadP2_
Definition: ZdcSimHitStudy.h:99
ZdcSimHitStudy::meZdcEneHadP4_
MonitorElement * meZdcEneHadP4_
Definition: ZdcSimHitStudy.h:99
ZdcSimHitStudy::enetotEmN
double enetotEmN
Definition: ZdcSimHitStudy.h:71
ZdcSimHitStudy::enetotEmP
double enetotEmP
Definition: ZdcSimHitStudy.h:72
ZdcSimHitStudy::meZdcSideHit_
MonitorElement * meZdcSideHit_
Definition: ZdcSimHitStudy.h:87
EventSetup.h
ZdcSimHitStudy::meZdcEneTEmN5_
MonitorElement * meZdcEneTEmN5_
Definition: ZdcSimHitStudy.h:94
ZdcSimHitStudy::meZdcEneTot_
MonitorElement * meZdcEneTot_
Definition: ZdcSimHitStudy.h:103
PCaloHitContainer.h
ZdcSimHitStudy::genpart_GammaB_counts
MonitorElement * genpart_GammaB_counts
Definition: ZdcSimHitStudy.h:128
dqm::implementation::IBooker
Definition: DQMStore.h:43
ZdcSimHitStudy::meZdcTimeWHit_
MonitorElement * meZdcTimeWHit_
Definition: ZdcSimHitStudy.h:89
ZdcSimHitStudy::meZdcEneNTot_
MonitorElement * meZdcEneNTot_
Definition: ZdcSimHitStudy.h:96
ParameterSet.h
ZdcSimHitStudy::genpart_NeutF_energydist
MonitorElement * genpart_NeutF_energydist
Definition: ZdcSimHitStudy.h:113
ZdcSimHitStudy::meBadZdcIdHit_
MonitorElement * meBadZdcIdHit_
Definition: ZdcSimHitStudy.h:86
ntuplemaker.time
time
Definition: ntuplemaker.py:310
ZdcSimHitStudy::~ZdcSimHitStudy
~ZdcSimHitStudy() override
Definition: ZdcSimHitStudy.cc:48
edm::Event
Definition: Event.h:73
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
ZdcSimHitStudy::meZdcEneTEmP4_
MonitorElement * meZdcEneTEmP4_
Definition: ZdcSimHitStudy.h:100