CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
ValidIsoTrkCalib Class Reference
Inheritance diagram for ValidIsoTrkCalib:
edm::EDAnalyzer edm::EDConsumerBase

Public Member Functions

 ValidIsoTrkCalib (const edm::ParameterSet &)
 
 ~ValidIsoTrkCalib () override
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
 ~EDAnalyzer () 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)
 

Private Member Functions

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

Private Attributes

bool allowMissingInputs_
 
double associationConeSize_
 
string AxB_
 
double calibrationConeSize_
 
float CentHitFactor
 
float delR
 
int dietatr
 
int diphitr
 
float e3x3After
 
float e3x3Before
 
float e5x5After
 
float e5x5Before
 
float eAfterDepth1
 
float eAfterDepth2
 
float eBeforeDepth1
 
float eBeforeDepth2
 
float eCentHitAfter
 
float eCentHitBefore
 
float eClustAfter
 
float eClustBefore
 
float eECAL
 
Float_t emEnergy
 
double energyECALmip
 
double energyMaxIso
 
double energyMinIso
 
float etaTrack
 
float eTrack
 
int eventNumber
 
edm::Service< TFileServicefs
 
TTree * fTree
 
int gen
 
std::vector< edm::InputTaggenecalLabel_
 
float genEta [500]
 
InputTag genhbheLabel_
 
InputTag genhoLabel_
 
float genPhi [500]
 
float genPt [500]
 
const CaloGeometrygeo
 
float HTime [100]
 
float iDr
 
int iEta
 
int iEtaTr
 
int iPhi
 
int iPhiTr
 
int iso
 
float isoEta [500]
 
float isoPhi [500]
 
float isoPt [500]
 
float iTime
 
double maxPNear
 
int MinNTECHitsEndcap
 
int MinNTrackHitsBarrel
 
int Nhits
 
int NisoTrk
 
TH1F * nTracks
 
int numHits
 
float numValidTrkHits
 
float numValidTrkStrips
 
float numVH
 
float numVS
 
string outputFileName_
 
TrackAssociatorParameters parameters_
 
float phiTrack
 
int pix
 
float pixEta [500]
 
float pixPhi [500]
 
float pixPt [500]
 
float ptNear
 
float PtNearBy
 
float ptrack
 
const HcalRespCorrsrespRecalib
 
int runNumber
 
float rvert
 
double taECALCone_
 
double taHCALCone_
 
bool takeGenTracks_
 
Float_t targetE
 
edm::EDGetTokenT< reco::TrackCollectiontok_genTrack_
 
edm::EDGetTokenT< HBHERecHitCollectiontok_hbhe_
 
edm::EDGetTokenT< HORecHitCollectiontok_ho_
 
edm::EDGetTokenT< reco::TrackCollectiontok_track1_
 
edm::EDGetTokenT< reco::IsolatedPixelTrackCandidateCollectiontok_track_
 
TrackDetectorAssociator trackAssociator_
 
float trackE
 
float trackEta
 
float trackPhi
 
float trackPt
 
TTree * tTree
 
Float_t xTrkEcal
 
Float_t xTrkHcal
 
Float_t yTrkEcal
 
Float_t yTrkHcal
 
Float_t zTrkEcal
 
Float_t zTrkHcal
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
static bool wantsGlobalLuminosityBlocks ()
 
static bool wantsGlobalRuns ()
 
static bool wantsStreamLuminosityBlocks ()
 
static bool wantsStreamRuns ()
 
- 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 66 of file ValidIsoTrkCalib.cc.

Constructor & Destructor Documentation

◆ ValidIsoTrkCalib()

ValidIsoTrkCalib::ValidIsoTrkCalib ( const edm::ParameterSet iConfig)
explicit

Definition at line 191 of file ValidIsoTrkCalib.cc.

193 {
194  //takeAllRecHits_=iConfig.getUntrackedParameter<bool>("takeAllRecHits");
195  takeGenTracks_ = iConfig.getUntrackedParameter<bool>("takeGenTracks");
196 
197  tok_genTrack_ = consumes<reco::TrackCollection>(iConfig.getParameter<edm::InputTag>("genTracksLabel"));
198  genhbheLabel_ = iConfig.getParameter<edm::InputTag>("genHBHE");
199  //genhoLabel_=iConfig.getParameter<edm::InputTag>("genHO");
200  //genecalLabel_=iConfig.getParameter<std::vector<edm::InputTag> >("genECAL");
201 
202  // m_hcalLabel = iConfig.getUntrackedParameter<std::string> ("hcalRecHitsLabel","hbhereco");
203 
204  tok_hbhe_ = consumes<HBHERecHitCollection>(iConfig.getParameter<edm::InputTag>("hbheInput"));
205  tok_ho_ = consumes<HORecHitCollection>(iConfig.getParameter<edm::InputTag>("hoInput"));
206  //eLabel_=iConfig.getParameter<edm::InputTag>("eInput");
207  tok_track_ =
208  consumes<reco::IsolatedPixelTrackCandidateCollection>(iConfig.getParameter<edm::InputTag>("HcalIsolTrackInput"));
209  tok_track1_ = consumes<reco::TrackCollection>(iConfig.getParameter<edm::InputTag>("trackInput"));
210 
211  associationConeSize_ = iConfig.getParameter<double>("associationConeSize");
212  allowMissingInputs_ = iConfig.getUntrackedParameter<bool>("allowMissingInputs", true);
213  // outputFileName_=iConfig.getParameter<std::string>("outputFileName");
214  // calibFactorsFileName_=iConfig.getParameter<std::string>("calibFactorsFileName");
215 
216  AxB_ = iConfig.getParameter<std::string>("AxB");
217  calibrationConeSize_ = iConfig.getParameter<double>("calibrationConeSize");
218 
219  MinNTrackHitsBarrel = iConfig.getParameter<int>("MinNTrackHitsBarrel");
220  MinNTECHitsEndcap = iConfig.getParameter<int>("MinNTECHitsEndcap");
221  energyECALmip = iConfig.getParameter<double>("energyECALmip");
222  energyMinIso = iConfig.getParameter<double>("energyMinIso");
223  energyMaxIso = iConfig.getParameter<double>("energyMaxIso");
224  maxPNear = iConfig.getParameter<double>("maxPNear");
225 
226  edm::ParameterSet parameters = iConfig.getParameter<edm::ParameterSet>("TrackAssociatorParameters");
230 
231  // taECALCone_=iConfig.getUntrackedParameter<double>("TrackAssociatorECALCone",0.5);
232  //taHCALCone_=iConfig.getUntrackedParameter<double>("TrackAssociatorHCALCone",0.6);
233 }

References edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), and AlCaHLTBitMon_QueryRunRegistry::string.

◆ ~ValidIsoTrkCalib()

ValidIsoTrkCalib::~ValidIsoTrkCalib ( )
override

Definition at line 235 of file ValidIsoTrkCalib.cc.

235  {
236  // do anything here that needs to be done at desctruction time
237  // (e.g. close files, deallocate resources etc.)
238 }

Member Function Documentation

◆ analyze()

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

Implements edm::EDAnalyzer.

Definition at line 241 of file ValidIsoTrkCalib.cc.

