CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

ValHcalIsoTrackHLT Class Reference

Inheritance diagram for ValHcalIsoTrackHLT:
edm::EDAnalyzer

List of all members.

Public Member Functions

double getDist (double, double, double, double)
 ValHcalIsoTrackHLT (const edm::ParameterSet &)
 ~ValHcalIsoTrackHLT ()

Private Member Functions

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

Private Attributes

bool checkL1eff_
bool checkL2_
DQMStoredbe_
bool doL1Prescaling_
int evtBuf
std::string folderName_
edm::InputTag genJetsLabel_
edm::InputTag gtDigiLabel_
MonitorElementhaccepts
MonitorElementhDistToGJ
MonitorElementhisopT
MonitorElementhisopTvsEta
MonitorElementhl2eta
MonitorElementhl2phi
MonitorElementhl2pT
MonitorElementhl2pVsEta
MonitorElementhl3eta
MonitorElementhL3L2pTrat
MonitorElementhL3L2trackMatch
MonitorElementhl3P0005
MonitorElementhl3P0510
MonitorElementhl3P1015
MonitorElementhl3P1520
MonitorElementhl3phi
MonitorElementhl3Pt
MonitorElementhl3Pt0005
MonitorElementhl3Pt0510
MonitorElementhl3Pt1015
MonitorElementhl3Pt1520
MonitorElementhl3pVsEta
MonitorElementhLeadTurnOn
edm::InputTag hltEventTag_
edm::InputTag hltFilterTag_
double hltPThr_
MonitorElementhNextToLeadTurnOn
MonitorElementhOffL3TrackMatch
MonitorElementhOffL3TrackPtRat
MonitorElementhOffPvsEta
MonitorElementhPhiToGJ
MonitorElementhpTgenLead
MonitorElementhpTgenLeadL1
MonitorElementhpTgenNext
MonitorElementhpTgenNextL1
MonitorElementhRateVsThr
std::vector< int > l1counter
std::vector< edm::InputTagl1extraJetTag_
std::vector< std::string > l1seedNames_
edm::InputTag l2colLabel_
double lumi_
int nHLTL2accepts
int nHLTL3accepts
int nHLTL3acceptsPure
int nL1accepts
int nl3_0005
int nl3_0510
int nl3_1015
int nl3_1520
int nTotal
std::string outRootFileName_
std::string outTxtFileName_
bool produceRatePdep_
bool produceRates_
int purnl3_0005
int purnl3_0510
int purnl3_1015
int purnl3_1520
edm::InputTag recoTracksLabel_
double sampleXsec_
bool saveToRootFile_
std::ofstream txtout
bool useReco_

Detailed Description

Definition at line 52 of file ValHcalIsoTrackHLT.cc.


Constructor & Destructor Documentation

ValHcalIsoTrackHLT::ValHcalIsoTrackHLT ( const edm::ParameterSet iConfig) [explicit]

Definition at line 163 of file ValHcalIsoTrackHLT.cc.

References checkL1eff_, checkL2_, doL1Prescaling_, folderName_, genJetsLabel_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), gtDigiLabel_, hltEventTag_, hltFilterTag_, hltPThr_, i, l1counter, l1extraJetTag_, l1seedNames_, l2colLabel_, lumi_, nHLTL2accepts, nHLTL3accepts, nHLTL3acceptsPure, nL1accepts, nl3_0005, nl3_0510, nl3_1015, nl3_1520, nTotal, outRootFileName_, outTxtFileName_, produceRatePdep_, produceRates_, purnl3_0005, purnl3_0510, purnl3_1015, purnl3_1520, recoTracksLabel_, sampleXsec_, saveToRootFile_, txtout, and useReco_.

