CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
ElectronStudy Class Reference
Inheritance diagram for ElectronStudy:
edm::one::EDAnalyzer< edm::one::SharedResources > edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

 ElectronStudy (const edm::ParameterSet &ps)
 
 ~ElectronStudy () override
 
- Public Member Functions inherited from edm::one::EDAnalyzer< edm::one::SharedResources >
 EDAnalyzer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
- Public Member Functions inherited from edm::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDAnalyzerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from edm::one::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Member Functions

void analyze (edm::Event const &, edm::EventSetup const &) override
 
void beginJob () override
 

Private Attributes

double etaBins_ [NEtaBins_+1]
 
TH1F * histoE1x1 [NPBins_+1][NEtaBins_+1]
 
TH1F * histoE3x3 [NPBins_+1][NEtaBins_+1]
 
TH1F * histoE5x5 [NPBins_+1][NEtaBins_+1]
 
TH1F * histoR1 [NPBins_+1][NEtaBins_+1]
 
TH1F * histoR2 [NPBins_+1][NEtaBins_+1]
 
TH1F * histoR3 [NPBins_+1][NEtaBins_+1]
 
bool histos_
 
int hotZone_
 
double pBins_ [NPBins_+1]
 
edm::EDGetTokenT< edm::PCaloHitContainertok_EBhit_
 
edm::EDGetTokenT< edm::PCaloHitContainertok_EEhit_
 
edm::EDGetTokenT< edm::SimTrackContainertok_simTk_
 
edm::EDGetTokenT< edm::SimVertexContainertok_simVtx_
 
int verbose_
 

Static Private Attributes

static const int NEtaBins_ = 3
 
static const int NPBins_ = 8
 

Additional Inherited Members

- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Protected Member Functions inherited from edm::EDConsumerBase
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 

Detailed Description

Definition at line 39 of file ElectronStudy.cc.

Constructor & Destructor Documentation

◆ ElectronStudy()

ElectronStudy::ElectronStudy ( const edm::ParameterSet ps)
explicit

Definition at line 69 of file ElectronStudy.cc.