241  {
242  using namespace edm;
243 
244  try {
245  edm::ESHandle<HcalRespCorrs> recalibCorrs;
246  iSetup.get<HcalRespCorrsRcd>().get("recalibrate", recalibCorrs);
247  respRecalib = recalibCorrs.product();
248 
249  LogInfo("CalibConstants") << " Loaded: OK ";
250 
251  } catch (const cms::Exception& e) {
252  LogWarning("CalibConstants") << " Not Found!! ";
253  }
254 
256  iEvent.getByToken(tok_genTrack_, generalTracks);
257 
259  iEvent.getByToken(tok_track1_, isoProdTracks);
260 
262  //edm::Handle<reco::TrackCollection> isoPixelTracks;
263  iEvent.getByToken(tok_track_, isoPixelTracks);
264 
265  /*
266  edm::Handle<EcalRecHitCollection> ecal;
267  iEvent.getByLabel(eLabel_,ecal);
268  const EcalRecHitCollection Hitecal = *(ecal.product());
269  */
270 
272  iEvent.getByToken(tok_hbhe_, hbhe);
273  const HBHERecHitCollection Hithbhe = *(hbhe.product());
274 
276  iSetup.get<CaloGeometryRecord>().get(pG);
277  geo = pG.product();
278 
279  const HcalGeometry* gHcal = static_cast<const HcalGeometry*>(geo->getSubdetectorGeometry(DetId::Hcal, HcalBarrel));
280  //Note: even though it says HcalBarrel, we actually get the whole Hcal detector geometry!
281 
282  // Lumi_n=iEvent.luminosityBlock();
283  parameters_.useEcal = true;
284  parameters_.useHcal = true;
285  parameters_.useCalo = false;
286  parameters_.useMuon = false;
287  //parameters_.dREcal = taECALCone_;
288  //parameters_.dRHcal = taHCALCone_;
289 
290  //cout<<"Hello World. TrackCollectionSize: "<< isoPixelTracks->size()<<endl;
291 
292  if (isoPixelTracks->empty())
293  return;
294 
295  for (reco::TrackCollection::const_iterator trit = isoProdTracks->begin(); trit != isoProdTracks->end(); trit++) {
296  reco::IsolatedPixelTrackCandidateCollection::const_iterator isoMatched = isoPixelTracks->begin();
297  //reco::TrackCollection::const_iterator isoMatched=isoPixelTracks->begin();
298  bool matched = false;
299 
300  //for (reco::IsolatedPixelTrackCandidateCollection::const_iterator trit = isoPixelTracks->begin(); trit!=isoPixelTracks->end(); trit++)
301  for (reco::IsolatedPixelTrackCandidateCollection::const_iterator it = isoPixelTracks->begin();
302  it != isoPixelTracks->end();
303  it++)
304  //for (reco::TrackCollection::const_iterator it = isoPixelTracks->begin(); it!=isoPixelTracks->end(); it++)
305  {
306  if (abs((trit->pt() - it->pt()) / it->pt()) < 0.005 && abs(trit->eta() - it->eta()) < 0.01) {
307  isoMatched = it;
308  matched = true;
309  break;
310  }
311  }
312  // CUT
313 
314  if (!matched)
315  continue;
316  if (isoMatched->maxPtPxl() > maxPNear)
317  continue;
318 
319  ptNear = isoMatched->maxPtPxl();
320  //cout<<"Point 0.1 isoMatch. ptnear: "<<ptNear<<endl;
321 
322  // CUT
323  if (trit->hitPattern().numberOfValidHits() < MinNTrackHitsBarrel)
324  continue;
325  if (fabs(trit->eta()) > 1.47 && trit->hitPattern().numberOfValidStripTECHits() < MinNTECHitsEndcap)
326  continue;
327 
328  //cout<<"Point 0.2.1 after numofvalidhits HB: "<<trit->hitPattern().numberOfValidHits()<<endl;
329  //cout<<"Point 0.2.2 after numofvalidstrips HE: "<<trit->hitPattern().numberOfValidStripTECHits()<<endl;
330 
331  numVH = trit->hitPattern().numberOfValidHits();
332  numVS = trit->hitPattern().numberOfValidStripTECHits();
333 
334  trackE = sqrt(trit->px() * trit->px() + trit->py() * trit->py() + trit->pz() * trit->pz() + 0.14 * 0.14);
335  trackPt = trit->pt();
336  trackEta = trit->eta();
337  trackPhi = trit->phi();
338 
339  emEnergy = isoMatched->energyIn();
340 
341  //cout<<"Point 0.3. Matched :: pt: "<<trit->pt()<<" wholeEnergy: "<<trackE<<" emEnergy: "<<emEnergy<<" eta: "<<etahcal<<" phi: "<<phihcal<<endl;
342  //cout<<"Point 0.4. EM energy in cone: "<<emEnergy<<" EtaHcal: "<<etahcal<<" PhiHcal: "<<phihcal<<endl;
343 
346 
347  //float etaecal=info.trkGlobPosAtEcal.eta();
348  //float phiecal=info.trkGlobPosAtEcal.phi();
349  // float etahcal=info.trkGlobPosAtHcal.eta();
350  // float phihcal=info.trkGlobPosAtHcal.phi();
351 
352  xTrkEcal = info.trkGlobPosAtEcal.x();
353  yTrkEcal = info.trkGlobPosAtEcal.y();
354  zTrkEcal = info.trkGlobPosAtEcal.z();
355 
356  xTrkHcal = info.trkGlobPosAtHcal.x();
357  yTrkHcal = info.trkGlobPosAtHcal.y();
358  zTrkHcal = info.trkGlobPosAtHcal.z();
359 
360  if (xTrkEcal == 0 && yTrkEcal == 0 && zTrkEcal == 0) {
361  cout << "zero point at Ecal" << endl;
362  continue;
363  }
364  if (xTrkHcal == 0 && yTrkHcal == 0 && zTrkHcal == 0) {
365  cout << "zero point at Hcal" << endl;
366  continue;
367  }
368 
369  /*GlobalVector trackMomAtEcal = info.trkMomAtEcal;
370  GlobalVector trackMomAtHcal = info.trkMomAtHcal;
371 
372  PxTrkHcal = trackMomAtHcal.x();
373  PyTrkHcal = trackMomAtHcal.y();
374  PzTrkHcal = trackMomAtHcal.z();
375  */
376 
377  GlobalPoint gPointEcal(xTrkEcal, yTrkEcal, zTrkEcal);
378  GlobalPoint gPointHcal(xTrkHcal, yTrkHcal, zTrkHcal);
379 
380  int iphitrue = -10;
381  int ietatrue = 100;
382  const HcalDetId tempId = gHcal->getClosestCell(gPointHcal);
383  ietatrue = tempId.ieta();
384  iphitrue = tempId.iphi();
385 
386  MaxHit_struct MaxHit;
387 
388  MaxHit.hitenergy = -100.;
389 
390  //container for used recHits
391  std::vector<DetId> usedHits;
392  //
393  usedHits.clear();
394  //cout <<"Point 1. Entrance to HBHECollection"<<endl;
395 
396  //float dddeta = 1000.;
397  //float dddphi = 1000.;
398  //int iphitrue = 1234;
399  //int ietatrue = 1234;
400 
401  GlobalPoint gPhot;
402 
403  for (HBHERecHitCollection::const_iterator hhit = Hithbhe.begin(); hhit != Hithbhe.end(); hhit++) {
404  //check that this hit was not considered before and push it into usedHits
405  bool hitIsUsed = false;
406  for (uint32_t i = 0; i < usedHits.size(); i++) {
407  if (usedHits[i] == hhit->id())
408  hitIsUsed = true;
409  }
410  if (hitIsUsed)
411  continue;
412  usedHits.push_back(hhit->id());
413  //
414 
415  // rof 16.05.2008 start: include the possibility for recalibration
416  float recal = 1;
417  // rof end
418 
419  GlobalPoint pos = geo->getPosition(hhit->detid());
420  //float phihit = pos.phi();
421  //float etahit = pos.eta();
422 
423  int iphihitm = (hhit->id()).iphi();
424  int ietahitm = (hhit->id()).ieta();
425  int depthhit = (hhit->id()).depth();
426  float enehit = hhit->energy() * recal;
427 
428  if (depthhit != 1)
429  continue;
430 
431  /*
432  float dphi = fabs(phihcal - phihit);
433  if(dphi > 4.*atan(1.)) dphi = 8.*atan(1.) - dphi;
434  float deta = fabs(etahcal - etahit);
435  float dr = sqrt(dphi*dphi + deta*deta);
436  */
437 
438  //double distAtHcal = getDistInPlaneTrackDir(gPointHcal, trackMomAtHcal, pos);
439  double distAtHcal = getDistInPlaneSimple(gPointHcal, pos);
440 
441  if (distAtHcal < associationConeSize_) {
442  for (HBHERecHitCollection::const_iterator hhit2 = Hithbhe.begin(); hhit2 != Hithbhe.end(); hhit2++) {
443  int iphihitm2 = (hhit2->id()).iphi();
444  int ietahitm2 = (hhit2->id()).ieta();
445  int depthhit2 = (hhit2->id()).depth();
446  float enehit2 = hhit2->energy() * recal;
447 
448  if (iphihitm == iphihitm2 && ietahitm == ietahitm2 && depthhit != depthhit2)
449  enehit = enehit + enehit2;
450  }
451 
452  //cout<<"IN CONE ieta: "<<ietahitm<<" iphi: "<<iphihitm<<" depthhit: "<<depthhit<<" dr: "<<dr<<" energy: "<<enehit<<endl;
453 
454  //Find a Hit with Maximum Energy
455 
456  if (enehit > MaxHit.hitenergy) {
457  MaxHit.hitenergy = enehit;
458  MaxHit.ietahitm = (hhit->id()).ieta();
459  MaxHit.iphihitm = (hhit->id()).iphi();
460  MaxHit.dr = distAtHcal;
461  //MaxHit.depthhit = (hhit->id()).depth();
462  MaxHit.depthhit = 1;
463 
464  //gPhot = geo->getPosition(hhit->detid());
465  }
466  }
467  } //end of all HBHE hits cycle
468 
469  usedHits.clear();
470 
471  //cout<<"Hottest ieta: "<<MaxHit.ietahitm<<" iphi: "<<MaxHit.iphihitm<<" dr: "<<MaxHit.dr<<endl;
472  //cout<<"Track ieta: "<<ietatrue<<" iphi: "<<iphitrue<<endl;
473 
474  //cout<<"Point 3. MaxHit :::En "<<MaxHit.hitenergy<<" ieta: "<<MaxHit.ietahitm<<" iphi: "<<MaxHit.iphihitm<<endl;
475 
476  Bool_t passCuts = kFALSE;
477  if (trackE > energyMinIso && trackE < energyMaxIso && emEnergy < energyECALmip && MaxHit.hitenergy > 0. &&
478  abs(MaxHit.ietahitm) < 29)
479  passCuts = kTRUE;
480 
481  //cout<<"Pont 0.1.1. trackE:"<<trackE<<" emEn: "<<emEnergy<<endl;
482 
483  numHits = 0;
484 
485  eClustBefore = 0.0;
486  eClustAfter = 0.0;
487  eBeforeDepth1 = 0.0;
488  eAfterDepth1 = 0.0;
489  eBeforeDepth2 = 0.0;
490  eAfterDepth2 = 0.0;
491  CentHitFactor = 0.0;
492  e3x3After = 0.0;
493  e3x3Before = 0.0;
494  e5x5After = 0.0;
495  e5x5Before = 0.0;
496 
497  for (HBHERecHitCollection::const_iterator hhit = Hithbhe.begin(); hhit != Hithbhe.end(); hhit++) {
498  //check that this hit was not considered before and push it into usedHits
499  bool hitIsUsed = false;
500  for (uint32_t i = 0; i < usedHits.size(); i++) {
501  if (usedHits[i] == hhit->id())
502  hitIsUsed = true;
503  }
504  if (hitIsUsed)
505  continue;
506  usedHits.push_back(hhit->id());
507 
508  int DIETA = 100;
509  if (MaxHit.ietahitm * (hhit->id()).ieta() > 0) {
510  DIETA = MaxHit.ietahitm - (hhit->id()).ieta();
511  }
512  if (MaxHit.ietahitm * (hhit->id()).ieta() < 0) {
513  DIETA = MaxHit.ietahitm - (hhit->id()).ieta();
514  DIETA = DIETA > 0 ? DIETA - 1 : DIETA + 1;
515  }
516 
517  int DIPHI = abs(MaxHit.iphihitm - (hhit->id()).iphi());
518  DIPHI = DIPHI > 36 ? 72 - DIPHI : DIPHI;
519 
520  int numbercell = 100; //always collect Wide clastor!
521 
522  //if(AxB_=="5x5" || AxB_=="3x3" || AxB_=="7x7"|| AxB_=="Cone")
523 
524  //if(AxB_=="3x3") numbercell = 1;
525  //if(AxB_=="5x5") numbercell = 2;
526  //if(AxB_=="Cone") numbercell = 1000;
527 
528  if (abs(DIETA) <= numbercell &&
529  (abs(DIPHI) <= numbercell || (abs(MaxHit.ietahitm) >= 20 && abs(DIPHI) <= numbercell + 1))) {
530  const GlobalPoint pos2 = geo->getPosition(hhit->detid());
531 
532  if (passCuts && hhit->energy() > 0) {
533  float factor = 0.0;
534  // factor = CalibFactors[hhit->id()];
535  factor = respRecalib->getValues(hhit->id())->getValue();
536 
537  //if(i<5){cout<<" calib factors: "<<factor<<" ij "<<100*i+j<<endl;}
538 
539  if (hhit->id().ieta() == MaxHit.ietahitm && hhit->id().iphi() == MaxHit.iphihitm)
541 
542  if (hhit->id().ieta() == MaxHit.ietahitm && hhit->id().iphi() == MaxHit.iphihitm)
543  iTime = hhit->time();
544 
545  if (AxB_ != "3x3" && AxB_ != "5x5" && AxB_ != "Cone")
546  LogWarning(" AxB ") << " Not supported: " << AxB_;
547 
548  if (abs(DIETA) <= 2 && (abs(DIPHI) <= 2 || ((abs(MaxHit.ietahitm) > 20 && abs(DIPHI) <= 4) &&
549  !((abs(MaxHit.ietahitm) == 21 || abs(MaxHit.ietahitm) == 22) &&
550  abs((hhit->id()).ieta()) <= 20 && abs(DIPHI) > 2)))) {
551  e5x5Before += hhit->energy();
552  e5x5After += hhit->energy() * factor;
553  }
554 
555  if (abs(DIETA) <= 1 && (abs(DIPHI) <= 1 || ((abs(MaxHit.ietahitm) > 20 && abs(DIPHI) <= 2) &&
556  !(abs(MaxHit.ietahitm) == 21 && abs((hhit->id()).ieta()) <= 20 &&
557  abs(DIPHI) > 1)))) {
558  e3x3Before += hhit->energy();
559  e3x3After += hhit->energy() * factor;
560  }
561 
562  if (AxB_ == "5x5") {
563  if (abs(DIETA) <= 2 && (abs(DIPHI) <= 2 || (abs(MaxHit.ietahitm) > 20 && abs(DIPHI) <= 4))) {
564  if (abs(MaxHit.ietahitm) == 21 && abs((hhit->id()).ieta()) <= 20 && abs(DIPHI) > 3)
565  continue;
566 
567  HTime[numHits] = hhit->time();
568  numHits++;
569 
570  eClustBefore += hhit->energy();
571  eClustAfter += hhit->energy() * factor;
572 
573  if ((hhit->id().depth() == 1) && (abs(hhit->id().ieta()) > 17) && (abs(hhit->id().ieta()) < 29)) {
574  eBeforeDepth1 += hhit->energy();
575  eAfterDepth1 += hhit->energy() * factor;
576  } else if ((hhit->id().depth() == 2) && (abs(hhit->id().ieta()) > 17) && (abs(hhit->id().ieta()) < 29)) {
577  eBeforeDepth2 += hhit->energy();
578  eAfterDepth2 += hhit->energy() * factor;
579  }
580  }
581  } //end of 5x5
582 
583  if (AxB_ == "3x3") {
584  if (abs(DIETA) <= 1 && (abs(DIPHI) <= 1 || (abs(MaxHit.ietahitm) > 20 && abs(DIPHI) <= 2))) {
585  if (abs(MaxHit.ietahitm) == 21 && abs((hhit->id()).ieta()) <= 20 && abs(DIPHI) > 2)
586  continue;
587 
588  HTime[numHits] = hhit->time();
589  numHits++;
590 
591  eClustBefore += hhit->energy();
592  eClustAfter += hhit->energy() * factor;
593 
594  if ((hhit->id().depth() == 1) && (abs(hhit->id().ieta()) > 17) && (abs(hhit->id().ieta()) < 29)) {
595  eBeforeDepth1 += hhit->energy();
596  eAfterDepth1 += hhit->energy() * factor;
597  } else if ((hhit->id().depth() == 2) && (abs(hhit->id().ieta()) > 17) && (abs(hhit->id().ieta()) < 29)) {
598  eBeforeDepth2 += hhit->energy();
599  eAfterDepth2 += hhit->energy() * factor;
600  }
601  }
602  } //end of 3x3
603 
604  if (AxB_ == "Cone" && getDistInPlaneSimple(gPointHcal, pos2) < calibrationConeSize_) {
605  HTime[numHits] = hhit->time();
606  numHits++;
607 
608  eClustBefore += hhit->energy();
609  eClustAfter += hhit->energy() * factor;
610 
611  if ((hhit->id().depth() == 1) && (abs(hhit->id().ieta()) > 17) && (abs(hhit->id().ieta()) < 29)) {
612  eBeforeDepth1 += hhit->energy();
613  eAfterDepth1 += hhit->energy() * factor;
614  } else if ((hhit->id().depth() == 2) && (abs(hhit->id().ieta()) > 17) && (abs(hhit->id().ieta()) < 29)) {
615  eBeforeDepth2 += hhit->energy();
616  eAfterDepth2 += hhit->energy() * factor;
617  }
618 
619  } //end of Cone
620 
621  } //end of passCuts
622 
623  } //end of DIETA DIPHI
624 
625  } //end of associatedcone HBHE hits cycle
626 
627  int dieta_M_P = 100;
628  int diphi_M_P = 100;
629  if (MaxHit.ietahitm * ietatrue > 0) {
630  dieta_M_P = abs(MaxHit.ietahitm - ietatrue);
631  }
632  if (MaxHit.ietahitm * ietatrue < 0) {
633  dieta_M_P = abs(MaxHit.ietahitm - ietatrue) - 1;
634  }
635  diphi_M_P = abs(MaxHit.iphihitm - iphitrue);
636  diphi_M_P = diphi_M_P > 36 ? 72 - diphi_M_P : diphi_M_P;
637 
638  if (passCuts)
639 
640  {
641  eventNumber = iEvent.id().event();
642  runNumber = iEvent.id().run();
643 
644  eCentHitBefore = MaxHit.hitenergy;
646  eECAL = emEnergy;
649  PtNearBy = ptNear;
650 
651  eTrack = trackE;
652  phiTrack = trackPhi;
653  etaTrack = trackEta;
654 
655  iEta = MaxHit.ietahitm;
656  iPhi = MaxHit.iphihitm;
657 
658  iEtaTr = ietatrue;
659  iPhiTr = iphitrue;
660  iDr = sqrt(diphi_M_P * diphi_M_P + dieta_M_P * dieta_M_P);
661  delR = MaxHit.dr;
662  dietatr = dieta_M_P;
663  diphitr = diphi_M_P;
664 
665  fTree->Fill();
666  }
667 
668  } //end of isoProdTracks cycle
669 
670  /* ------------------ Some stuff for general tracks ---------- ----*/
671  //cout<<" generalTracks Size: "<< generalTracks->size()<<endl;
672  int n = generalTracks->size();
673  nTracks->Fill(n);
674 
675  if (takeGenTracks_ && iEvent.id().event() % 10 == 1) {
676  gen = generalTracks->size();
677  iso = isoProdTracks->size();
678  pix = isoPixelTracks->size();
679 
680  genPt[0] = -33;
681  genPhi[0] = -33;
682  genEta[0] = -33;
683 
684  isoPt[0] = -33;
685  isoPhi[0] = -33;
686  isoEta[0] = -33;
687 
688  pixPt[0] = -33;
689  pixPhi[0] = -33;
690  pixEta[0] = -33;
691 
692  Int_t gencount = 0, isocount = 0, pixcount = 0;
693  for (reco::TrackCollection::const_iterator gentr = generalTracks->begin(); gentr != generalTracks->end(); gentr++) {
694  genPt[gencount] = gentr->pt();
695  genPhi[gencount] = gentr->phi();
696  genEta[gencount] = gentr->eta();
697  gencount++;
698  }
699 
700  for (reco::TrackCollection::const_iterator isotr = isoProdTracks->begin(); isotr != isoProdTracks->end(); isotr++) {
701  isoPt[isocount] = isotr->pt();
702  isoPhi[isocount] = isotr->phi();
703  isoEta[isocount] = isotr->eta();
704  isocount++;
705  }
706 
707  for (reco::IsolatedPixelTrackCandidateCollection::const_iterator pixtr = isoPixelTracks->begin();
708  pixtr != isoPixelTracks->end();
709  pixtr++) {
710  pixPt[pixcount] = pixtr->pt();
711  pixPhi[pixcount] = pixtr->phi();
712  pixEta[pixcount] = pixtr->eta();
713  pixcount++;
714  }
715  }
716 
717  tTree->Fill();
718 }