{
  produceRates_=iConfig.getParameter<bool>("produceRates");
  sampleXsec_=iConfig.getParameter<double>("sampleCrossSection");
  lumi_=iConfig.getParameter<double>("luminosity");
  outTxtFileName_=iConfig.getParameter<std::string>("outputTxtFileName");
  
  folderName_ = iConfig.getParameter<std::string>("folderName");
  saveToRootFile_=iConfig.getParameter<bool>("SaveToRootFile");
  outRootFileName_=iConfig.getParameter<std::string>("outputRootFileName");

  hltEventTag_=iConfig.getParameter<edm::InputTag>("hltTriggerEventLabel");
  hltFilterTag_=iConfig.getParameter<edm::InputTag>("hltL3FilterLabel");

  l1extraJetTag_=iConfig.getParameter<std::vector<edm::InputTag> >("hltL1extraJetLabel");
  gtDigiLabel_=iConfig.getParameter<edm::InputTag>("gtDigiLabel");
  checkL1eff_=iConfig.getParameter<bool>("CheckL1TurnOn");
  genJetsLabel_=iConfig.getParameter<edm::InputTag>("genJetsLabel");
  l1seedNames_=iConfig.getParameter<std::vector<std::string> >("l1seedNames");
  useReco_=iConfig.getParameter<bool>("useReco");
  recoTracksLabel_=iConfig.getParameter<edm::InputTag>("recoTracksLabel");
  checkL2_=iConfig.getParameter<bool>("DebugL2");
  l2colLabel_=iConfig.getParameter<edm::InputTag>("L2producerLabel");
  
  produceRatePdep_=iConfig.getParameter<bool>("produceRatePdep");

  hltPThr_=iConfig.getUntrackedParameter<double>("l3momThreshold",10);

  doL1Prescaling_=iConfig.getParameter<bool>("doL1Prescaling");
  
  for (unsigned int i=0; i<l1seedNames_.size(); i++)
    {
      l1counter.push_back(0);
    }

  if (produceRates_) txtout.open(outTxtFileName_.c_str());

  nTotal=0;
  nL1accepts=0;
  nHLTL2accepts=0;
  nHLTL3accepts=0;
  nHLTL3acceptsPure=0;
  
  nl3_0005=0;
  nl3_0510=0;
  nl3_1015=0;
  nl3_1520=0;
  
  purnl3_0005=0;
  purnl3_0510=0;
  purnl3_1015=0;
  purnl3_1520=0;
}
ValHcalIsoTrackHLT::~ValHcalIsoTrackHLT ( )

Definition at line 219 of file ValHcalIsoTrackHLT.cc.

References lumi_, nHLTL3accepts, nHLTL3acceptsPure, nL1accepts, nl3_0005, nl3_0510, nl3_1015, nl3_1520, nTotal, funct::pow(), produceRates_, purnl3_0005, purnl3_0510, purnl3_1015, purnl3_1520, sampleXsec_, mathSSE::sqrt(), and txtout.

