CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 ()
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
 EDConsumerBase ()
 
ProductHolderIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
std::vector
< ProductHolderIndexAndSkipBit >
const & 
itemsToGetFromEvent () const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesDependentUpon (const std::string &iProcessName, std::vector< const char * > &oModuleLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
bool registeredToConsume (ProductHolderIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 

Private Member Functions

virtual void analyze (const edm::Event &, const edm::EventSetup &) override
 
virtual void beginJob () override
 
virtual 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::TrackCollection
tok_genTrack_
 
edm::EDGetTokenT
< HBHERecHitCollection
tok_hbhe_
 
edm::EDGetTokenT
< HORecHitCollection
tok_ho_
 
edm::EDGetTokenT
< reco::TrackCollection
tok_track1_
 
edm::EDGetTokenT
< reco::IsolatedPixelTrackCandidateCollection
tok_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
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, 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 ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Definition at line 66 of file ValidIsoTrkCalib.cc.

Constructor & Destructor Documentation

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

Definition at line 199 of file ValidIsoTrkCalib.cc.

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

201 {
202 
203  //takeAllRecHits_=iConfig.getUntrackedParameter<bool>("takeAllRecHits");
204  takeGenTracks_=iConfig.getUntrackedParameter<bool>("takeGenTracks");
205 
206  tok_genTrack_ = consumes<reco::TrackCollection>(iConfig.getParameter<edm::InputTag>("genTracksLabel"));
207  genhbheLabel_= iConfig.getParameter<edm::InputTag>("genHBHE");
208  //genhoLabel_=iConfig.getParameter<edm::InputTag>("genHO");
209  //genecalLabel_=iConfig.getParameter<std::vector<edm::InputTag> >("genECAL");
210 
211  // m_hcalLabel = iConfig.getUntrackedParameter<std::string> ("hcalRecHitsLabel","hbhereco");
212 
213  tok_hbhe_ = consumes<HBHERecHitCollection>(iConfig.getParameter<edm::InputTag>("hbheInput"));
214  tok_ho_ = consumes<HORecHitCollection>(iConfig.getParameter<edm::InputTag>("hoInput"));
215  //eLabel_=iConfig.getParameter<edm::InputTag>("eInput");
216  tok_track_ = consumes<reco::IsolatedPixelTrackCandidateCollection>(iConfig.getParameter<edm::InputTag>("HcalIsolTrackInput"));
217  tok_track1_ = consumes<reco::TrackCollection>(iConfig.getParameter<edm::InputTag>("trackInput"));
218 
219  associationConeSize_=iConfig.getParameter<double>("associationConeSize");
220  allowMissingInputs_=iConfig.getUntrackedParameter<bool>("allowMissingInputs", true);
221 // outputFileName_=iConfig.getParameter<std::string>("outputFileName");
222  // calibFactorsFileName_=iConfig.getParameter<std::string>("calibFactorsFileName");
223 
224 
225  AxB_=iConfig.getParameter<std::string>("AxB");
226  calibrationConeSize_=iConfig.getParameter<double>("calibrationConeSize");
227 
228  MinNTrackHitsBarrel = iConfig.getParameter<int>("MinNTrackHitsBarrel");
229  MinNTECHitsEndcap = iConfig.getParameter<int>("MinNTECHitsEndcap");
230  energyECALmip = iConfig.getParameter<double>("energyECALmip");
231  energyMinIso = iConfig.getParameter<double>("energyMinIso");
232  energyMaxIso = iConfig.getParameter<double>("energyMaxIso");
233  maxPNear = iConfig.getParameter<double>("maxPNear");
234 
235  edm::ParameterSet parameters = iConfig.getParameter<edm::ParameterSet>("TrackAssociatorParameters");
239 
240  // taECALCone_=iConfig.getUntrackedParameter<double>("TrackAssociatorECALCone",0.5);
241  //taHCALCone_=iConfig.getUntrackedParameter<double>("TrackAssociatorHCALCone",0.6);
242 
243 }
edm::EDGetTokenT< reco::TrackCollection > tok_genTrack_
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
dictionary parameters
Definition: Parameters.py:2
void useDefaultPropagator()
use the default propagator
void loadParameters(const edm::ParameterSet &, edm::ConsumesCollector &)
TrackAssociatorParameters parameters_
edm::EDGetTokenT< reco::IsolatedPixelTrackCandidateCollection > tok_track_
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
TrackDetectorAssociator trackAssociator_
edm::EDGetTokenT< HBHERecHitCollection > tok_hbhe_
edm::EDGetTokenT< HORecHitCollection > tok_ho_
edm::EDGetTokenT< reco::TrackCollection > tok_track1_
ValidIsoTrkCalib::~ValidIsoTrkCalib ( )

Definition at line 246 of file ValidIsoTrkCalib.cc.

247 {
248 
249  // do anything here that needs to be done at desctruction time
250  // (e.g. close files, deallocate resources etc.)
251 
252 }

Member Function Documentation

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

Implements edm::EDAnalyzer.

Definition at line 257 of file ValidIsoTrkCalib.cc.

References funct::abs(), gather_cfg::cout, HLT_25ns14e33_v1_cff::depth, MaxHit_struct::depthhit, MaxHit_struct::dr, alignCSCRings::e, edm::EventID::event(), HcalObjRepresent::Fill(), relval_steps::gen(), DataMixerPreMix_cff::generalTracks, edm::EventSetup::get(), edm::Event::getByToken(), getDistInPlaneSimple(), reco::JetExtendedAssociation::getValue(), DetId::Hcal, HcalBarrel, MaxHit_struct::hitenergy, i, edm::EventBase::id(), HcalDetId::ieta(), MaxHit_struct::ietahitm, info(), HcalDetId::iphi(), MaxHit_struct::iphihitm, gen::n, edm::ESHandle< class >::product(), edm::EventID::run(), convertSQLiteXML::runNumber, mathSSE::sqrt(), reco::btau::trackEta, reco::btau::trackPhi, listHistos::trackPt, TrackDetMatchInfo::trkGlobPosAtEcal, and TrackDetMatchInfo::trkGlobPosAtHcal.

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

Reimplemented from edm::EDAnalyzer.

Definition at line 776 of file ValidIsoTrkCalib.cc.

References relval_steps::gen(), and convertSQLiteXML::runNumber.

777 {
778 
779  // if(!ReadCalibFactors(calibFactorsFileName_.c_str() )) {cout<<"Cant read file with cailib coefficients!! ---"<<endl;}
780 
781 // try{
782 // edm::ESHandle <HcalRespCorrs> recalibCorrs;
783 // iSetup.get<HcalRespCorrsRcd>().get("recalibrate",recalibCorrs);
784 // respRecalib = recalibCorrs.product();
785 //
786 // LogInfo("CalibConstants")<<" Loaded: OK ";
787 //
788 // }catch(const cms::Exception & e) {
789 // LogWarning("CalibConstants")<<" Not Found!! ";
790 // }
791 
792 
793  // rootFile = new TFile(outputFileName_.c_str(),"RECREATE");
794 
795  //@@@@@@@@@@@@@
796  //TFileDirectory ValDir = fs->mkdir("Validation");
797 
798  nTracks = fs->make<TH1F>("nTracks","general;number of general tracks",11,-0.5,10.5);
799 
800 
801  tTree = fs->make<TTree>("tTree", "Tree for gen info");
802 
803  fTree = fs->make<TTree>("fTree", "Tree for IsoTrack Calibration");
804 
805  fTree->Branch("eventNumber", &eventNumber, "eventNumber/I");
806  fTree->Branch("runNumber", &runNumber, "runNumber/I");
807 
808  fTree->Branch("eClustBefore", &eClustBefore,"eClustBefore/F");
809  fTree->Branch("eClustAfter", &eClustAfter,"eClustAfter/F");
810  fTree->Branch("eTrack", &eTrack, "eTrack/F");
811  fTree->Branch("etaTrack", &etaTrack, "etaTrack/F");
812  fTree->Branch("phiTrack", &phiTrack, "phiTrack/F");
813 
814  fTree->Branch("numHits", &numHits, "numHits/I");
815  fTree->Branch("eECAL", &eECAL, "eECAL/F");
816  fTree->Branch("PtNearBy", &PtNearBy, "PtNearBy/F");
817  fTree->Branch("numValidTrkHits", &numValidTrkHits, "numValidTrkHits/F");
818  fTree->Branch("numValidTrkStrips", &numValidTrkStrips, "numValidTrkStrips/F");
819 
820  fTree->Branch("eBeforeDepth1", &eBeforeDepth1, "eBeforeDepth1/F");
821  fTree->Branch("eBeforeDepth2", &eBeforeDepth2, "eBeforeDepth2/F");
822  fTree->Branch("eAfterDepth1", &eAfterDepth1, "eAfterDepth1/F");
823  fTree->Branch("eAfterDepth2", &eAfterDepth2, "eAfterDepth2/F");
824 
825  fTree->Branch("e3x3Before", &e3x3Before, "e3x3Before/F");
826  fTree->Branch("e3x3After", &e3x3After, "e3x3After/F");
827  fTree->Branch("e5x5Before", &e5x5Before, "e5x5Before/F");
828  fTree->Branch("e5x5After", &e5x5After, "e5x5After/F");
829 
830  fTree->Branch("eCentHitAfter", &eCentHitAfter, "eCentHitAfter/F");
831  fTree->Branch("eCentHitBefore", &eCentHitBefore, "eCentHitBefore/F");
832  fTree->Branch("iEta", &iEta, "iEta/I");
833  fTree->Branch("iPhi", &iPhi, "iPhi/I");
834 
835 
836  fTree->Branch("iEtaTr", &iEtaTr, "iEtaTr/I");
837  fTree->Branch("iPhiTr", &iPhiTr, "iPhiTr/I");
838  fTree->Branch("dietatr", &dietatr, "dietatr/I");
839  fTree->Branch("diphitr", &diphitr, "diphitr/I");
840  fTree->Branch("iDr", &iDr, "iDr/F");
841  fTree->Branch("delR", &delR, "delR/F");
842 
843  fTree->Branch("iTime", &iTime, "iTime/F");
844  fTree->Branch("HTime", HTime, "HTime[numHits]/F");
845 
846  fTree->Branch("xTrkEcal", &xTrkEcal, "xTrkEcal/F");
847  fTree->Branch("yTrkEcal", &yTrkEcal, "yTrkEcal/F");
848  fTree->Branch("zTrkEcal", &zTrkEcal, "zTrkEcal/F");
849  fTree->Branch("xTrkHcal", &xTrkHcal, "xTrkHcal/F");
850  fTree->Branch("yTrkHcal", &yTrkHcal, "yTrkHcal/F");
851  fTree->Branch("zTrkHcal", &zTrkHcal, "zTrkHcal/F");
852 
853  if(takeGenTracks_) {
854  tTree->Branch("gen", &gen, "gen/I");
855  tTree->Branch("iso", &iso, "iso/I");
856  tTree->Branch("pix", &pix, "pix/I");
857  tTree->Branch("genPt", genPt, "genPt[gen]/F");
858  tTree->Branch("genPhi", genPhi, "genPhi[gen]/F");
859  tTree->Branch("genEta", genEta, "genEta[gen]/F");
860 
861  tTree->Branch("isoPt", isoPt, "isoPt[iso]/F");
862  tTree->Branch("isoPhi", isoPhi, "isoPhi[iso]/F");
863  tTree->Branch("isoEta", isoEta, "isoEta[iso]/F");
864 
865  tTree->Branch("pixPt", pixPt, "pixPt[pix]/F");
866  tTree->Branch("pixPhi", pixPhi, "pixPhi[pix]/F");
867  tTree->Branch("pixEta", pixEta, "pixEta[pix]/F");
868  }
869 
870 
871 }
T * make(const Args &...args) const
make new ROOT object
Definition: TFileService.h:64
edm::Service< TFileService > fs
void ValidIsoTrkCalib::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 877 of file ValidIsoTrkCalib.cc.

878 {
879  // rootFile->Write();
880  //rootFile->Close();
881 }

Member Data Documentation

bool ValidIsoTrkCalib::allowMissingInputs_
private

Definition at line 109 of file ValidIsoTrkCalib.cc.

double ValidIsoTrkCalib::associationConeSize_
private

Definition at line 105 of file ValidIsoTrkCalib.cc.

string ValidIsoTrkCalib::AxB_
private

Definition at line 106 of file ValidIsoTrkCalib.cc.

double ValidIsoTrkCalib::calibrationConeSize_
private

Definition at line 107 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::CentHitFactor
private

Definition at line 166 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::delR
private

Definition at line 171 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::dietatr
private

Definition at line 172 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::diphitr
private

Definition at line 173 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::e3x3After
private

Definition at line 178 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::e3x3Before
private

Definition at line 177 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::e5x5After
private

Definition at line 180 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::e5x5Before
private

Definition at line 179 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::eAfterDepth1
private

Definition at line 161 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::eAfterDepth2
private

Definition at line 163 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::eBeforeDepth1
private

Definition at line 160 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::eBeforeDepth2
private

Definition at line 162 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::eCentHitAfter
private

Definition at line 165 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::eCentHitBefore
private

Definition at line 164 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::eClustAfter
private

Definition at line 152 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::eClustBefore
private

Definition at line 151 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::eECAL
private

Definition at line 156 of file ValidIsoTrkCalib.cc.

Float_t ValidIsoTrkCalib::emEnergy
private

Definition at line 135 of file ValidIsoTrkCalib.cc.

double ValidIsoTrkCalib::energyECALmip
private

Definition at line 131 of file ValidIsoTrkCalib.cc.

double ValidIsoTrkCalib::energyMaxIso
private

Definition at line 132 of file ValidIsoTrkCalib.cc.

double ValidIsoTrkCalib::energyMinIso
private

Definition at line 132 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::etaTrack
private

Definition at line 154 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::eTrack
private

Definition at line 153 of file ValidIsoTrkCalib.cc.

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

Definition at line 192 of file ValidIsoTrkCalib.cc.

TTree * ValidIsoTrkCalib::fTree
private

Definition at line 140 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::gen
private

Definition at line 116 of file ValidIsoTrkCalib.cc.

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

Definition at line 94 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::genEta[500]
private

Definition at line 117 of file ValidIsoTrkCalib.cc.

InputTag ValidIsoTrkCalib::genhbheLabel_
private

Definition at line 92 of file ValidIsoTrkCalib.cc.

InputTag ValidIsoTrkCalib::genhoLabel_
private

Definition at line 93 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::genPhi[500]
private

Definition at line 117 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::genPt[500]
private

Definition at line 117 of file ValidIsoTrkCalib.cc.

const CaloGeometry* ValidIsoTrkCalib::geo
private

Definition at line 90 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::HTime[100]
private

Definition at line 176 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::iDr
private

Definition at line 171 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::iEta
private

Definition at line 167 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::iEtaTr
private

Definition at line 169 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::iPhi
private

Definition at line 168 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::iPhiTr
private

Definition at line 170 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::iso
private

Definition at line 116 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::isoEta[500]
private

Definition at line 118 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::isoPhi[500]
private

Definition at line 118 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::isoPt[500]
private

Definition at line 118 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::iTime
private

Definition at line 175 of file ValidIsoTrkCalib.cc.

double ValidIsoTrkCalib::maxPNear
private

Definition at line 131 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::MinNTECHitsEndcap
private

Definition at line 130 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::MinNTrackHitsBarrel
private

Definition at line 130 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::Nhits
private

Definition at line 150 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::NisoTrk
private

Definition at line 124 of file ValidIsoTrkCalib.cc.

TH1F* ValidIsoTrkCalib::nTracks
private

Definition at line 190 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::numHits
private

Definition at line 157 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::numValidTrkHits
private

Definition at line 184 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::numValidTrkStrips
private

Definition at line 184 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::numVH
private

Definition at line 184 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::numVS
private

Definition at line 184 of file ValidIsoTrkCalib.cc.

string ValidIsoTrkCalib::outputFileName_
private

Definition at line 110 of file ValidIsoTrkCalib.cc.

TrackAssociatorParameters ValidIsoTrkCalib::parameters_
private
float ValidIsoTrkCalib::phiTrack
private

Definition at line 155 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::pix
private

Definition at line 116 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::pixEta[500]
private

Definition at line 119 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::pixPhi[500]
private

Definition at line 119 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::pixPt[500]
private

Definition at line 119 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::ptNear
private

Definition at line 126 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::PtNearBy
private

Definition at line 183 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::ptrack
private

Definition at line 127 of file ValidIsoTrkCalib.cc.

const HcalRespCorrs* ValidIsoTrkCalib::respRecalib
private

Definition at line 186 of file ValidIsoTrkCalib.cc.

int ValidIsoTrkCalib::runNumber
private

Definition at line 182 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::rvert
private

Definition at line 127 of file ValidIsoTrkCalib.cc.

double ValidIsoTrkCalib::taECALCone_
private

Definition at line 87 of file ValidIsoTrkCalib.cc.

double ValidIsoTrkCalib::taHCALCone_
private

Definition at line 88 of file ValidIsoTrkCalib.cc.

bool ValidIsoTrkCalib::takeGenTracks_
private

Definition at line 114 of file ValidIsoTrkCalib.cc.

Float_t ValidIsoTrkCalib::targetE
private

Definition at line 136 of file ValidIsoTrkCalib.cc.

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

Definition at line 96 of file ValidIsoTrkCalib.cc.

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

Definition at line 97 of file ValidIsoTrkCalib.cc.

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

Definition at line 98 of file ValidIsoTrkCalib.cc.

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

Definition at line 100 of file ValidIsoTrkCalib.cc.

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

Definition at line 99 of file ValidIsoTrkCalib.cc.

TrackDetectorAssociator ValidIsoTrkCalib::trackAssociator_
private

Definition at line 85 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::trackE
private

Definition at line 125 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::trackEta
private

Definition at line 125 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::trackPhi
private

Definition at line 125 of file ValidIsoTrkCalib.cc.

float ValidIsoTrkCalib::trackPt
private

Definition at line 125 of file ValidIsoTrkCalib.cc.

TTree* ValidIsoTrkCalib::tTree
private

Definition at line 140 of file ValidIsoTrkCalib.cc.

Float_t ValidIsoTrkCalib::xTrkEcal
private

Definition at line 142 of file ValidIsoTrkCalib.cc.

Float_t ValidIsoTrkCalib::xTrkHcal
private

Definition at line 146 of file ValidIsoTrkCalib.cc.

Float_t ValidIsoTrkCalib::yTrkEcal
private

Definition at line 143 of file ValidIsoTrkCalib.cc.

Float_t ValidIsoTrkCalib::yTrkHcal
private

Definition at line 147 of file ValidIsoTrkCalib.cc.

Float_t ValidIsoTrkCalib::zTrkEcal
private

Definition at line 144 of file ValidIsoTrkCalib.cc.

Float_t ValidIsoTrkCalib::zTrkHcal
private

Definition at line 148 of file ValidIsoTrkCalib.cc.