References funct::abs(), edm::SortedCollection< T, SORT >::begin(), gather_cfg::cout, LEDCalibrationChannels::depth, MaxHit_struct::depthhit, MaxHit_struct::dr, MillePedeFileConverter_cfg::e, edm::SortedCollection< T, SORT >::end(), DQMScaleToClient_cfi::factor, isolatedTracks_cfi::generalTracks, PFJetFilter_cfi::genPt, edm::EventSetup::get(), edm::get(), HcalGeometry::getClosestCell(), getDistInPlaneSimple(), reco::JetExtendedAssociation::getValue(), photonIsolationHIProducer_cfi::hbhe, DetId::Hcal, HcalBarrel, MaxHit_struct::hitenergy, mps_fire::i, L1TowerCalibrationProducer_cfi::iEta, LEDCalibrationChannels::ieta, HcalDetId::ieta(), MaxHit_struct::ietahitm, iEvent, info(), LEDCalibrationChannels::iphi, HcalDetId::iphi(), MaxHit_struct::iphihitm, muonTagProbeFilters_cff::matched, dqmiodumpmetadata::n, nTracks(), edm::ESHandle< T >::product(), convertSQLiteXML::runNumber, mathSSE::sqrt(), reco::btau::trackEta, reco::btau::trackPhi, and listHistos::trackPt.