69  {
70  usesResource("TFileService");
71 
72  std::string g4Label = ps.getUntrackedParameter<std::string>("ModuleLabel", "g4SimHits");
73  std::string hitLabEB = ps.getUntrackedParameter<std::string>("EBCollection", "EcalHitsEB");
74  std::string hitLabEE = ps.getUntrackedParameter<std::string>("EECollection", "EcalHitsEE");
75 
76  tok_EBhit_ = consumes<edm::PCaloHitContainer>(edm::InputTag(g4Label, hitLabEB));
77  tok_EEhit_ = consumes<edm::PCaloHitContainer>(edm::InputTag(g4Label, hitLabEE));
78  tok_simTk_ = consumes<edm::SimTrackContainer>(edm::InputTag(g4Label));
79  tok_simVtx_ = consumes<edm::SimVertexContainer>(edm::InputTag(g4Label));
80 
81  hotZone_ = ps.getUntrackedParameter<int>("HotZone", 0);
82  verbose_ = ps.getUntrackedParameter<int>("Verbosity", 0);
83  edm::LogInfo("ElectronStudy") << "Module Label: " << g4Label << " Hits: " << hitLabEB << ", " << hitLabEE;
84 
85  double tempP[NPBins_ + 1] = {0.0, 10.0, 20.0, 40.0, 60.0, 100.0, 500.0, 1000.0, 10000.0};
86  double tempEta[NEtaBins_ + 1] = {0.0, 1.2, 1.6, 3.0};
87 
88  for (int i = 0; i < NPBins_ + 1; i++)
89  pBins_[i] = tempP[i];
90  for (int i = 0; i < NEtaBins_ + 1; i++)
91  etaBins_[i] = tempEta[i];
92 
94  if (!tfile.isAvailable()) {
95  edm::LogInfo("ElectronStudy") << "TFileService unavailable: no histograms";
96  histos_ = false;
97  } else {
98  char name[20], title[200], cpbin[30], cebin[30];
99  histos_ = true;
100  for (unsigned int i = 0; i < NPBins_ + 1; ++i) {
101  if (i == 0)
102  sprintf(cpbin, " All p");
103  else
104  sprintf(cpbin, " p (%6.0f:%6.0f)", pBins_[i - 1], pBins_[i]);
105  for (unsigned int j = 0; j < NEtaBins_ + 1; ++j) {
106  if (j == 0)
107  sprintf(cebin, " All #eta");
108  else
109  sprintf(cebin, " #eta (%4.1f:%4.1f)", etaBins_[j - 1], etaBins_[j]);
110  sprintf(name, "R1%d%d", i, j);
111  sprintf(title, "E1/E9 for %s%s", cpbin, cebin);
112  histoR1[i][j] = tfile->make<TH1F>(name, title, 100, 0., 2.);
113  histoR1[i][j]->GetXaxis()->SetTitle(title);
114  histoR1[i][j]->GetYaxis()->SetTitle("Tracks");
115  sprintf(name, "R2%d%d", i, j);
116  sprintf(title, "E1/E25 for %s%s", cpbin, cebin);
117  histoR2[i][j] = tfile->make<TH1F>(name, title, 100, 0., 2.);
118  histoR2[i][j]->GetXaxis()->SetTitle(title);
119  histoR2[i][j]->GetYaxis()->SetTitle("Tracks");
120  sprintf(name, "R3%d%d", i, j);
121  sprintf(title, "E9/E25 for %s%s", cpbin, cebin);
122  histoR3[i][j] = tfile->make<TH1F>(name, title, 100, 0., 2.);
123  histoR3[i][j]->GetXaxis()->SetTitle(title);
124  histoR3[i][j]->GetYaxis()->SetTitle("Tracks");
125  sprintf(name, "E1x1%d%d", i, j);
126  sprintf(title, "E1/P for %s%s", cpbin, cebin);
127  histoE1x1[i][j] = tfile->make<TH1F>(name, title, 100, 0., 2.);
128  histoE1x1[i][j]->GetXaxis()->SetTitle(title);
129  histoE1x1[i][j]->GetYaxis()->SetTitle("Tracks");
130  sprintf(name, "E3x3%d%d", i, j);
131  sprintf(title, "E9/P for %s%s", cpbin, cebin);
132  histoE3x3[i][j] = tfile->make<TH1F>(name, title, 100, 0., 2.);
133  histoE3x3[i][j]->GetXaxis()->SetTitle(title);
134  histoE3x3[i][j]->GetYaxis()->SetTitle("Tracks");
135  sprintf(name, "E5x5%d%d", i, j);
136  sprintf(title, "E25/P for %s%s", cpbin, cebin);
137  histoE5x5[i][j] = tfile->make<TH1F>(name, title, 100, 0., 2.);
138  histoE5x5[i][j]->GetXaxis()->SetTitle(title);
139  histoE5x5[i][j]->GetYaxis()->SetTitle("Tracks");
140  }
141  }
142  }
143 }

References etaBins_, edm::ParameterSet::getUntrackedParameter(), histoE1x1, histoE3x3, histoE5x5, histoR1, histoR2, histoR3, histos_, hotZone_, mps_fire::i, dqmiolumiharvest::j, Skims_PA_cff::name, NEtaBins_, NPBins_, pBins_, AlCaHLTBitMon_QueryRunRegistry::string, compare::tfile, overlapproblemtsosanalyzer_cfi::title, tok_EBhit_, tok_EEhit_, tok_simTk_, tok_simVtx_, and verbose_.

◆ ~ElectronStudy()

ElectronStudy::~ElectronStudy ( )
inlineoverride

Definition at line 42 of file ElectronStudy.cc.

42 {}

Member Function Documentation

◆ analyze()

void ElectronStudy::analyze ( edm::Event const &  iEvent,
edm::EventSetup const &  iSetup 
)
overrideprivatevirtual

Implements edm::one::EDAnalyzerBase.

Definition at line 154 of file ElectronStudy.cc.

