CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

HcalCorrPFCalculation Class Reference

Inheritance diagram for HcalCorrPFCalculation:
edm::EDAnalyzer

List of all members.

Public Member Functions

virtual void analyze (edm::Event const &ev, edm::EventSetup const &c)
virtual void beginJob ()
virtual void endJob ()
 HcalCorrPFCalculation (edm::ParameterSet const &conf)
 ~HcalCorrPFCalculation ()

Private Member Functions

double getDistInPlaneSimple (const GlobalPoint caloPoint, const GlobalPoint rechitPoint)
double RecalibFactor (HcalDetId id)

Private Attributes

Bool_t AddRecalib
bool Conecorr_
Bool_t doHF
double eEcalCone
double eHcalCone
double eHcalConeNoise
TH1F * enEcalB
TH1F * enEcalE
double energyECALmip
TProfile * enHcal
TProfile * enHcalNoise
edm::Service< TFileServicefs
const CaloGeometrygeo
Int_t iEta
Int_t iPhi
TProfile * nCells
TProfile * nCellsNoise
int nevtot
TrackAssociatorParameters parameters_
bool PFcorr_
const HcalPFCorrspfRecalib
TTree * pfTree
double radius_
bool Respcorr_
const HcalRespCorrsrespRecalib
TFile * rootFile
SteppingHelixPropagatorstepPropF
double taECALCone_
double taHCALCone_
MagneticFieldtheMagField
TrackDetectorAssociator trackAssociator_
int UsedCells
int UsedCellsNoise
Float_t xTrkEcal
Float_t xTrkHcal
Float_t yTrkEcal
Float_t yTrkHcal
Float_t zTrkEcal
Float_t zTrkHcal

Detailed Description

Definition at line 50 of file HcalCorrPFCalculation.cc.


Constructor & Destructor Documentation

HcalCorrPFCalculation::HcalCorrPFCalculation ( edm::ParameterSet const &  conf)

Definition at line 112 of file HcalCorrPFCalculation.cc.

References edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), and ExpressReco_HICollisions_FallBack::parameters.

                                                                        {

  //  outputFile_ = conf.getUntrackedParameter<std::string>("outputFile", "myfile.root");
  
    Respcorr_        = conf.getUntrackedParameter<bool>("RespcorrAdd", false);
  PFcorr_        = conf.getUntrackedParameter<bool>("PFcorrAdd", false);
  Conecorr_        = conf.getUntrackedParameter<bool>("ConeCorrAdd", true);
  radius_       = conf.getUntrackedParameter<double>("ConeRadiusCm", 40.);
  energyECALmip = conf.getParameter<double>("energyECALmip");

  edm::ParameterSet parameters = conf.getParameter<edm::ParameterSet>("TrackAssociatorParameters");
  parameters_.loadParameters( parameters );
  trackAssociator_.useDefaultPropagator();

  taECALCone_=conf.getUntrackedParameter<double>("TrackAssociatorECALCone",0.5);
  taHCALCone_=conf.getUntrackedParameter<double>("TrackAssociatorHCALCone",0.6);

}
HcalCorrPFCalculation::~HcalCorrPFCalculation ( )

Definition at line 183 of file HcalCorrPFCalculation.cc.

                                              {

  
}

Member Function Documentation

void HcalCorrPFCalculation::analyze ( edm::Event const &  ev,
edm::EventSetup const &  c 
) [virtual]

Implements edm::EDAnalyzer.

Definition at line 188 of file HcalCorrPFCalculation.cc.