{
  if (produceRates_)
    {
      double sampleRate=(lumi_)*(sampleXsec_*1E-36);
      double l1Rate=nL1accepts*pow(nTotal,-1)*sampleRate;
      double hltRate=nHLTL3accepts*pow(nL1accepts,-1)*l1Rate;
      double hltRatePure=nHLTL3acceptsPure*pow(nL1accepts,-1)*l1Rate;
      
      double l1rateError=l1Rate/sqrt(nL1accepts);
      double hltRateError=hltRate/sqrt(nHLTL3accepts);
      double hltRatePureError=hltRatePure/sqrt(nHLTL3acceptsPure);
      
      double rate_0005=nl3_0005*pow(nL1accepts,-1)*l1Rate;
      double rate_0510=nl3_0510*pow(nL1accepts,-1)*l1Rate;
      double rate_1015=nl3_1015*pow(nL1accepts,-1)*l1Rate;
      double rate_1520=nl3_1520*pow(nL1accepts,-1)*l1Rate;
      
      double prate_0005=purnl3_0005*pow(nL1accepts,-1)*l1Rate;
      double prate_0510=purnl3_0510*pow(nL1accepts,-1)*l1Rate;
      double prate_1015=purnl3_1015*pow(nL1accepts,-1)*l1Rate;
      double prate_1520=purnl3_1520*pow(nL1accepts,-1)*l1Rate;
      
      txtout<<std::setw(50)<<std::left<<"sample xsec(pb)"<<sampleXsec_<<std::endl;
      txtout<<std::setw(50)<<std::left<<"lumi(cm^-2*s^-1)"<<lumi_<<std::endl;
      txtout<<std::setw(50)<<std::left<<"Events processed/rate(Hz)"<<nTotal<<"/"<<sampleRate<<std::endl;
      txtout<<std::setw(50)<<std::left<<"L1 accepts/(rate+-error (Hz))"<<nL1accepts<<"/("<<l1Rate<<"+-"<<l1rateError<<")"<<std::endl;
      txtout<<std::setw(50)<<std::left<<"HLTL3accepts/(rate+-error (Hz))"<<nHLTL3accepts<<"/("<<hltRate<<"+-"<<hltRateError<<")"<<std::endl;
      txtout<<std::setw(50)<<std::left<<"L3 acc. |eta|<0.5 / rate"<<nl3_0005<<" / "<<rate_0005<<std::endl;
      txtout<<std::setw(50)<<std::left<<"L3 acc. |eta|>0.5 && |eta|<1.0 / rate"<<nl3_0510<<" / "<<rate_0510<<std::endl;
      txtout<<std::setw(50)<<std::left<<"L3 acc. |eta|>1.0 && |eta|<1.5 / rate"<<nl3_1015<<" / "<<rate_1015<<std::endl;
      txtout<<std::setw(50)<<std::left<<"L3 acc. |eta|>1.5 && |eta|<2.0 / rate"<<nl3_1520<<" / "<<rate_1520<<std::endl;
      txtout<<"\n"<<std::endl;
      txtout<<std::setw(50)<<std::left<<"HLTL3acceptsPure/(rate+-error (Hz))"<<nHLTL3acceptsPure<<"/("<<hltRatePure<<"+-"<<hltRatePureError<<")"<<std::endl; 
      txtout<<std::setw(50)<<std::left<<"pure L3 acc. |eta|<0.5 / rate"<<purnl3_0005<<" / "<<prate_0005<<std::endl;
      txtout<<std::setw(50)<<std::left<<"pure L3 acc. |eta|>0.5 && |eta|<1.0 / rate"<<purnl3_0510<<" / "<<prate_0510<<std::endl;
      txtout<<std::setw(50)<<std::left<<"pure L3 acc. |eta|>1.0 && |eta|<1.5 / rate"<<purnl3_1015<<" / "<<prate_1015<<std::endl;
      txtout<<std::setw(50)<<std::left<<"pure L3 acc. |eta|>1.5 && |eta|<2.0 / rate"<<purnl3_1520<<" / "<<prate_1520<<std::endl;
    }
}

Member Function Documentation

void ValHcalIsoTrackHLT::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
) [private, virtual]

Implements edm::EDAnalyzer.

Definition at line 260 of file ValHcalIsoTrackHLT.cc.

References checkL1eff_, checkL2_, doL1Prescaling_, trigger::TriggerObject::eta(), MonitorElement::Fill(), genJetsLabel_, edm::EventSetup::get(), edm::Event::getByLabel(), getDist(), L1GtTriggerMenu::gtAlgorithmMap(), L1GtTriggerMenu::gtAlgorithmResult(), gtDigiLabel_, L1GtPrescaleFactors::gtPrescaleFactors(), haccepts, hDistToGJ, hisopT, hisopTvsEta, hl2eta, hl2phi, hl2pT, hl2pVsEta, hl3eta, hL3L2pTrat, hL3L2trackMatch, hl3P0005, hl3P0510, hl3P1015, hl3P1520, hl3phi, hl3Pt, hl3Pt0005, hl3Pt0510, hl3Pt1015, hl3Pt1520, hltEventTag_, hltFilterTag_, hltPThr_, hOffL3TrackMatch, hOffL3TrackPtRat, hOffPvsEta, hPhiToGJ, hpTgenLead, hpTgenLeadL1, hpTgenNext, hpTgenNextL1, hRateVsThr, i, l1counter, l1seedNames_, l2colLabel_, nHLTL3accepts, nHLTL3acceptsPure, nL1accepts, nl3_0005, nl3_0510, nl3_1015, nl3_1520, nTotal, trigger::TriggerObject::phi(), funct::pow(), produceRatePdep_, edm::ESHandle< T >::product(), trigger::TriggerObject::pt(), purnl3_0005, purnl3_0510, purnl3_1015, purnl3_1520, dttmaxenums::R, recoTracksLabel_, mathSSE::sqrt(), and useReco_.