154  {
155  if (verbose_ > 1)
156  edm::LogVerbatim("IsoTrack") << "Run = " << iEvent.id().run() << " Event = " << iEvent.id().event();
157 
158  // get Geometry, B-field, Topology
160  iSetup.get<IdealMagneticFieldRecord>().get(bFieldH);
161  const MagneticField* bField = bFieldH.product();
162 
164  iSetup.get<CaloGeometryRecord>().get(pG);
165  const CaloGeometry* geo = pG.product();
166 
167  edm::ESHandle<CaloTopology> theCaloTopology;
168  iSetup.get<CaloTopologyRecord>().get(theCaloTopology);
169  const CaloTopology* caloTopology = theCaloTopology.product();
170 
171  // get PCaloHits for ecal barrel
173  iEvent.getByToken(tok_EBhit_, caloHitEB);
174 
175  // get PCaloHits for ecal endcap
177  iEvent.getByToken(tok_EEhit_, caloHitEE);
178 
179  // get sim tracks
181  iEvent.getByToken(tok_simTk_, SimTk);
182 
183  // get sim vertices
185  iEvent.getByToken(tok_simVtx_, SimVtx);
186 
187  if (verbose_ > 0)
188  edm::LogVerbatim("IsoTrack") << "ElectronStudy: hits valid[EB]: " << caloHitEB.isValid()
189  << " valid[EE]: " << caloHitEE.isValid();
190 
191  if (caloHitEB.isValid() && caloHitEE.isValid()) {
192  unsigned int indx;
193  if (verbose_ > 2) {
194  edm::PCaloHitContainer::const_iterator ihit;
195  for (ihit = caloHitEB->begin(), indx = 0; ihit != caloHitEB->end(); ihit++, indx++) {
196  EBDetId id = ihit->id();
197  edm::LogVerbatim("IsoTrack") << "Hit[" << indx << "] " << id << " E " << ihit->energy() << " T "
198  << ihit->time();
199  }
200  for (ihit = caloHitEE->begin(), indx = 0; ihit != caloHitEE->end(); ihit++, indx++) {
201  EEDetId id = ihit->id();
202  edm::LogVerbatim("IsoTrack") << "Hit[" << indx << "] " << id << " E " << ihit->energy() << " T "
203  << ihit->time();
204  }
205  }
206  edm::SimTrackContainer::const_iterator simTrkItr = SimTk->begin();
207  for (indx = 0; simTrkItr != SimTk->end(); simTrkItr++, indx++) {
208  if (verbose_ > 0)
209  edm::LogVerbatim("IsoTrack") << "ElectronStudy: Track[" << indx << "] ID " << simTrkItr->trackId() << " type "
210  << simTrkItr->type() << " charge " << simTrkItr->charge() << " p "
211  << simTrkItr->momentum() << " Generator Index " << simTrkItr->genpartIndex()
212  << " vertex " << simTrkItr->vertIndex();
213  if (std::abs(simTrkItr->type()) == 11 && simTrkItr->vertIndex() != -1) {
214  int thisTrk = simTrkItr->trackId();
215  spr::propagatedTrackDirection trkD = spr::propagateCALO(thisTrk, SimTk, SimVtx, geo, bField, (verbose_ > 1));
216  if (trkD.okECAL) {
217  const DetId isoCell = trkD.detIdECAL;
218  DetId hotCell = isoCell;
219  if (hotZone_ > 0)
220  hotCell = spr::hotCrystal(
221  isoCell, caloHitEB, caloHitEE, geo, caloTopology, hotZone_, hotZone_, -500.0, 500.0, (verbose_ > 1));
222  double e1x1 = spr::eECALmatrix(
223  hotCell, caloHitEB, caloHitEE, geo, caloTopology, 0, 0, -100.0, -100.0, -500.0, 500.0, (verbose_ > 2));
224  double e3x3 = spr::eECALmatrix(
225  hotCell, caloHitEB, caloHitEE, geo, caloTopology, 1, 1, -100.0, -100.0, -500.0, 500.0, (verbose_ > 2));
226  double e5x5 = spr::eECALmatrix(
227  hotCell, caloHitEB, caloHitEE, geo, caloTopology, 2, 2, -100.0, -100.0, -500.0, 500.0, (verbose_ > 2));
228  double p = simTrkItr->momentum().P();
229  double eta = std::abs(simTrkItr->momentum().eta());
230  int etaBin = -1, momBin = -1;
231  for (int ieta = 0; ieta < NEtaBins_; ieta++) {
232  if (eta > etaBins_[ieta] && eta < etaBins_[ieta + 1])
233  etaBin = ieta + 1;
234  }
235  for (int ipt = 0; ipt < NPBins_; ipt++) {
236  if (p > pBins_[ipt] && p < pBins_[ipt + 1])
237  momBin = ipt + 1;
238  }
239  double r1 = -1, r2 = -1, r3 = -1;
240  if (e3x3 > 0)
241  r1 = e1x1 / e3x3;
242  if (e5x5 > 0) {
243  r2 = e1x1 / e5x5;
244  r3 = e3x3 / e5x5;
245  }
246  if (verbose_ > 0) {
247  edm::LogVerbatim("IsoTrack") << "ElectronStudy: p " << p << " [" << momBin << "] eta " << eta << " ["
248  << etaBin << "] Cell 0x" << std::hex << isoCell() << std::dec;
249  if (isoCell.subdetId() == EcalBarrel) {
250  edm::LogVerbatim("IsoTrack") << EBDetId(isoCell);
251  } else if (isoCell.subdetId() == EcalEndcap) {
252  edm::LogVerbatim("IsoTrack") << EEDetId(isoCell);
253  }
254  edm::LogVerbatim("IsoTrack") << " e1x1 " << e1x1 << "|" << r1 << "|" << r2 << " e3x3 " << e3x3 << "|" << r3
255  << " e5x5 " << e5x5;
256  }
257  if (histos_) {
258  histoR1[0][0]->Fill(r1);
259  histoR2[0][0]->Fill(r2);
260  histoR3[0][0]->Fill(r3);
261  histoE1x1[0][0]->Fill(e1x1 / p);
262  histoE3x3[0][0]->Fill(e3x3 / p);
263  histoE5x5[0][0]->Fill(e5x5 / p);
264  if (momBin > 0) {
265  histoR1[momBin][0]->Fill(r1);
266  histoR2[momBin][0]->Fill(r2);
267  histoR3[momBin][0]->Fill(r3);
268  histoE1x1[momBin][0]->Fill(e1x1 / p);
269  histoE3x3[momBin][0]->Fill(e3x3 / p);
270  histoE5x5[momBin][0]->Fill(e5x5 / p);
271  }
272  if (etaBin > 0) {
273  histoR1[0][etaBin]->Fill(r1);
274  histoR2[0][etaBin]->Fill(r2);
275  histoR3[0][etaBin]->Fill(r3);
276  histoE1x1[0][etaBin]->Fill(e1x1 / p);
277  histoE3x3[0][etaBin]->Fill(e3x3 / p);
278  histoE5x5[0][etaBin]->Fill(e5x5 / p);
279  if (momBin > 0) {
280  histoR1[momBin][etaBin]->Fill(r1);
281  histoR2[momBin][etaBin]->Fill(r2);
282  histoR3[momBin][etaBin]->Fill(r3);
283  histoE1x1[momBin][etaBin]->Fill(e1x1 / p);
284  histoE3x3[momBin][etaBin]->Fill(e3x3 / p);
285  histoE5x5[momBin][etaBin]->Fill(e5x5 / p);
286  }
287  }
288  }
289  }
290  }
291  }
292  }
293 }