References abs, edm::SortedCollection< T, SORT >::begin(), DeDxDiscriminatorTools::charge(), gather_cfg::cout, MaxHit_struct::depthhit, MaxHit_struct::dr, ExpressReco_HICollisions_FallBack::e, edm::SortedCollection< T, SORT >::end(), edm::EventSetup::get(), edm::Event::getByLabel(), edm::Event::getByType(), CaloSubdetectorGeometry::getClosestCell(), getDistInPlaneSimple(), DetId::Hcal, HcalBarrel, HcalEndcap, HcalForward, MaxHit_struct::hitenergy, HcalDetId::ieta(), MaxHit_struct::ietahitm, info, HcalDetId::iphi(), MaxHit_struct::iphihitm, edm::HandleBase::isValid(), npart, L1TEmulatorMonitor_cff::p, PV3DBase< T, PVType, FrameType >::phi(), pos, edm::ESHandle< T >::product(), edm::Handle< T >::product(), ExpressReco_HICollisions_FallBack::pt, mathSSE::sqrt(), TrackDetMatchInfo::trkGlobPosAtEcal, and TrackDetMatchInfo::trkGlobPosAtHcal.

                                                                              {

  AddRecalib=kFALSE;

  try{

    edm::ESHandle <HcalRespCorrs> recalibCorrs;
    c.get<HcalRespCorrsRcd>().get("recalibrate",recalibCorrs);
    respRecalib = recalibCorrs.product();

    edm::ESHandle <HcalPFCorrs> pfCorrs;
    c.get<HcalPFCorrsRcd>().get("recalibrate",pfCorrs);
    pfRecalib = pfCorrs.product();

    AddRecalib = kTRUE;;
    // LogMessage("CalibConstants")<<"   OK ";

  }catch(const cms::Exception & e) {
    LogWarning("CalibConstants")<<"   Not Found!! ";
  }


  
    edm::ESHandle<CaloGeometry> pG;
    c.get<CaloGeometryRecord>().get(pG);
    geo = pG.product();
    
    parameters_.useEcal = true;
    parameters_.useHcal = true;
    parameters_.useCalo = false;
    parameters_.useMuon = false;
    parameters_.dREcal = taECALCone_;
    parameters_.dRHcal = taHCALCone_;    

    
  //  double eta_bin[42]={0.,.087,.174,.261,.348,.435,.522,.609,.696,.783,
  //.870,.957,1.044,1.131,1.218,1.305,1.392,1.479,1.566,1.653,1.740,1.830,1.930,2.043,2.172,
  //2.322,2.500,2.650,2.853,3.000,3.139,3.314,3.489,3.664,3.839,4.013,4.191,4.363,4.538,4.716,4.889,5.191};
  
  // MC info 
  double phi_MC = -999999.;  // phi of initial particle from HepMC
  double eta_MC = -999999.;  // eta of initial particle from HepMC
  double mom_MC = 50.;  // P of initial particle from HepMC
  bool MC = false;
  
  // MC information
  
    
  edm::Handle<edm::HepMCProduct> evtMC;
  //  ev.getByLabel("VtxSmeared",evtMC);
  ev.getByLabel("generator",evtMC);
  if (!evtMC.isValid()) 
    {
      std::cout << "no HepMCProduct found" << std::endl;    
    } 
  else 
    {
      MC=true;
      //    std::cout << "*** source HepMCProduct found"<< std::endl;
    }  
  
  // MC particle with highest pt is taken as a direction reference  
  double maxPt = -99999.;
  int npart    = 0;
  
  GlobalPoint pos (0,0,0);
  
  HepMC::GenEvent * myGenEvent = new  HepMC::GenEvent(*(evtMC->GetEvent()));
  for ( HepMC::GenEvent::particle_iterator p = myGenEvent->particles_begin();
        p != myGenEvent->particles_end(); ++p ) 
    {
      double phip = (*p)->momentum().phi();
      double etap = (*p)->momentum().eta();
      double pt  = (*p)->momentum().perp();
      mom_MC = (*p)->momentum().rho();
      if(pt > maxPt) { npart++; maxPt = pt; phi_MC = phip; eta_MC = etap; }
      GlobalVector mom ((*p)->momentum().x(),(*p)->momentum().y(),(*p)->momentum().z());
      int charge = -1;
      
      if(abs((*p)->pdg_id())==211) charge = (*p)->pdg_id()/abs((*p)->pdg_id()); // pions only !!!
      else continue;
      
      const FreeTrajectoryState *freetrajectorystate_ =
        new FreeTrajectoryState(pos, mom ,charge , &(*theMagField));
      
      TrackDetMatchInfo info = trackAssociator_.associate(ev, c, *freetrajectorystate_ , parameters_);
      // TrackDetMatchInfo info = trackAssociator_.associate(iEvent, iSetup,trackAssociator_.getFreeTrajectoryState(iSetup, *trit), parameters_);

      float etahcal=info.trkGlobPosAtHcal.eta();
      float phihcal=info.trkGlobPosAtHcal.phi();

      float etaecal=info.trkGlobPosAtEcal.eta();
      //    float phiecal=info.trkGlobPosAtEcal.phi();
      
      
      xTrkEcal=info.trkGlobPosAtEcal.x();
      yTrkEcal=info.trkGlobPosAtEcal.y();
      zTrkEcal=info.trkGlobPosAtEcal.z();
      
      xTrkHcal=info.trkGlobPosAtHcal.x();
      yTrkHcal=info.trkGlobPosAtHcal.y();
      zTrkHcal=info.trkGlobPosAtHcal.z();
      
      GlobalPoint gPointHcal(xTrkHcal,yTrkHcal,zTrkHcal);
      
      GlobalPoint gPointEcal(xTrkEcal,yTrkEcal,zTrkEcal);
      
      if (etahcal>2.6) doHF = kTRUE;
   
      
      
      edm::Handle<HBHERecHitCollection> hbhe;
      ev.getByType(hbhe);
      const HBHERecHitCollection Hithbhe = *(hbhe.product());
      
      edm::Handle<HFRecHitCollection> hfcoll;
      ev.getByType(hfcoll);
      const HFRecHitCollection Hithf = *(hfcoll.product());
      
      
      edm::Handle<HORecHitCollection> hocoll;
      ev.getByType(hocoll);
      const HORecHitCollection Hitho = *(hocoll.product());
      
      
      edm::Handle<EERecHitCollection> ecalEE;
      ev.getByLabel("ecalRecHit","EcalRecHitsEE",ecalEE);
      const EERecHitCollection HitecalEE = *(ecalEE.product());

      edm::Handle<EBRecHitCollection> ecalEB;
      ev.getByLabel("ecalRecHit","EcalRecHitsEB",ecalEB);
      const EBRecHitCollection HitecalEB = *(ecalEB.product());
      
      
      
      // energy in ECAL
      eEcalCone   = 0.;
      // int numrechitsEcal = 0;
      
      //Hcal:
      eHcalCone = 0.;
      eHcalConeNoise = 0.;
      UsedCells = 0;
      UsedCellsNoise = 0;
      

      Int_t iphitrue = -10;
      Int_t ietatrue = 100;
      
      if (etahcal<1.392) 
        {
          const CaloSubdetectorGeometry* gHB = geo->getSubdetectorGeometry(DetId::Hcal,HcalBarrel);
          //    const GlobalPoint tempPoint(newx, newy, newz);
          //const DetId tempId = gHB->getClosestCell(tempPoint);
          const HcalDetId tempId = gHB->getClosestCell(gPointHcal);
          ietatrue = tempId.ieta();
          iphitrue = tempId.iphi();
        }
      
      if (etahcal>1.392 &&  etahcal<3.0) 
        {
          const CaloSubdetectorGeometry* gHE = geo->getSubdetectorGeometry(DetId::Hcal,HcalEndcap);
          const HcalDetId tempId = gHE->getClosestCell(gPointHcal);
          ietatrue = tempId.ieta();
          iphitrue = tempId.iphi();
        }
      
      if (etahcal>3.0 &&  etahcal<5.0) 
        {
          const CaloSubdetectorGeometry* gHF = geo->getSubdetectorGeometry(DetId::Hcal,HcalForward);
          const HcalDetId tempId = gHF->getClosestCell(gPointHcal);
          ietatrue = tempId.ieta();
          iphitrue = tempId.iphi();
        }
      
      //Calculate Ecal energy:      
      for (EBRecHitCollection::const_iterator ehit=HitecalEB.begin(); ehit!=HitecalEB.end(); ehit++)    
        {
          
          GlobalPoint pos = geo->getPosition(ehit->detid());
          float dr =  getDistInPlaneSimple(gPointEcal,pos);
          if (dr < 10.) eEcalCone += ehit->energy();
        }

      for (EERecHitCollection::const_iterator ehit=HitecalEE.begin(); ehit!=HitecalEE.end(); ehit++)    
        {
          
          GlobalPoint pos = geo->getPosition(ehit->detid());
          float dr =  getDistInPlaneSimple(gPointEcal,pos);
          if (dr < 10.) eEcalCone += ehit->energy();
        }
      if(abs(etaecal)<1.5) enEcalB -> Fill(eEcalCone); 
      if(abs(etaecal)>1.5 && abs(etaecal)<3.1) enEcalE -> Fill(eEcalCone); 


      MaxHit_struct MaxHit;

      MaxHit.hitenergy=-100.;


      Float_t recal = 1.0;


      for (HBHERecHitCollection::const_iterator hhit=Hithbhe.begin(); hhit!=Hithbhe.end(); hhit++) 
        { 
        
          recal = RecalibFactor(hhit->detid());
          //cout<<"recal: "<<recal<<endl;

          GlobalPoint pos = geo->getPosition(hhit->detid());
          float phihit = pos.phi();
          float etahit = pos.eta();
          
          int iphihit  = (hhit->id()).iphi();
          int ietahit  = (hhit->id()).ieta();
          int depthhit = (hhit->id()).depth();
          float enehit = hhit->energy()* recal;

          //Set noise RecHit opposite to track hits
          int  iphihitNoise = iphihit >36 ? iphihit-36 : iphihit+36;
          int ietahitNoise  = ietahit;
          int depthhitNoise = depthhit;
          
          double dphi = fabs(phihcal - phihit); 
          if(dphi > 4.*atan(1.)) dphi = 8.*atan(1.) - dphi;
          double deta = fabs(etahcal - etahit); 
          double dr = sqrt(dphi*dphi + deta*deta);
          
          //dr =  getDistInPlaneSimple(gPointHcal,pos);

          if(dr<0.5) 
            {
              
              for (HBHERecHitCollection::const_iterator hhit2=Hithbhe.begin(); hhit2!=Hithbhe.end(); hhit2++) 
                {
                  int iphihit2  = (hhit2->id()).iphi();
                  int ietahit2  = (hhit2->id()).ieta();
                  int depthhit2 = (hhit2->id()).depth();
                  float enehit2 = hhit2->energy() * recal;
                  
                  if (iphihit==iphihit2 && ietahit==ietahit2  && depthhit!=depthhit2)  enehit = enehit+enehit2;
                
                }                 
              
              //Find a Hit with Maximum Energy
              
              if(enehit > MaxHit.hitenergy) 
                {
                  MaxHit.hitenergy =  enehit;
                  MaxHit.ietahitm   = (hhit->id()).ieta();
                  MaxHit.iphihitm   = (hhit->id()).iphi();
                  MaxHit.dr   = dr;
                  //MaxHit.depthhit  = (hhit->id()).depth();
                  MaxHit.depthhit  = 1;
                }
            }
          
          if(dr<radius_ && enehit>0.01) 
            {
              eHcalCone += enehit;          
              UsedCells++;

              // cout<<"track: ieta "<<ietahit<<" iphi: "<<iphihit<<" depth: "<<depthhit<<" energydepos: "<<enehit<<endl;
              
              for (HBHERecHitCollection::const_iterator hhit2=Hithbhe.begin(); hhit2!=Hithbhe.end(); hhit2++) 
                {
                  recal = RecalibFactor(hhit2->detid());
                  int iphihit2 = (hhit2->id()).iphi();
                  int ietahit2 = (hhit2->id()).ieta();
                  int depthhit2 = (hhit2->id()).depth();
                  float enehit2 = hhit2->energy()* recal;       
                  
                  if (iphihitNoise == iphihit2 && ietahitNoise == ietahit2 && depthhitNoise == depthhit2 && enehit2>0.01)
                    {
                      
                      eHcalConeNoise += hhit2->energy()*recal;
                      UsedCellsNoise++;
                      //cout<<"Noise: ieta "<<ietahit2<<" iphi: "<<iphihit2<<" depth: "<<depthhit2<<" energydepos: "<<enehit2<<endl;
                    }
                }
            }
        } //end of all HBHE hits cycle
      
      if(doHF){
        for (HFRecHitCollection::const_iterator hhit=Hithf.begin(); hhit!=Hithf.end(); hhit++) 
        {

          recal = RecalibFactor(hhit->detid());

          GlobalPoint pos = geo->getPosition(hhit->detid());
          float phihit = pos.phi();
          float etahit = pos.eta();
          
          int iphihit  = (hhit->id()).iphi();
          int ietahit  = (hhit->id()).ieta();
          int depthhit = (hhit->id()).depth();
          float enehit = hhit->energy()* recal;

          //Set noise RecHit opposite to track hits
          int  iphihitNoise = iphihit >36 ? iphihit-36 : iphihit+36;
          int ietahitNoise  = ietahit;
          int depthhitNoise = depthhit;
          
          
          double dphi = fabs(phihcal - phihit); 
          if(dphi > 4.*atan(1.)) dphi = 8.*atan(1.) - dphi;
          double deta = fabs(etahcal - etahit); 
          double dr = sqrt(dphi*dphi + deta*deta);
          
          dr =  getDistInPlaneSimple(gPointHcal,pos);
          

          if(dr<60.) 
            {
              //Find a Hit with Maximum Energy
              
              if(enehit > MaxHit.hitenergy) 
                {
                  MaxHit.hitenergy =  enehit;
                  MaxHit.ietahitm   = (hhit->id()).ieta();
                  MaxHit.iphihitm   = (hhit->id()).iphi();
                  MaxHit.dr   = dr;
                  MaxHit.depthhit  = 1;
                }
            }
          
          if(dr<radius_ && enehit>0.01) 
            {
              
              eHcalCone += enehit;          
              UsedCells++;
              
              for (HFRecHitCollection::const_iterator hhit2=Hithf.begin(); hhit2!=Hithf.end(); hhit2++) 
                {
                  recal = RecalibFactor(hhit2->detid());

                  int iphihit2 = (hhit2->id()).iphi();
                  int ietahit2 = (hhit2->id()).ieta();
                  int depthhit2 = (hhit2->id()).depth();
                  float enehit2 = hhit2->energy()* recal;       
                  
                  if (iphihitNoise == iphihit2 && ietahitNoise == ietahit2 && depthhitNoise == depthhit2 && enehit2>0.01)
                    {
                      eHcalConeNoise += hhit2->energy()*recal;
                      UsedCellsNoise++;
                    }
                }
              
            }
        } //end of all HF hits cycle
      } //end of doHF

      int dieta_M_P = 100;
      int diphi_M_P = 100;
      if(MaxHit.ietahitm*ietatrue>0) {dieta_M_P = abs (MaxHit.ietahitm-ietatrue);}
      if(MaxHit.ietahitm*ietatrue<0) {dieta_M_P = abs(MaxHit.ietahitm-ietatrue)-1;}
      diphi_M_P = abs(MaxHit.iphihitm-iphitrue);
      diphi_M_P =  diphi_M_P>36 ? 72-diphi_M_P : diphi_M_P; 

      float iDr = sqrt(diphi_M_P*diphi_M_P+dieta_M_P*dieta_M_P);

      
      Bool_t passCuts = kFALSE;
      //passCuts=kTRUE; 
      if(eEcalCone < energyECALmip && iDr<2.) passCuts = kTRUE;
      
      if(passCuts)
        {
          enHcal -> Fill(ietatrue,  eHcalCone);
          nCells -> Fill(ietatrue,  UsedCells);
          enHcalNoise -> Fill(ietatrue,  eHcalConeNoise);
          nCellsNoise -> Fill(ietatrue,  UsedCellsNoise); 

          iEta = ietatrue;
          iPhi = iphitrue;

          pfTree->Fill();
        }
    }
}
void HcalCorrPFCalculation::beginJob ( void  ) [virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 569 of file HcalCorrPFCalculation.cc.

                                    {
  
  // TProfile *nCells, *nCellsNoise, *en, *enNoise;
  //TFile *rootFile;
  
  //rootFile = new TFile(outputFile_.c_str(),"RECREATE");
  
  
  nCells = fs->make<TProfile>("nCells", "nCells", 83, -41.5, 41.5); 
  nCellsNoise = fs->make<TProfile>("nCellsNoise", "nCellsNoise", 83, -41.5, 41.5); 
  
  enHcal = fs->make<TProfile>("enHcal", "enHcal", 83, -41.5, 41.5); 
  enHcalNoise =  fs->make<TProfile>("enHcalNoise", "enHcalNoise", 83, -41.5, 41.5); 
  
  enEcalB = fs->make<TH1F>("enEcalB", "enEcalB", 500, -5,50); 
  enEcalE = fs->make<TH1F>("enEcalE", "enEcalE", 500, -5,50); 

 pfTree = new TTree("pfTree", "Tree for pf info");

 pfTree->Branch("eEcalCone", &eEcalCone, "eEcalCone/F");
 pfTree->Branch("eHcalCone", &eHcalCone, "eHcalCone/F");
 pfTree->Branch("eHcalConeNoise", &eHcalConeNoise, "eHcalConeNoise/F");

 pfTree->Branch("UsedCellsNoise", &UsedCellsNoise, "UsedCellsNoise/I");
 pfTree->Branch("UsedCells", &UsedCells, "UsedCells/I");

 
 // pfTree->Branch("etaTrack", &etaTrack, "etaTrack/F");
 //pfTree->Branch("phiTrack", &phiTrack, "phiTrack/F");
 
 pfTree->Branch("iEta", &iEta, "iEta/I");
 pfTree->Branch("iPhi", &iPhi, "iPhi/I");
 

}
void HcalCorrPFCalculation::endJob ( void  ) [virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 604 of file HcalCorrPFCalculation.cc.

{

  /*
  nCells -> Write();
  nCellsNoise -> Write();
  enHcal -> Write();
  enHcalNoise -> Write();
  
  enEcalB -> Write();
  enEcalE -> Write();

  rootFile->Close();
  */
}
double HcalCorrPFCalculation::getDistInPlaneSimple ( const GlobalPoint  caloPoint,
const GlobalPoint  rechitPoint 
) [private]

Definition at line 131 of file HcalCorrPFCalculation.cc.

References Vector3DBase< T, FrameTag >::dot(), PV3DBase< T, PVType, FrameType >::mag(), Vector3DBase< T, FrameTag >::unit(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

{

  // Simplified version of getDistInPlane
  // Assume track direction is origin -> point of hcal intersection

  const GlobalVector caloIntersectVector(caloPoint.x(),
                                         caloPoint.y(),
                                         caloPoint.z());

  const GlobalVector caloIntersectUnitVector = caloIntersectVector.unit();

  const GlobalVector rechitVector(rechitPoint.x(),
                                  rechitPoint.y(),
                                  rechitPoint.z());

  const GlobalVector rechitUnitVector = rechitVector.unit();
  double dotprod = caloIntersectUnitVector.dot(rechitUnitVector);
  double rechitdist = caloIntersectVector.mag()/dotprod;


  const GlobalVector effectiveRechitVector = rechitdist*rechitUnitVector;
  const GlobalPoint effectiveRechitPoint(effectiveRechitVector.x(),
                                         effectiveRechitVector.y(),
                                         effectiveRechitVector.z());


  GlobalVector distance_vector = effectiveRechitPoint-caloPoint;

  if (dotprod > 0.)
  {
    return distance_vector.mag();
  }
  else
  {
    return 999999.;
  }
}
double HcalCorrPFCalculation::RecalibFactor ( HcalDetId  id) [private]

Definition at line 171 of file HcalCorrPFCalculation.cc.

{
  Float_t resprecal = 1.;
  Float_t pfrecal = 1.;
  if(AddRecalib) {
    if(Respcorr_) resprecal = respRecalib -> getValues(id)->getValue();
    if(PFcorr_)   pfrecal = pfRecalib   -> getValues(id)->getValue();
  }
  Float_t factor = resprecal*pfrecal;
  return factor;
}

Member Data Documentation

Definition at line 70 of file HcalCorrPFCalculation.cc.

Definition at line 64 of file HcalCorrPFCalculation.cc.

Bool_t HcalCorrPFCalculation::doHF [private]

Definition at line 69 of file HcalCorrPFCalculation.cc.

Definition at line 101 of file HcalCorrPFCalculation.cc.

Definition at line 101 of file HcalCorrPFCalculation.cc.

Definition at line 101 of file HcalCorrPFCalculation.cc.

Definition at line 82 of file HcalCorrPFCalculation.cc.

Definition at line 82 of file HcalCorrPFCalculation.cc.

Definition at line 67 of file HcalCorrPFCalculation.cc.

TProfile * HcalCorrPFCalculation::enHcal [private]

Definition at line 81 of file HcalCorrPFCalculation.cc.

TProfile * HcalCorrPFCalculation::enHcalNoise [private]

Definition at line 81 of file HcalCorrPFCalculation.cc.

Definition at line 79 of file HcalCorrPFCalculation.cc.

Definition at line 91 of file HcalCorrPFCalculation.cc.

Int_t HcalCorrPFCalculation::iEta [private]

Definition at line 107 of file HcalCorrPFCalculation.cc.

Int_t HcalCorrPFCalculation::iPhi [private]

Definition at line 107 of file HcalCorrPFCalculation.cc.

TProfile* HcalCorrPFCalculation::nCells [private]

Definition at line 81 of file HcalCorrPFCalculation.cc.

TProfile * HcalCorrPFCalculation::nCellsNoise [private]

Definition at line 81 of file HcalCorrPFCalculation.cc.

Definition at line 71 of file HcalCorrPFCalculation.cc.

Definition at line 87 of file HcalCorrPFCalculation.cc.

Definition at line 63 of file HcalCorrPFCalculation.cc.

Definition at line 74 of file HcalCorrPFCalculation.cc.

Definition at line 83 of file HcalCorrPFCalculation.cc.

Definition at line 65 of file HcalCorrPFCalculation.cc.

Definition at line 62 of file HcalCorrPFCalculation.cc.

Definition at line 73 of file HcalCorrPFCalculation.cc.

Definition at line 84 of file HcalCorrPFCalculation.cc.

Definition at line 76 of file HcalCorrPFCalculation.cc.

Definition at line 88 of file HcalCorrPFCalculation.cc.

Definition at line 89 of file HcalCorrPFCalculation.cc.

Definition at line 77 of file HcalCorrPFCalculation.cc.

Definition at line 86 of file HcalCorrPFCalculation.cc.

Definition at line 104 of file HcalCorrPFCalculation.cc.

Definition at line 104 of file HcalCorrPFCalculation.cc.

Definition at line 93 of file HcalCorrPFCalculation.cc.

Definition at line 97 of file HcalCorrPFCalculation.cc.

Definition at line 94 of file HcalCorrPFCalculation.cc.

Definition at line 98 of file HcalCorrPFCalculation.cc.

Definition at line 95 of file HcalCorrPFCalculation.cc.

Definition at line 99 of file HcalCorrPFCalculation.cc.