◆ beginJob()

void ValidIsoTrkCalib::beginJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 721 of file ValidIsoTrkCalib.cc.

721  {
722  // if(!ReadCalibFactors(calibFactorsFileName_.c_str() )) {cout<<"Cant read file with cailib coefficients!! ---"<<endl;}
723 
724  // try{
725  // edm::ESHandle <HcalRespCorrs> recalibCorrs;
726  // iSetup.get<HcalRespCorrsRcd>().get("recalibrate",recalibCorrs);
727  // respRecalib = recalibCorrs.product();
728  //
729  // LogInfo("CalibConstants")<<" Loaded: OK ";
730  //
731  // }catch(const cms::Exception & e) {
732  // LogWarning("CalibConstants")<<" Not Found!! ";
733  // }
734 
735  // rootFile = new TFile(outputFileName_.c_str(),"RECREATE");
736 
737  //@@@@@@@@@@@@@
738  //TFileDirectory ValDir = fs->mkdir("Validation");
739 
740  nTracks = fs->make<TH1F>("nTracks", "general;number of general tracks", 11, -0.5, 10.5);
741 
742  tTree = fs->make<TTree>("tTree", "Tree for gen info");
743 
744  fTree = fs->make<TTree>("fTree", "Tree for IsoTrack Calibration");
745 
746  fTree->Branch("eventNumber", &eventNumber, "eventNumber/I");
747  fTree->Branch("runNumber", &runNumber, "runNumber/I");
748 
749  fTree->Branch("eClustBefore", &eClustBefore, "eClustBefore/F");
750  fTree->Branch("eClustAfter", &eClustAfter, "eClustAfter/F");
751  fTree->Branch("eTrack", &eTrack, "eTrack/F");
752  fTree->Branch("etaTrack", &etaTrack, "etaTrack/F");
753  fTree->Branch("phiTrack", &phiTrack, "phiTrack/F");
754 
755  fTree->Branch("numHits", &numHits, "numHits/I");
756  fTree->Branch("eECAL", &eECAL, "eECAL/F");
757  fTree->Branch("PtNearBy", &PtNearBy, "PtNearBy/F");
758  fTree->Branch("numValidTrkHits", &numValidTrkHits, "numValidTrkHits/F");
759  fTree->Branch("numValidTrkStrips", &numValidTrkStrips, "numValidTrkStrips/F");
760 
761  fTree->Branch("eBeforeDepth1", &eBeforeDepth1, "eBeforeDepth1/F");
762  fTree->Branch("eBeforeDepth2", &eBeforeDepth2, "eBeforeDepth2/F");
763  fTree->Branch("eAfterDepth1", &eAfterDepth1, "eAfterDepth1/F");
764  fTree->Branch("eAfterDepth2", &eAfterDepth2, "eAfterDepth2/F");
765 
766  fTree->Branch("e3x3Before", &e3x3Before, "e3x3Before/F");
767  fTree->Branch("e3x3After", &e3x3After, "e3x3After/F");
768  fTree->Branch("e5x5Before", &e5x5Before, "e5x5Before/F");
769  fTree->Branch("e5x5After", &e5x5After, "e5x5After/F");
770 
771  fTree->Branch("eCentHitAfter", &eCentHitAfter, "eCentHitAfter/F");
772  fTree->Branch("eCentHitBefore", &eCentHitBefore, "eCentHitBefore/F");
773  fTree->Branch("iEta", &iEta, "iEta/I");
774  fTree->Branch("iPhi", &iPhi, "iPhi/I");
775 
776  fTree->Branch("iEtaTr", &iEtaTr, "iEtaTr/I");
777  fTree->Branch("iPhiTr", &iPhiTr, "iPhiTr/I");
778  fTree->Branch("dietatr", &dietatr, "dietatr/I");
779  fTree->Branch("diphitr", &diphitr, "diphitr/I");
780  fTree->Branch("iDr", &iDr, "iDr/F");
781  fTree->Branch("delR", &delR, "delR/F");
782 
783  fTree->Branch("iTime", &iTime, "iTime/F");
784  fTree->Branch("HTime", HTime, "HTime[numHits]/F");
785 
786  fTree->Branch("xTrkEcal", &xTrkEcal, "xTrkEcal/F");
787  fTree->Branch("yTrkEcal", &yTrkEcal, "yTrkEcal/F");
788  fTree->Branch("zTrkEcal", &zTrkEcal, "zTrkEcal/F");
789  fTree->Branch("xTrkHcal", &xTrkHcal, "xTrkHcal/F");
790  fTree->Branch("yTrkHcal", &yTrkHcal, "yTrkHcal/F");
791  fTree->Branch("zTrkHcal", &zTrkHcal, "zTrkHcal/F");
792 
793  if (takeGenTracks_) {
794  tTree->Branch("gen", &gen, "gen/I");
795  tTree->Branch("iso", &iso, "iso/I");
796  tTree->Branch("pix", &pix, "pix/I");
797  tTree->Branch("genPt", genPt, "genPt[gen]/F");
798  tTree->Branch("genPhi", genPhi, "genPhi[gen]/F");
799  tTree->Branch("genEta", genEta, "genEta[gen]/F");
800 
801  tTree->Branch("isoPt", isoPt, "isoPt[iso]/F");
802  tTree->Branch("isoPhi", isoPhi, "isoPhi[iso]/F");
803  tTree->Branch("isoEta", isoEta, "isoEta[iso]/F");
804 
805  tTree->Branch("pixPt", pixPt, "pixPt[pix]/F");
806  tTree->Branch("pixPhi", pixPhi, "pixPhi[pix]/F");
807  tTree->Branch("pixEta", pixEta, "pixEta[pix]/F");
808  }
809 }