References funct::abs(), Calorimetry_cff::bField, TauDecayModes::dec, spr::propagatedTrackDirection::detIdECAL, EcalBarrel, EcalEndcap, spr::eECALmatrix(), PVValHelper::eta, etaBin(), etaBins_, edm::EventSetup::get(), get, histoE1x1, histoE3x3, histoE5x5, histoR1, histoR2, histoR3, histos_, spr::hotCrystal(), hotZone_, LEDCalibrationChannels::ieta, iEvent, edm::HandleBase::isValid(), NEtaBins_, NPBins_, spr::propagatedTrackDirection::okECAL, AlCaHLTBitMon_ParallelJobs::p, pBins_, edm::ESHandle< T >::product(), spr::propagateCALO(), diffTwoXMLs::r1, diffTwoXMLs::r2, DetId::subdetId(), tok_EBhit_, tok_EEhit_, tok_simTk_, tok_simVtx_, and verbose_.

◆ beginJob()

void ElectronStudy::beginJob ( void  )
inlineoverrideprivatevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 48 of file ElectronStudy.cc.

48 {}

◆ fillDescriptions()

void ElectronStudy::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 145 of file ElectronStudy.cc.

145  {
147  desc.addUntracked<std::string>("ModuleLabel", "g4SimHits");
148  desc.addUntracked<std::string>("EBCollection", "EcalHitsEB");
149  desc.addUntracked<std::string>("EECollection", "EcalHitsEE");
150  desc.addUntracked<int>("Verbosity", 0);
151  descriptions.add("electronStudy", desc);
152 }

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::addUntracked(), and AlCaHLTBitMon_QueryRunRegistry::string.