{
  nTotal++;
  haccepts->Fill(0.0001,1);

  double phiGJLead=-10000;
  double etaGJLead=-10000;

  bool l1pass=false;

  edm::ESHandle<L1GtTriggerMenu> menuRcd;
  iSetup.get<L1GtTriggerMenuRcd>().get(menuRcd) ;
  const L1GtTriggerMenu* menu = menuRcd.product();
  const AlgorithmMap& bitMap = menu->gtAlgorithmMap();

  edm::ESHandle<L1GtPrescaleFactors> l1GtPfAlgo;
  iSetup.get<L1GtPrescaleFactorsAlgoTrigRcd>().get(l1GtPfAlgo);        
  const L1GtPrescaleFactors* preFac = l1GtPfAlgo.product();
  const std::vector< std::vector< int > > prescaleSet=preFac->gtPrescaleFactors(); 
      
  edm::Handle< L1GlobalTriggerReadoutRecord > gtRecord;
  iEvent.getByLabel(gtDigiLabel_ ,gtRecord);
  const DecisionWord dWord = gtRecord->decisionWord(); 
      
  for (unsigned int i=0; i<l1seedNames_.size(); i++)
    {
      int l1seedBitNumber=-10;
      for (CItAlgo itAlgo = bitMap.begin(); itAlgo != bitMap.end(); itAlgo++) 
        {
          if (itAlgo->first==l1seedNames_[i]) l1seedBitNumber = (itAlgo->second).algoBitNumber();
        }
      int prescale=prescaleSet[0][l1seedBitNumber];
      //          std::cout<<l1seedNames_[i]<<"  "<<prescale<<std::endl;
      if (menu->gtAlgorithmResult( l1seedNames_[i], dWord)) 
        {
          l1counter[i]++;
          if ((doL1Prescaling_&&l1counter[i]%prescale==0)||(!doL1Prescaling_))
            {
              l1pass=true;
              break;
            }
        }
    }
  if (checkL1eff_) 
    {
      edm::Handle<reco::GenJetCollection> gjcol;
      iEvent.getByLabel(genJetsLabel_,gjcol);
          
      reco::GenJetCollection::const_iterator gjit=gjcol->begin();
      if (gjit!=gjcol->end())
        {
          etaGJLead=gjit->eta();
          phiGJLead=gjit->phi();
          hpTgenLead->Fill(gjit->pt(),1);
          if (l1pass) hpTgenLeadL1->Fill(gjit->pt(),1);
          gjit++;
        }
      if (gjit!=gjcol->end())
        {
          hpTgenNext->Fill(gjit->pt(),1);
          if (l1pass) hpTgenNextL1->Fill(gjit->pt(),1);
        }
    }
     
  if (!l1pass) return;
  else haccepts->Fill(1+0.0001,1);
      
  nL1accepts++;

  edm::Handle<reco::IsolatedPixelTrackCandidateCollection> l2col;
  if (checkL2_)
    {
      iEvent.getByLabel(l2colLabel_,l2col);
    }
  
  edm::Handle<trigger::TriggerEvent> trEv;
  iEvent.getByLabel(hltEventTag_,trEv);
  
  edm::Handle<reco::TrackCollection> recoTr;
  
  if (useReco_)
    {
      iEvent.getByLabel(recoTracksLabel_,recoTr);
    }

  const trigger::TriggerObjectCollection& TOCol(trEv->getObjects());
  
  trigger::Keys KEYS;
  const trigger::size_type nFilt(trEv->sizeFilters());

  int nFired=0;

  bool passl3=false;

  for (trigger::size_type iFilt=0; iFilt!=nFilt; iFilt++) 
    {
      trigger::Keys KEYS1=trEv->filterKeys(iFilt);
      if (KEYS1.size()>0) nFired++;
      if (trEv->filterTag(iFilt)==hltFilterTag_) KEYS=trEv->filterKeys(iFilt);
    }

  trigger::size_type nReg=KEYS.size();

  if (nFired==2&&nReg>0)  
    {
      nHLTL3acceptsPure++;
      for (trigger::size_type iReg=0; iReg<nReg; iReg++)
        {
          const trigger::TriggerObject& TObj(TOCol[KEYS[iReg]]);
          if (TObj.pt()*cosh(TObj.eta())<10) continue;
          if (fabs(TObj.eta())<0.5) purnl3_0005++;
          if (fabs(TObj.eta())>0.5&&fabs(TObj.eta())<1.0) purnl3_0510++;
          if (fabs(TObj.eta())>1.0&&fabs(TObj.eta())<1.5) purnl3_1015++;
          if (fabs(TObj.eta())<2.0&&fabs(TObj.eta())>1.5) purnl3_1520++;
        }
    }

  for (trigger::size_type iReg=0; iReg<nReg; iReg++)
    {
      const trigger::TriggerObject& TObj(TOCol[KEYS[iReg]]);

      if (produceRatePdep_){
        for (int i=0; i<50; i++)
          {
            double pthr=5+i;
            if (TObj.pt()*cosh(TObj.eta())>pthr&&fabs(TObj.eta())<1.0) hRateVsThr->Fill(pthr+0.001,1);
          }
      }

      if (TObj.pt()*cosh(TObj.eta())<hltPThr_) continue;
      
      passl3=true;

      double dphiGJ=fabs(TObj.phi()-phiGJLead);
      if (dphiGJ>acos(-1)) dphiGJ=2*acos(-1)-dphiGJ;
      double dR=sqrt(dphiGJ*dphiGJ+pow(TObj.eta()-etaGJLead,2));
      hPhiToGJ->Fill(dphiGJ,1);
      hDistToGJ->Fill(dR,1);

      hl3eta->Fill(TObj.eta(),1);
      hl3phi->Fill(TObj.phi(),1);
      if (fabs(TObj.eta())<0.5) 
        {
        hl3P0005->Fill(cosh(TObj.eta())*TObj.pt(),1);
        hl3Pt0005->Fill(TObj.pt(),1);
        nl3_0005++;
        }
      if (fabs(TObj.eta())>0.5&&fabs(TObj.eta())<1.0) 
        {
        nl3_0510++;
        hl3P0510->Fill(cosh(TObj.eta())*TObj.pt(),1);
        hl3Pt0510->Fill(TObj.pt(),1);
        }
      if (fabs(TObj.eta())>1.0&&fabs(TObj.eta())<1.5) 
        {
        nl3_1015++;
        hl3P1015->Fill(cosh(TObj.eta())*TObj.pt(),1);
        hl3Pt1015->Fill(TObj.pt(),1);
        } 
      if (fabs(TObj.eta())<2.0&&fabs(TObj.eta())>1.5) 
        {
        nl3_1520++;
        hl3P1520->Fill(cosh(TObj.eta())*TObj.pt(),1);
        hl3Pt1520->Fill(TObj.pt(),1);
        }
      if (l2col->size()==0) continue;
      double l2l3d=100;
      reco::IsolatedPixelTrackCandidateCollection::const_iterator l2match;
      for (reco::IsolatedPixelTrackCandidateCollection::const_iterator eptit=l2col->begin(); eptit!=l2col->end(); eptit++) 
        {
          hl2pT->Fill(eptit->track()->pt(),1);
          hl2eta->Fill(eptit->track()->eta(),1);
          hl2phi->Fill(eptit->track()->phi(),1);
          hl2pVsEta->Fill(eptit->track()->eta(),eptit->track()->p(),1);
          hisopT->Fill(eptit->maxPtPxl(),1);
          hisopTvsEta->Fill(eptit->track()->eta(),eptit->maxPtPxl(),1);

          double R=getDist(eptit->eta(), eptit->phi(), TObj.eta(), TObj.phi());
          if (R<l2l3d) 
            {
              l2match=eptit;
              l2l3d=R;
            }
        }

      hL3L2trackMatch->Fill(l2l3d,1);
      hL3L2pTrat->Fill(l2match->pt()/TObj.pt(),1);
      hl3Pt->Fill(TObj.pt(),1);

      if (useReco_&&recoTr->size()>0)
        {
          double minRecoL3dist=100;
          reco::TrackCollection::const_iterator mrtr;
          for (reco::TrackCollection::const_iterator rtrit=recoTr->begin(); rtrit!=recoTr->end(); rtrit++)
            {
              double R=getDist(rtrit->eta(),rtrit->phi(),TObj.eta(),TObj.phi()); 
              if (R<minRecoL3dist) 
                {
                  mrtr=rtrit;
                  minRecoL3dist=R;
                }
            }
          hOffL3TrackMatch->Fill(minRecoL3dist,1);
          hOffL3TrackPtRat->Fill(TObj.pt()/mrtr->pt(),1);
          hOffPvsEta->Fill(mrtr->eta(),mrtr->p(),1);
        }
    }

if (passl3) nHLTL3accepts++;
if (passl3) haccepts->Fill(2+0.0001,1);

if (!l1pass||!passl3) return;

}
void ValHcalIsoTrackHLT::beginJob ( void  ) [private, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 475 of file ValHcalIsoTrackHLT.cc.

References DQMStore::book1D(), DQMStore::book2D(), dbe_, folderName_, haccepts, hDistToGJ, hisopT, hisopTvsEta, hl2eta, hl2phi, hl2pT, hl2pVsEta, hl3eta, hL3L2pTrat, hL3L2trackMatch, hl3P0005, hl3P0510, hl3P1015, hl3P1520, hl3phi, hl3Pt, hl3Pt0005, hl3Pt0510, hl3Pt1015, hl3Pt1520, hOffL3TrackMatch, hOffL3TrackPtRat, hOffPvsEta, hPhiToGJ, hpTgenLead, hpTgenLeadL1, hpTgenNext, hpTgenNextL1, hRateVsThr, cmsCodeRules::cppFunctionSkipper::operator, MonitorElement::setAxisTitle(), and DQMStore::setCurrentFolder().

{
  dbe_ = edm::Service<DQMStore>().operator->();
  dbe_->setCurrentFolder(folderName_);

  hRateVsThr=dbe_->book1D("hRatesVsThr","hRateVsThr",100,0,100);

  hPhiToGJ=dbe_->book1D("hPhiToGJ","hPhiToGJ",100,0,4);

  hDistToGJ=dbe_->book1D("hDistToGJ","hDistToGJ",100,0,10);

  hL3L2trackMatch=dbe_->book1D("hL3L2trackMatch","R from L3 object to L2 object ",1000,0,1);
  hL3L2trackMatch->setAxisTitle("R(eta,phi)",1);
 
  hL3L2pTrat=dbe_->book1D("hL3L2pTrat","ratio of L2 to L3 measurement",1000,0,10);
  hL3L2pTrat->setAxisTitle("pT_L2/pT_L3",1);

  hl3Pt=dbe_->book1D("hl3Pt","pT of L3 objects",1000,0,100);
  hl3Pt->setAxisTitle("pT(GeV)",1);

  hl3Pt0005=dbe_->book1D("hl3Pt0005","hl3Pt0005",1000,0,100);
  hl3Pt0005->setAxisTitle("pT(GeV)",1);

  hl3Pt0510=dbe_->book1D("hl3Pt0510","hl3Pt0510",1000,0,100);
  hl3Pt0510->setAxisTitle("pT(GeV)",1);

  hl3Pt1015=dbe_->book1D("hl3Pt1015","hl3Pt1015",1000,0,100);
  hl3Pt1015->setAxisTitle("pT(GeV)",1);

  hl3Pt1520=dbe_->book1D("hl3Pt1520","hl3Pt1520",1000,0,100);
  hl3Pt1520->setAxisTitle("pT(GeV)",1);

  hl3P0005=dbe_->book1D("hl3P0005","hl3P0005",1000,0,100);
  hl3P0005->setAxisTitle("P(GeV)",1);

  hl3P0510=dbe_->book1D("hl3P0510","hl3P0510",1000,0,100);
  hl3P0510->setAxisTitle("P(GeV)",1);

  hl3P1015=dbe_->book1D("hl3P1015","hl3P1015",1000,0,100);
  hl3P1015->setAxisTitle("P(GeV)",1);

  hl3P1520=dbe_->book1D("hl3P1520","hl3P1520",1000,0,100);
  hl3P1520->setAxisTitle("P(GeV)",1);

  hl3eta=dbe_->book1D("hl3eta","eta of L3 objects",50,-2.5,2.5);
  hl3eta->setAxisTitle("eta",1);

  hl3phi=dbe_->book1D("hl3phi","phi of L3 objects",70,-3.5,3.5);
  hl3phi->setAxisTitle("phi(rad)",1);

  hl2pT=dbe_->book1D("hl2pT","pT of L2 objects",1000,0,1000);
  hl2pT->setAxisTitle("pT(GeV)",1);

  hl2eta=dbe_->book1D("hl2eta","eta of L2 objects",50,-2.5,2.5);
  hl2eta->setAxisTitle("eta",1);

  hl2phi=dbe_->book1D("hl2phi","phi of L2 objects",70,-3.5,3.5);
  hl2phi->setAxisTitle("phi(rad)",1);

  hisopT=dbe_->book1D("hisopT","isolation pT",100,0,5.5);
  hisopT->setAxisTitle("iso pT (GeV)",1);

  hisopTvsEta=dbe_->book2D("hisopTvsEta","isolation pT vs Eta",8,-2,2,100,0,5.5);
  hisopTvsEta->setAxisTitle("eta",1);
  hisopTvsEta->setAxisTitle("iso pT (GeV)",2);

  hl2pVsEta=dbe_->book2D("hl2pVsEta","Distribution of l2 track energy vs eta",25,-2.5,2.5,100,0,100);
  hl2pVsEta->setAxisTitle("eta",1);
  hl2pVsEta->setAxisTitle("E(GeV)",2);

  haccepts=dbe_->book1D("haccepts","Number of accepts at each level",3,0,3);
  haccepts->setAxisTitle("selection level",1);

  hOffL3TrackMatch=dbe_->book1D("hOffL3TrackMatch","Distance from L3 object to offline track",200,0,0.5);
  hOffL3TrackMatch->setAxisTitle("R(eta,phi)",1);

  hOffL3TrackPtRat=dbe_->book1D("hOffL3TrackPtRat","Ratio of pT: L3/offline",100,0,10);
  hOffL3TrackPtRat->setAxisTitle("ratio L3/offline",1);

  hOffPvsEta=dbe_->book2D("hOffPvsEta","Distribution of offline track energy vs eta",25,-2.5,2.5,100,0,100);
  hOffPvsEta->setAxisTitle("eta",1);
  hOffPvsEta->setAxisTitle("E(GeV)",2);

  hpTgenLead=dbe_->book1D("hpTgenLead","hpTgenLead",100,0,100);
  
  hpTgenLeadL1=dbe_->book1D("hpTgenLeadL1","hpTgenLeadL1",100,0,100);

  hpTgenNext=dbe_->book1D("hpTgenNext","hpTgenNext",100,0,100);

  hpTgenNextL1=dbe_->book1D("hpTgenNextL1","hpTgenNextL1",100,0,100);
}
void ValHcalIsoTrackHLT::endJob ( void  ) [private, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 567 of file ValHcalIsoTrackHLT.cc.

References dbe_, outRootFileName_, DQMStore::save(), and saveToRootFile_.

double ValHcalIsoTrackHLT::getDist ( double  eta1,
double  phi1,
double  eta2,
double  phi2 
)

Definition at line 155 of file ValHcalIsoTrackHLT.cc.

References funct::pow(), and mathSSE::sqrt().

Referenced by analyze().

{
  double dphi = fabs(phi1 - phi2); 
  if(dphi>acos(-1)) dphi = 2*acos(-1)-dphi;
  double dr = sqrt(dphi*dphi + pow(eta1-eta2,2));
  return dr;
}

Member Data Documentation

Definition at line 85 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

Definition at line 82 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

Definition at line 62 of file ValHcalIsoTrackHLT.cc.

Referenced by beginJob(), and endJob().

Definition at line 90 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

Definition at line 60 of file ValHcalIsoTrackHLT.cc.

std::string ValHcalIsoTrackHLT::folderName_ [private]

Definition at line 72 of file ValHcalIsoTrackHLT.cc.

Referenced by beginJob(), and ValHcalIsoTrackHLT().

Definition at line 86 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

Definition at line 79 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

Definition at line 118 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 130 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 115 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 116 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 111 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 112 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 113 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 114 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 103 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 94 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 93 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 99 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 100 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 101 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 102 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 104 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 92 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 95 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 96 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 97 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 98 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 106 of file ValHcalIsoTrackHLT.cc.

Definition at line 124 of file ValHcalIsoTrackHLT.cc.

Definition at line 75 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

Definition at line 76 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

double ValHcalIsoTrackHLT::hltPThr_ [private]

Definition at line 152 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

Definition at line 125 of file ValHcalIsoTrackHLT.cc.

Definition at line 108 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 109 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 119 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 129 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 120 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 121 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 122 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 123 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

Definition at line 127 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and beginJob().

std::vector<int> ValHcalIsoTrackHLT::l1counter [private]

Definition at line 132 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

Definition at line 77 of file ValHcalIsoTrackHLT.cc.

Referenced by ValHcalIsoTrackHLT().

std::vector<std::string> ValHcalIsoTrackHLT::l1seedNames_ [private]

Definition at line 78 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

Definition at line 83 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

double ValHcalIsoTrackHLT::lumi_ [private]

Definition at line 70 of file ValHcalIsoTrackHLT.cc.

Referenced by ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 138 of file ValHcalIsoTrackHLT.cc.

Referenced by ValHcalIsoTrackHLT().

Definition at line 139 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 140 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 137 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 142 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 143 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 144 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 145 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 136 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

std::string ValHcalIsoTrackHLT::outRootFileName_ [private]

Definition at line 74 of file ValHcalIsoTrackHLT.cc.

Referenced by endJob(), and ValHcalIsoTrackHLT().

std::string ValHcalIsoTrackHLT::outTxtFileName_ [private]

Definition at line 71 of file ValHcalIsoTrackHLT.cc.

Referenced by ValHcalIsoTrackHLT().

Definition at line 88 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

Definition at line 68 of file ValHcalIsoTrackHLT.cc.

Referenced by ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 147 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 148 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 149 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 150 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 81 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().

Definition at line 69 of file ValHcalIsoTrackHLT.cc.

Referenced by ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 73 of file ValHcalIsoTrackHLT.cc.

Referenced by endJob(), and ValHcalIsoTrackHLT().

std::ofstream ValHcalIsoTrackHLT::txtout [private]

Definition at line 134 of file ValHcalIsoTrackHLT.cc.

Referenced by ValHcalIsoTrackHLT(), and ~ValHcalIsoTrackHLT().

Definition at line 80 of file ValHcalIsoTrackHLT.cc.

Referenced by analyze(), and ValHcalIsoTrackHLT().