References PFJetFilter_cfi::genPt, L1TowerCalibrationProducer_cfi::iEta, nTracks(), and convertSQLiteXML::runNumber.

◆ endJob()

void ValidIsoTrkCalib::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 812 of file ValidIsoTrkCalib.cc.

812  {
813  // rootFile->Write();
814  //rootFile->Close();
815 }

Referenced by o2olib.O2ORunMgr::executeJob().

Member Data Documentation

◆ allowMissingInputs_

bool ValidIsoTrkCalib::allowMissingInputs_
private

Definition at line 106 of file ValidIsoTrkCalib.cc.

◆ associationConeSize_

double ValidIsoTrkCalib::associationConeSize_
private

Definition at line 102 of file ValidIsoTrkCalib.cc.

◆ AxB_

string ValidIsoTrkCalib::AxB_
private

Definition at line 103 of file ValidIsoTrkCalib.cc.

◆ calibrationConeSize_

double ValidIsoTrkCalib::calibrationConeSize_
private

Definition at line 104 of file ValidIsoTrkCalib.cc.

◆ CentHitFactor

float ValidIsoTrkCalib::CentHitFactor
private

Definition at line 161 of file ValidIsoTrkCalib.cc.

◆ delR

float ValidIsoTrkCalib::delR
private

Definition at line 166 of file ValidIsoTrkCalib.cc.

◆ dietatr

int ValidIsoTrkCalib::dietatr
private

Definition at line 167 of file ValidIsoTrkCalib.cc.

◆ diphitr

int ValidIsoTrkCalib::diphitr
private

Definition at line 168 of file ValidIsoTrkCalib.cc.

◆ e3x3After

float ValidIsoTrkCalib::e3x3After
private

Definition at line 173 of file ValidIsoTrkCalib.cc.

◆ e3x3Before

float ValidIsoTrkCalib::e3x3Before
private

Definition at line 172 of file ValidIsoTrkCalib.cc.

◆ e5x5After

float ValidIsoTrkCalib::e5x5After
private

Definition at line 175 of file ValidIsoTrkCalib.cc.

◆ e5x5Before

float ValidIsoTrkCalib::e5x5Before
private

Definition at line 174 of file ValidIsoTrkCalib.cc.

◆ eAfterDepth1

float ValidIsoTrkCalib::eAfterDepth1
private

Definition at line 156 of file ValidIsoTrkCalib.cc.

◆ eAfterDepth2

float ValidIsoTrkCalib::eAfterDepth2
private

Definition at line 158 of file ValidIsoTrkCalib.cc.

◆ eBeforeDepth1

float ValidIsoTrkCalib::eBeforeDepth1
private

Definition at line 155 of file ValidIsoTrkCalib.cc.

◆ eBeforeDepth2

float ValidIsoTrkCalib::eBeforeDepth2
private

Definition at line 157 of file ValidIsoTrkCalib.cc.

◆ eCentHitAfter

float ValidIsoTrkCalib::eCentHitAfter
private

Definition at line 160 of file ValidIsoTrkCalib.cc.

◆ eCentHitBefore

float ValidIsoTrkCalib::eCentHitBefore
private

Definition at line 159 of file ValidIsoTrkCalib.cc.

◆ eClustAfter

float ValidIsoTrkCalib::eClustAfter
private

Definition at line 147 of file ValidIsoTrkCalib.cc.

◆ eClustBefore

float ValidIsoTrkCalib::eClustBefore
private

Definition at line 146 of file ValidIsoTrkCalib.cc.

◆ eECAL

float ValidIsoTrkCalib::eECAL
private

Definition at line 151 of file ValidIsoTrkCalib.cc.

◆ emEnergy

Float_t ValidIsoTrkCalib::emEnergy
private

Definition at line 130 of file ValidIsoTrkCalib.cc.

◆ energyECALmip

double ValidIsoTrkCalib::energyECALmip
private

Definition at line 127 of file ValidIsoTrkCalib.cc.

◆ energyMaxIso

double ValidIsoTrkCalib::energyMaxIso
private

Definition at line 128 of file ValidIsoTrkCalib.cc.

◆ energyMinIso

double ValidIsoTrkCalib::energyMinIso
private

Definition at line 128 of file ValidIsoTrkCalib.cc.

◆ etaTrack

float ValidIsoTrkCalib::etaTrack
private

Definition at line 149 of file ValidIsoTrkCalib.cc.

◆ eTrack

float ValidIsoTrkCalib::eTrack
private

Definition at line 148 of file ValidIsoTrkCalib.cc.

◆ eventNumber

int ValidIsoTrkCalib::eventNumber
private

Definition at line 176 of file ValidIsoTrkCalib.cc.

◆ fs

edm::Service<TFileService> ValidIsoTrkCalib::fs
private

Definition at line 187 of file ValidIsoTrkCalib.cc.

◆ fTree

TTree * ValidIsoTrkCalib::fTree
private

Definition at line 135 of file ValidIsoTrkCalib.cc.

◆ gen

int ValidIsoTrkCalib::gen
private

Definition at line 113 of file ValidIsoTrkCalib.cc.

◆ genecalLabel_

std::vector<edm::InputTag> ValidIsoTrkCalib::genecalLabel_
private

Definition at line 91 of file ValidIsoTrkCalib.cc.

◆ genEta

float ValidIsoTrkCalib::genEta[500]
private

Definition at line 114 of file ValidIsoTrkCalib.cc.

◆ genhbheLabel_

InputTag ValidIsoTrkCalib::genhbheLabel_
private

Definition at line 89 of file ValidIsoTrkCalib.cc.

◆ genhoLabel_

InputTag ValidIsoTrkCalib::genhoLabel_
private

Definition at line 90 of file ValidIsoTrkCalib.cc.

◆ genPhi

float ValidIsoTrkCalib::genPhi[500]
private

Definition at line 114 of file ValidIsoTrkCalib.cc.

◆ genPt

float ValidIsoTrkCalib::genPt[500]
private

Definition at line 114 of file ValidIsoTrkCalib.cc.