Member Data Documentation

◆ etaBins_

double ElectronStudy::etaBins_[NEtaBins_+1]
private

Definition at line 52 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ histoE1x1

TH1F* ElectronStudy::histoE1x1[NPBins_+1][NEtaBins_+1]
private

Definition at line 64 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ histoE3x3

TH1F* ElectronStudy::histoE3x3[NPBins_+1][NEtaBins_+1]
private

Definition at line 65 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ histoE5x5

TH1F* ElectronStudy::histoE5x5[NPBins_+1][NEtaBins_+1]
private

Definition at line 66 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ histoR1

TH1F* ElectronStudy::histoR1[NPBins_+1][NEtaBins_+1]
private

Definition at line 61 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ histoR2

TH1F* ElectronStudy::histoR2[NPBins_+1][NEtaBins_+1]
private

Definition at line 62 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ histoR3

TH1F* ElectronStudy::histoR3[NPBins_+1][NEtaBins_+1]
private

Definition at line 63 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ histos_

bool ElectronStudy::histos_
private

Definition at line 60 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ hotZone_

int ElectronStudy::hotZone_
private

Definition at line 59 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ NEtaBins_

const int ElectronStudy::NEtaBins_ = 3
staticprivate

Definition at line 50 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ NPBins_

const int ElectronStudy::NPBins_ = 8
staticprivate

Definition at line 51 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ pBins_

double ElectronStudy::pBins_[NPBins_+1]
private

Definition at line 52 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ tok_EBhit_

edm::EDGetTokenT<edm::PCaloHitContainer> ElectronStudy::tok_EBhit_
private

Definition at line 54 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ tok_EEhit_

edm::EDGetTokenT<edm::PCaloHitContainer> ElectronStudy::tok_EEhit_
private

Definition at line 55 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ tok_simTk_

edm::EDGetTokenT<edm::SimTrackContainer> ElectronStudy::tok_simTk_
private

Definition at line 56 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ tok_simVtx_

edm::EDGetTokenT<edm::SimVertexContainer> ElectronStudy::tok_simVtx_
private

Definition at line 57 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

◆ verbose_

int ElectronStudy::verbose_
private

Definition at line 59 of file ElectronStudy.cc.

Referenced by analyze(), and ElectronStudy().

edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
mps_fire.i
i
Definition: mps_fire.py:355
spr::hotCrystal
DetId hotCrystal(const DetId &detId, edm::Handle< T > &hitsEB, edm::Handle< T > &hitsEE, const CaloGeometry *geo, const CaloTopology *caloTopology, int ieta, int iphi, double tMin=-500, double tMax=500, bool debug=false)
etaBin
int etaBin(const l1t::HGCalMulticluster *cl)
Definition: L1EGammaEEProducer.cc:19
CaloGeometryRecord
Definition: CaloGeometryRecord.h:30
EBDetId
Definition: EBDetId.h:17
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
edm::LogInfo
Definition: MessageLogger.h:254
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
ElectronStudy::tok_simVtx_
edm::EDGetTokenT< edm::SimVertexContainer > tok_simVtx_
Definition: ElectronStudy.cc:57
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
CaloTopologyRecord
Definition: CaloTopologyRecord.h:10
edm::Handle
Definition: AssociativeIterator.h:50
ElectronStudy::histoE5x5
TH1F * histoE5x5[NPBins_+1][NEtaBins_+1]
Definition: ElectronStudy.cc:66
CaloTopology
Definition: CaloTopology.h:19
EcalBarrel
Definition: EcalSubdetector.h:10
ElectronStudy::NPBins_
static const int NPBins_
Definition: ElectronStudy.cc:51
IdealMagneticFieldRecord
Definition: IdealMagneticFieldRecord.h:11
DetId
Definition: DetId.h:17
CaloGeometry
Definition: CaloGeometry.h:21
spr::eECALmatrix
double eECALmatrix(const DetId &detId, edm::Handle< T > &hitsEB, edm::Handle< T > &hitsEE, const CaloGeometry *geo, const CaloTopology *caloTopology, int ieta, int iphi, double ebThr=-100, double eeThr=-100, double tMin=-500, double tMax=500, bool debug=false)
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:57
ElectronStudy::pBins_
double pBins_[NPBins_+1]
Definition: ElectronStudy.cc:52
spr::propagatedTrackDirection::okECAL
bool okECAL
Definition: CaloPropagateTrack.h:59
PVValHelper::eta
Definition: PVValidationHelpers.h:69
ElectronStudy::hotZone_
int hotZone_
Definition: ElectronStudy.cc:59
ElectronStudy::histos_
bool histos_
Definition: ElectronStudy.cc:60
tfile
Definition: tfile.py:1
edm::ESHandle< MagneticField >
ElectronStudy::verbose_
int verbose_
Definition: ElectronStudy.cc:59
ElectronStudy::tok_simTk_
edm::EDGetTokenT< edm::SimTrackContainer > tok_simTk_
Definition: ElectronStudy.cc:56
ElectronStudy::etaBins_
double etaBins_[NEtaBins_+1]
Definition: ElectronStudy.cc:52
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
EEDetId
Definition: EEDetId.h:14
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
EcalEndcap
Definition: EcalSubdetector.h:10
ElectronStudy::NEtaBins_
static const int NEtaBins_
Definition: ElectronStudy.cc:50
edm::ParameterSetDescription::addUntracked
ParameterDescriptionBase * addUntracked(U const &iLabel, T const &value)
Definition: ParameterSetDescription.h:100
LEDCalibrationChannels.ieta
ieta
Definition: LEDCalibrationChannels.py:63
ElectronStudy::histoR2
TH1F * histoR2[NPBins_+1][NEtaBins_+1]
Definition: ElectronStudy.cc:62
ElectronStudy::histoR3
TH1F * histoR3[NPBins_+1][NEtaBins_+1]
Definition: ElectronStudy.cc:63
diffTwoXMLs.r2
r2
Definition: diffTwoXMLs.py:73
edm::Service< TFileService >
iEvent
int iEvent
Definition: GenABIO.cc:224
edm::LogVerbatim
Definition: MessageLogger.h:297
get
#define get
compare.tfile
tfile
Definition: compare.py:325
overlapproblemtsosanalyzer_cfi.title
title
Definition: overlapproblemtsosanalyzer_cfi.py:7
spr::propagateCALO
std::vector< spr::propagatedTrackID > propagateCALO(edm::Handle< reco::TrackCollection > &trkCollection, const CaloGeometry *geo, const MagneticField *bField, const std::string &theTrackQuality, bool debug=false)
Definition: CaloPropagateTrack.cc:141
ElectronStudy::histoE3x3
TH1F * histoE3x3[NPBins_+1][NEtaBins_+1]
Definition: ElectronStudy.cc:65
Calorimetry_cff.bField
bField
Definition: Calorimetry_cff.py:292
diffTwoXMLs.r1
r1
Definition: diffTwoXMLs.py:53
ElectronStudy::tok_EEhit_
edm::EDGetTokenT< edm::PCaloHitContainer > tok_EEhit_
Definition: ElectronStudy.cc:55
spr::propagatedTrackDirection::detIdECAL
DetId detIdECAL
Definition: CaloPropagateTrack.h:60
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
ElectronStudy::tok_EBhit_
edm::EDGetTokenT< edm::PCaloHitContainer > tok_EBhit_
Definition: ElectronStudy.cc:54
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
MagneticField
Definition: MagneticField.h:19
ElectronStudy::histoE1x1
TH1F * histoE1x1[NPBins_+1][NEtaBins_+1]
Definition: ElectronStudy.cc:64
TauDecayModes.dec
dec
Definition: TauDecayModes.py:143
edm::InputTag
Definition: InputTag.h:15
ElectronStudy::histoR1
TH1F * histoR1[NPBins_+1][NEtaBins_+1]
Definition: ElectronStudy.cc:61
spr::propagatedTrackDirection
Definition: CaloPropagateTrack.h:53