◆ geo

const CaloGeometry* ValidIsoTrkCalib::geo
private

Definition at line 87 of file ValidIsoTrkCalib.cc.

◆ HTime

float ValidIsoTrkCalib::HTime[100]
private

Definition at line 171 of file ValidIsoTrkCalib.cc.

◆ iDr

float ValidIsoTrkCalib::iDr
private

Definition at line 166 of file ValidIsoTrkCalib.cc.

◆ iEta

int ValidIsoTrkCalib::iEta
private

Definition at line 162 of file ValidIsoTrkCalib.cc.

◆ iEtaTr

int ValidIsoTrkCalib::iEtaTr
private

Definition at line 164 of file ValidIsoTrkCalib.cc.

◆ iPhi

int ValidIsoTrkCalib::iPhi
private

Definition at line 163 of file ValidIsoTrkCalib.cc.

◆ iPhiTr

int ValidIsoTrkCalib::iPhiTr
private

Definition at line 165 of file ValidIsoTrkCalib.cc.

◆ iso

int ValidIsoTrkCalib::iso
private

Definition at line 113 of file ValidIsoTrkCalib.cc.

◆ isoEta

float ValidIsoTrkCalib::isoEta[500]
private

Definition at line 115 of file ValidIsoTrkCalib.cc.

◆ isoPhi

float ValidIsoTrkCalib::isoPhi[500]
private

Definition at line 115 of file ValidIsoTrkCalib.cc.

◆ isoPt

float ValidIsoTrkCalib::isoPt[500]
private

Definition at line 115 of file ValidIsoTrkCalib.cc.

◆ iTime

float ValidIsoTrkCalib::iTime
private

Definition at line 170 of file ValidIsoTrkCalib.cc.

◆ maxPNear

double ValidIsoTrkCalib::maxPNear
private

Definition at line 127 of file ValidIsoTrkCalib.cc.

◆ MinNTECHitsEndcap

int ValidIsoTrkCalib::MinNTECHitsEndcap
private

Definition at line 126 of file ValidIsoTrkCalib.cc.

◆ MinNTrackHitsBarrel

int ValidIsoTrkCalib::MinNTrackHitsBarrel
private

Definition at line 126 of file ValidIsoTrkCalib.cc.

◆ Nhits

int ValidIsoTrkCalib::Nhits
private

Definition at line 145 of file ValidIsoTrkCalib.cc.

◆ NisoTrk

int ValidIsoTrkCalib::NisoTrk
private

Definition at line 120 of file ValidIsoTrkCalib.cc.

◆ nTracks

TH1F* ValidIsoTrkCalib::nTracks
private

Definition at line 185 of file ValidIsoTrkCalib.cc.

◆ numHits

int ValidIsoTrkCalib::numHits
private

Definition at line 152 of file ValidIsoTrkCalib.cc.

◆ numValidTrkHits

float ValidIsoTrkCalib::numValidTrkHits
private

Definition at line 179 of file ValidIsoTrkCalib.cc.

◆ numValidTrkStrips

float ValidIsoTrkCalib::numValidTrkStrips
private

Definition at line 179 of file ValidIsoTrkCalib.cc.

◆ numVH

float ValidIsoTrkCalib::numVH
private

Definition at line 179 of file ValidIsoTrkCalib.cc.

◆ numVS

float ValidIsoTrkCalib::numVS
private

Definition at line 179 of file ValidIsoTrkCalib.cc.

◆ outputFileName_

string ValidIsoTrkCalib::outputFileName_
private

Definition at line 107 of file ValidIsoTrkCalib.cc.

◆ parameters_

TrackAssociatorParameters ValidIsoTrkCalib::parameters_
private

◆ phiTrack

float ValidIsoTrkCalib::phiTrack
private

Definition at line 150 of file ValidIsoTrkCalib.cc.

◆ pix

int ValidIsoTrkCalib::pix
private

Definition at line 113 of file ValidIsoTrkCalib.cc.

◆ pixEta

float ValidIsoTrkCalib::pixEta[500]
private

Definition at line 116 of file ValidIsoTrkCalib.cc.

◆ pixPhi

float ValidIsoTrkCalib::pixPhi[500]
private

Definition at line 116 of file ValidIsoTrkCalib.cc.

◆ pixPt

float ValidIsoTrkCalib::pixPt[500]
private

Definition at line 116 of file ValidIsoTrkCalib.cc.

◆ ptNear

float ValidIsoTrkCalib::ptNear
private

Definition at line 122 of file ValidIsoTrkCalib.cc.

◆ PtNearBy

float ValidIsoTrkCalib::PtNearBy
private

Definition at line 178 of file ValidIsoTrkCalib.cc.

◆ ptrack

float ValidIsoTrkCalib::ptrack
private

Definition at line 123 of file ValidIsoTrkCalib.cc.

◆ respRecalib

const HcalRespCorrs* ValidIsoTrkCalib::respRecalib
private

Definition at line 181 of file ValidIsoTrkCalib.cc.

◆ runNumber

int ValidIsoTrkCalib::runNumber
private

◆ rvert

float ValidIsoTrkCalib::rvert
private

Definition at line 123 of file ValidIsoTrkCalib.cc.

◆ taECALCone_

double ValidIsoTrkCalib::taECALCone_
private

Definition at line 84 of file ValidIsoTrkCalib.cc.

◆ taHCALCone_

double ValidIsoTrkCalib::taHCALCone_
private

Definition at line 85 of file ValidIsoTrkCalib.cc.

◆ takeGenTracks_

bool ValidIsoTrkCalib::takeGenTracks_
private

Definition at line 111 of file ValidIsoTrkCalib.cc.

◆ targetE

Float_t ValidIsoTrkCalib::targetE
private

Definition at line 131 of file ValidIsoTrkCalib.cc.

◆ tok_genTrack_

edm::EDGetTokenT<reco::TrackCollection> ValidIsoTrkCalib::tok_genTrack_
private

Definition at line 93 of file ValidIsoTrkCalib.cc.

◆ tok_hbhe_

edm::EDGetTokenT<HBHERecHitCollection> ValidIsoTrkCalib::tok_hbhe_
private

Definition at line 94 of file ValidIsoTrkCalib.cc.

◆ tok_ho_

edm::EDGetTokenT<HORecHitCollection> ValidIsoTrkCalib::tok_ho_
private

Definition at line 95 of file ValidIsoTrkCalib.cc.

◆ tok_track1_

edm::EDGetTokenT<reco::TrackCollection> ValidIsoTrkCalib::tok_track1_
private

Definition at line 97 of file ValidIsoTrkCalib.cc.

◆ tok_track_

edm::EDGetTokenT<reco::IsolatedPixelTrackCandidateCollection> ValidIsoTrkCalib::tok_track_
private

Definition at line 96 of file ValidIsoTrkCalib.cc.

◆ trackAssociator_

TrackDetectorAssociator ValidIsoTrkCalib::trackAssociator_
private

Definition at line 82 of file ValidIsoTrkCalib.cc.

◆ trackE

float ValidIsoTrkCalib::trackE
private

Definition at line 121 of file ValidIsoTrkCalib.cc.

◆ trackEta

float ValidIsoTrkCalib::trackEta
private

Definition at line 121 of file ValidIsoTrkCalib.cc.

◆ trackPhi

float ValidIsoTrkCalib::trackPhi
private

Definition at line 121 of file ValidIsoTrkCalib.cc.

◆ trackPt

float ValidIsoTrkCalib::trackPt
private

Definition at line 121 of file ValidIsoTrkCalib.cc.

◆ tTree

TTree* ValidIsoTrkCalib::tTree
private

Definition at line 135 of file ValidIsoTrkCalib.cc.

◆ xTrkEcal

Float_t ValidIsoTrkCalib::xTrkEcal
private

Definition at line 137 of file ValidIsoTrkCalib.cc.

◆ xTrkHcal

Float_t ValidIsoTrkCalib::xTrkHcal
private

Definition at line 141 of file ValidIsoTrkCalib.cc.

◆ yTrkEcal

Float_t ValidIsoTrkCalib::yTrkEcal
private

Definition at line 138 of file ValidIsoTrkCalib.cc.

◆ yTrkHcal

Float_t ValidIsoTrkCalib::yTrkHcal
private

Definition at line 142 of file ValidIsoTrkCalib.cc.

◆ zTrkEcal

Float_t ValidIsoTrkCalib::zTrkEcal
private

Definition at line 139 of file ValidIsoTrkCalib.cc.

◆ zTrkHcal

Float_t ValidIsoTrkCalib::zTrkHcal
private

Definition at line 143 of file ValidIsoTrkCalib.cc.

muonTagProbeFilters_cff.matched
matched
Definition: muonTagProbeFilters_cff.py:62
getDistInPlaneSimple
double getDistInPlaneSimple(const GlobalPoint caloPoint, const GlobalPoint rechitPoint)
Definition: ConeDefinition.h:9
edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
ValidIsoTrkCalib::PtNearBy
float PtNearBy
Definition: ValidIsoTrkCalib.cc:178
mps_fire.i
i
Definition: mps_fire.py:355
edm::SortedCollection::const_iterator
std::vector< T >::const_iterator const_iterator
Definition: SortedCollection.h:80
ValidIsoTrkCalib::yTrkEcal
Float_t yTrkEcal
Definition: ValidIsoTrkCalib.cc:138
ValidIsoTrkCalib::e3x3Before
float e3x3Before
Definition: ValidIsoTrkCalib.cc:172
dqmiodumpmetadata.n
n
Definition: dqmiodumpmetadata.py:28
ValidIsoTrkCalib::trackE
float trackE
Definition: ValidIsoTrkCalib.cc:121
ValidIsoTrkCalib::runNumber
int runNumber
Definition: ValidIsoTrkCalib.cc:177
ValidIsoTrkCalib::pixEta
float pixEta[500]
Definition: ValidIsoTrkCalib.cc:116
TrackAssociatorParameters::useCalo
bool useCalo
Definition: TrackAssociatorParameters.h:72
MaxHit_struct
Definition: CommonUsefulStuff.h:43
HcalDetId::iphi
constexpr int iphi() const
get the cell iphi
Definition: HcalDetId.h:157
MaxHit_struct::hitenergy
float hitenergy
Definition: CommonUsefulStuff.h:47
ValidIsoTrkCalib::eBeforeDepth2
float eBeforeDepth2
Definition: ValidIsoTrkCalib.cc:157
CaloGeometry::getPosition
GlobalPoint getPosition(const DetId &id) const
Get the position of a given detector id.
Definition: CaloGeometry.cc:50
CaloGeometryRecord
Definition: CaloGeometryRecord.h:30
ValidIsoTrkCalib::xTrkEcal
Float_t xTrkEcal
Definition: ValidIsoTrkCalib.cc:137
edm
HLT enums.
Definition: AlignableModifier.h:19
ValidIsoTrkCalib::calibrationConeSize_
double calibrationConeSize_
Definition: ValidIsoTrkCalib.cc:104
TrackDetectorAssociator::useDefaultPropagator
void useDefaultPropagator()
use the default propagator
Definition: TrackDetectorAssociator.cc:120
ValidIsoTrkCalib::trackAssociator_
TrackDetectorAssociator trackAssociator_
Definition: ValidIsoTrkCalib.cc:82
gather_cfg.cout
cout
Definition: gather_cfg.py:144
pos
Definition: PixelAliasList.h:18
DetId::Hcal
Definition: DetId.h:28
ValidIsoTrkCalib::eTrack
float eTrack
Definition: ValidIsoTrkCalib.cc:148
edm::LogInfo
Definition: MessageLogger.h:254
MaxHit_struct::dr
float dr
Definition: CommonUsefulStuff.h:48
CaloGeometry::getSubdetectorGeometry
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:34
edm::SortedCollection
Definition: SortedCollection.h:49
edm::EDConsumerBase::consumesCollector
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
Definition: EDConsumerBase.cc:71
info
static const TGPicture * info(bool iBackgroundIsBlack)
Definition: FWCollectionSummaryWidget.cc:152
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
ValidIsoTrkCalib::emEnergy
Float_t emEnergy
Definition: ValidIsoTrkCalib.cc:130
TrackAssociatorParameters::useMuon
bool useMuon
Definition: TrackAssociatorParameters.h:74
HcalBarrel
Definition: HcalAssistant.h:33
edm::Handle< reco::TrackCollection >
ValidIsoTrkCalib::maxPNear
double maxPNear
Definition: ValidIsoTrkCalib.cc:127
HcalCondObjectContainer::getValues
const Item * getValues(DetId fId, bool throwOnFail=true) const
Definition: HcalCondObjectContainer.h:159
ValidIsoTrkCalib::iDr
float iDr
Definition: ValidIsoTrkCalib.cc:166
ValidIsoTrkCalib::geo
const CaloGeometry * geo
Definition: ValidIsoTrkCalib.cc:87
ValidIsoTrkCalib::numValidTrkHits
float numValidTrkHits
Definition: ValidIsoTrkCalib.cc:179
ValidIsoTrkCalib::pix
int pix
Definition: ValidIsoTrkCalib.cc:113
ValidIsoTrkCalib::eCentHitBefore
float eCentHitBefore
Definition: ValidIsoTrkCalib.cc:159
parameters
parameters
Definition: BeamSpot_PayloadInspector.cc:14
LEDCalibrationChannels.iphi
iphi
Definition: LEDCalibrationChannels.py:64
TrackDetectorAssociator::getFreeTrajectoryState
static FreeTrajectoryState getFreeTrajectoryState(const edm::EventSetup &, const reco::Track &)
get FreeTrajectoryState from different track representations
Definition: TrackDetectorAssociator.cc:600
ValidIsoTrkCalib::isoPt
float isoPt[500]
Definition: ValidIsoTrkCalib.cc:115
ValidIsoTrkCalib::e5x5Before
float e5x5Before
Definition: ValidIsoTrkCalib.cc:174
ValidIsoTrkCalib::eClustAfter
float eClustAfter
Definition: ValidIsoTrkCalib.cc:147
ValidIsoTrkCalib::AxB_
string AxB_
Definition: ValidIsoTrkCalib.cc:103
ValidIsoTrkCalib::MinNTrackHitsBarrel
int MinNTrackHitsBarrel
Definition: ValidIsoTrkCalib.cc:126
ValidIsoTrkCalib::tTree
TTree * tTree
Definition: ValidIsoTrkCalib.cc:135
ValidIsoTrkCalib::eECAL
float eECAL
Definition: ValidIsoTrkCalib.cc:151
ValidIsoTrkCalib::numHits
int numHits
Definition: ValidIsoTrkCalib.cc:152
ValidIsoTrkCalib::parameters_
TrackAssociatorParameters parameters_
Definition: ValidIsoTrkCalib.cc:83
ValidIsoTrkCalib::eAfterDepth1
float eAfterDepth1
Definition: ValidIsoTrkCalib.cc:156
edm::EventSetup::get
T get() const
Definition: EventSetup.h:73
ValidIsoTrkCalib::trackPt
float trackPt
Definition: ValidIsoTrkCalib.cc:121
MaxHit_struct::iphihitm
int iphihitm
Definition: CommonUsefulStuff.h:44
edm::SortedCollection::begin
const_iterator begin() const
Definition: SortedCollection.h:262
ValidIsoTrkCalib::e3x3After
float e3x3After
Definition: ValidIsoTrkCalib.cc:173
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
ValidIsoTrkCalib::CentHitFactor
float CentHitFactor
Definition: ValidIsoTrkCalib.cc:161
edm::ESHandle
Definition: DTSurvey.h:22
MaxHit_struct::ietahitm
int ietahitm
Definition: CommonUsefulStuff.h:45
ValidIsoTrkCalib::numVH
float numVH
Definition: ValidIsoTrkCalib.cc:179
ValidIsoTrkCalib::zTrkEcal
Float_t zTrkEcal
Definition: ValidIsoTrkCalib.cc:139
ValidIsoTrkCalib::MinNTECHitsEndcap
int MinNTECHitsEndcap
Definition: ValidIsoTrkCalib.cc:126
DQMScaleToClient_cfi.factor
factor
Definition: DQMScaleToClient_cfi.py:8
ValidIsoTrkCalib::genPt
float genPt[500]
Definition: ValidIsoTrkCalib.cc:114
ValidIsoTrkCalib::xTrkHcal
Float_t xTrkHcal
Definition: ValidIsoTrkCalib.cc:141
ValidIsoTrkCalib::eAfterDepth2
float eAfterDepth2
Definition: ValidIsoTrkCalib.cc:158
ValidIsoTrkCalib::allowMissingInputs_
bool allowMissingInputs_
Definition: ValidIsoTrkCalib.cc:106
Point3DBase< float, GlobalTag >
TrackAssociatorParameters::loadParameters
void loadParameters(const edm::ParameterSet &, edm::ConsumesCollector &)
Definition: TrackAssociatorParameters.cc:18
gen
Definition: PythiaDecays.h:13
LEDCalibrationChannels.depth
depth
Definition: LEDCalibrationChannels.py:65
ValidIsoTrkCalib::fs
edm::Service< TFileService > fs
Definition: ValidIsoTrkCalib.cc:187
ValidIsoTrkCalib::trackPhi
float trackPhi
Definition: ValidIsoTrkCalib.cc:121
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::LogWarning
Definition: MessageLogger.h:141
ValidIsoTrkCalib::HTime
float HTime[100]
Definition: ValidIsoTrkCalib.cc:171
ValidIsoTrkCalib::iEtaTr
int iEtaTr
Definition: ValidIsoTrkCalib.cc:164
ValidIsoTrkCalib::iEta
int iEta
Definition: ValidIsoTrkCalib.cc:162
ValidIsoTrkCalib::isoPhi
float isoPhi[500]
Definition: ValidIsoTrkCalib.cc:115
LEDCalibrationChannels.ieta
ieta
Definition: LEDCalibrationChannels.py:63
ValidIsoTrkCalib::e5x5After
float e5x5After
Definition: ValidIsoTrkCalib.cc:175
HcalDetId::ieta
constexpr int ieta() const
get the cell ieta
Definition: HcalDetId.h:155
ValidIsoTrkCalib::energyMaxIso
double energyMaxIso
Definition: ValidIsoTrkCalib.cc:128
ValidIsoTrkCalib::eventNumber
int eventNumber
Definition: ValidIsoTrkCalib.cc:176
edm::ParameterSet
Definition: ParameterSet.h:36
ValidIsoTrkCalib::zTrkHcal
Float_t zTrkHcal
Definition: ValidIsoTrkCalib.cc:143
ValidIsoTrkCalib::pixPt
float pixPt[500]
Definition: ValidIsoTrkCalib.cc:116
ValidIsoTrkCalib::trackEta
float trackEta
Definition: ValidIsoTrkCalib.cc:121
edm::SortedCollection::end
const_iterator end() const
Definition: SortedCollection.h:267
ValidIsoTrkCalib::iPhi
int iPhi
Definition: ValidIsoTrkCalib.cc:163
ValidIsoTrkCalib::pixPhi
float pixPhi[500]
Definition: ValidIsoTrkCalib.cc:116
ValidIsoTrkCalib::delR
float delR
Definition: ValidIsoTrkCalib.cc:166
reco::JetExtendedAssociation::getValue
const JetExtendedData & getValue(const Container &, const reco::JetBaseRef &)
get value for the association. Throw exception if no association found
Definition: JetExtendedAssociation.cc:50
ValidIsoTrkCalib::associationConeSize_
double associationConeSize_
Definition: ValidIsoTrkCalib.cc:102
ValidIsoTrkCalib::numVS
float numVS
Definition: ValidIsoTrkCalib.cc:179
ValidIsoTrkCalib::genEta
float genEta[500]
Definition: ValidIsoTrkCalib.cc:114
HcalDetId
Definition: HcalDetId.h:12
iEvent
int iEvent
Definition: GenABIO.cc:224
ValidIsoTrkCalib::tok_ho_
edm::EDGetTokenT< HORecHitCollection > tok_ho_
Definition: ValidIsoTrkCalib.cc:95
ValidIsoTrkCalib::tok_track_
edm::EDGetTokenT< reco::IsolatedPixelTrackCandidateCollection > tok_track_
Definition: ValidIsoTrkCalib.cc:96
ValidIsoTrkCalib::tok_track1_
edm::EDGetTokenT< reco::TrackCollection > tok_track1_
Definition: ValidIsoTrkCalib.cc:97
ValidIsoTrkCalib::eCentHitAfter
float eCentHitAfter
Definition: ValidIsoTrkCalib.cc:160
ValidIsoTrkCalib::iso
int iso
Definition: ValidIsoTrkCalib.cc:113
HcalRespCorrsRcd
Definition: HcalRespCorrsRcd.h:27
ValidIsoTrkCalib::tok_genTrack_
edm::EDGetTokenT< reco::TrackCollection > tok_genTrack_
Definition: ValidIsoTrkCalib.cc:93
ValidIsoTrkCalib::eBeforeDepth1
float eBeforeDepth1
Definition: ValidIsoTrkCalib.cc:155
get
#define get
ValidIsoTrkCalib::ptNear
float ptNear
Definition: ValidIsoTrkCalib.cc:122
ValidIsoTrkCalib::eClustBefore
float eClustBefore
Definition: ValidIsoTrkCalib.cc:146
photonIsolationHIProducer_cfi.hbhe
hbhe
Definition: photonIsolationHIProducer_cfi.py:8
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
TrackDetMatchInfo
Definition: TrackDetMatchInfo.h:14
TrackAssociatorParameters::useHcal
bool useHcal
Definition: TrackAssociatorParameters.h:70
ValidIsoTrkCalib::energyMinIso
double energyMinIso
Definition: ValidIsoTrkCalib.cc:128
ValidIsoTrkCalib::dietatr
int dietatr
Definition: ValidIsoTrkCalib.cc:167
ValidIsoTrkCalib::fTree
TTree * fTree
Definition: ValidIsoTrkCalib.cc:135
ValidIsoTrkCalib::takeGenTracks_
bool takeGenTracks_
Definition: ValidIsoTrkCalib.cc:111
ValidIsoTrkCalib::energyECALmip
double energyECALmip
Definition: ValidIsoTrkCalib.cc:127
ValidIsoTrkCalib::isoEta
float isoEta[500]
Definition: ValidIsoTrkCalib.cc:115
ValidIsoTrkCalib::phiTrack
float phiTrack
Definition: ValidIsoTrkCalib.cc:150
ValidIsoTrkCalib::diphitr
int diphitr
Definition: ValidIsoTrkCalib.cc:168
ValidIsoTrkCalib::genhbheLabel_
InputTag genhbheLabel_
Definition: ValidIsoTrkCalib.cc:89
ValidIsoTrkCalib::tok_hbhe_
edm::EDGetTokenT< HBHERecHitCollection > tok_hbhe_
Definition: ValidIsoTrkCalib.cc:94
ValidIsoTrkCalib::nTracks
TH1F * nTracks
Definition: ValidIsoTrkCalib.cc:185
ValidIsoTrkCalib::iTime
float iTime
Definition: ValidIsoTrkCalib.cc:170
ValidIsoTrkCalib::etaTrack
float etaTrack
Definition: ValidIsoTrkCalib.cc:149
isolatedTracks_cfi.generalTracks
generalTracks
Definition: isolatedTracks_cfi.py:31
cms::Exception
Definition: Exception.h:70
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
TrackDetectorAssociator::associate
TrackDetMatchInfo associate(const edm::Event &, const edm::EventSetup &, const FreeTrajectoryState &, const AssociatorParameters &)
Definition: TrackDetectorAssociator.cc:154
ValidIsoTrkCalib::genPhi
float genPhi[500]
Definition: ValidIsoTrkCalib.cc:114
ValidIsoTrkCalib::iPhiTr
int iPhiTr
Definition: ValidIsoTrkCalib.cc:165
ValidIsoTrkCalib::respRecalib
const HcalRespCorrs * respRecalib
Definition: ValidIsoTrkCalib.cc:181
HcalGeometry
Definition: HcalGeometry.h:17
ValidIsoTrkCalib::yTrkHcal
Float_t yTrkHcal
Definition: ValidIsoTrkCalib.cc:142
ValidIsoTrkCalib::numValidTrkStrips
float numValidTrkStrips
Definition: ValidIsoTrkCalib.cc:179
edm::InputTag
Definition: InputTag.h:15
edm::ConsumesCollector
Definition: ConsumesCollector.h:39
TFileService::make
T * make(const Args &... args) const
make new ROOT object
Definition: TFileService.h:64
TrackAssociatorParameters::useEcal
bool useEcal
Definition: TrackAssociatorParameters.h:69
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
HcalGeometry::getClosestCell
DetId getClosestCell(const GlobalPoint &r) const override
Definition: HcalGeometry.cc:106
MaxHit_struct::depthhit
int depthhit
Definition: CommonUsefulStuff.h:46