CMS 3D CMS Logo

Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes

ExoticaDQM Class Reference

#include <ExoticaDQM.h>

Inheritance diagram for ExoticaDQM:
edm::EDAnalyzer

List of all members.

Public Member Functions

 ExoticaDQM (const edm::ParameterSet &ps)
virtual ~ExoticaDQM ()

Protected Member Functions

virtual void analyze (edm::Event const &e, edm::EventSetup const &eSetup)
virtual void analyzeEventInterpretation (edm::Event const &e, edm::EventSetup const &eSetup)
virtual void analyzeLongLived (edm::Event const &e)
virtual void analyzeLongLivedTrigger (edm::Event const &e)
virtual void analyzeMultiJets (edm::Event const &e)
virtual void analyzeMultiJetsTrigger (edm::Event const &e)
virtual void beginJob ()
virtual void beginLuminosityBlock (edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &context)
virtual void beginRun (edm::Run const &run, edm::EventSetup const &eSetup)
virtual void endJob ()
virtual void endLuminosityBlock (edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &c)
virtual void endRun (edm::Run const &run, edm::EventSetup const &eSetup)

Private Member Functions

void bookHistos (DQMStore *bei)

Private Attributes

DQMStorebei_
edm::Handle
< reco::CaloJetCollection
caloJetCollection_
std::string CaloJetCorService_
double CaloJetEMF [2]
double CaloJetEta [2]
double CaloJetfHPD [2]
edm::InputTag CaloJetLabel_
double CaloJetn90 [2]
double CaloJetPhi [2]
double CaloJetPt [2]
double CaloJetPx [2]
double CaloJetPy [2]
reco::CaloJetCollection calojets
edm::Handle
< reco::CaloMETCollection
caloMETCollection_
edm::InputTag CaloMETLabel_
MonitorElementei_pfelectron_pt
MonitorElementei_pfjet1_pt
MonitorElementei_pfmet_pt
MonitorElementei_pfmuon_pt
edm::Handle
< reco::GsfElectronCollection
ElectronCollection_
edm::InputTag ElectronLabel_
HLTConfigProvider hltConfigProvider_
int ievt
int irun
bool isValidHltConfig_
reco::helper::JetIDHelperjetID
int leptonflavor
reco::CandidateCollectionleptonscands_
MonitorElementll_gammajet_sMajMajPhot
MonitorElementll_gammajet_sMinMinPhot
unsigned long long m_cacheID_
MonitorElementmj_caloMet_et
MonitorElementmj_caloMet_phi
int mj_monojet_countPFJet
MonitorElementmj_monojet_deltaPhiPFJet1PFJet2
MonitorElementmj_monojet_deltaRPFJet1PFJet2
MonitorElementmj_monojet_pfcemf
MonitorElementmj_monojet_pfchef
MonitorElementmj_monojet_pfJet1_eta
MonitorElementmj_monojet_pfJet1_pt
MonitorElementmj_monojet_pfJet2_eta
MonitorElementmj_monojet_pfJet2_pt
MonitorElementmj_monojet_pfJetMulti
MonitorElementmj_monojet_pfmetnomu
MonitorElementmj_monojet_pfnemf
MonitorElementmj_monojet_pfnhef
double mj_monojet_ptPFElectron_
double mj_monojet_ptPFJet_
double mj_monojet_ptPFMuon_
MonitorElementmj_pfMet_et
MonitorElementmj_pfMet_phi
edm::Handle< reco::MuonCollectionMuonCollection_
edm::InputTag MuonLabel_
int nEvents_
int nLumiSecs_
edm::Handle
< reco::PFCandidateCollection
pfElectronCollectionEI_
edm::InputTag PFElectronLabelEI_
reco::PFCandidateCollection pfelectronsEI
double PFJetCEMF [2]
double PFJetCHEF [2]
edm::Handle
< reco::PFJetCollection
pfJetCollection_
edm::Handle
< reco::PFJetCollection
pfJetCollectionEI_
std::string PFJetCorService_
double PFJetEICEMF
double PFJetEICHEF
double PFJetEIEta
double PFJetEINEMF
double PFJetEINHEF
double PFJetEIPhi
double PFJetEIPt
double PFJetEIPx
double PFJetEIPy
double PFJetEta [2]
edm::InputTag PFJetLabel_
edm::InputTag PFJetLabelEI_
double PFJetNEMF [2]
double PFJetNHEF [2]
double PFJetPhi [2]
double PFJetPt [2]
double PFJetPx [2]
double PFJetPy [2]
reco::PFJetCollection pfjets
reco::PFJetCollection pfjetsEI
edm::Handle
< reco::PFMETCollection
pfMETCollection_
edm::Handle
< reco::PFMETCollection
pfMETCollectionEI_
edm::InputTag PFMETLabel_
edm::InputTag PFMETLabelEI_
edm::Handle
< reco::PFCandidateCollection
pfMuonCollectionEI_
edm::InputTag PFMuonLabelEI_
reco::PFCandidateCollection pfmuonsEI
edm::Handle
< reco::PFCandidateCollection
pfPhotonCollectionEI_
edm::InputTag PFPhotonLabelEI_
reco::PFCandidateCollection pfphotons
edm::Handle
< reco::PFTauCollection
pfTauCollectionEI_
edm::InputTag PFTauLabelEI_
edm::Handle
< reco::PhotonCollection
PhotonCollection_
edm::InputTag PhotonLabel_
float pi
edm::Handle
< reco::CaloTauCollection
TauCollection_
edm::InputTag TauLabel_
std::vector< std::string > theTriggerForLongLivedList
std::vector< std::string > theTriggerForMultiJetsList
edm::InputTag theTriggerResultsCollection
edm::Handle< edm::TriggerResultstriggerResults_

Detailed Description

Definition at line 85 of file ExoticaDQM.h.


Constructor & Destructor Documentation

ExoticaDQM::ExoticaDQM ( const edm::ParameterSet ps)

Definition at line 87 of file ExoticaDQM.cc.

References bookHistos(), edm::ParameterSet::getParameter(), bTagSequences_cff::jetID, cppFunctionSkipper::operator, and AlCaHLTBitMon_QueryRunRegistry::string.

                                               {

  edm::LogInfo("ExoticaDQM") <<  " Starting ExoticaDQM " << "\n" ;

  bei_ = Service<DQMStore>().operator->();
  bei_->setCurrentFolder("Physics/Exotica");
  bookHistos(bei_);

  typedef std::vector<edm::InputTag> vtag;

  // Get parameters from configuration file
  // Trigger
  theTriggerResultsCollection = ps.getParameter<InputTag>("triggerResultsCollection");
  //
  theTriggerForMultiJetsList  = ps.getParameter<vstring>("triggerMultiJetsList");
  theTriggerForLongLivedList  = ps.getParameter<vstring>("triggerLongLivedList");
  
  //
  ElectronLabel_      = ps.getParameter<InputTag>("electronCollection");
  PFElectronLabelEI_  = ps.getParameter<InputTag>("pfelectronCollectionEI");
  //
  MuonLabel_          = ps.getParameter<InputTag>("muonCollection"); 
  PFMuonLabelEI_      = ps.getParameter<InputTag>("pfmuonCollectionEI");
  //
  TauLabel_           = ps.getParameter<InputTag>("tauCollection");
  //PFTauLabel_       = ps.getParameter<InputTag>("pftauCollection");
  //
  PhotonLabel_        = ps.getParameter<InputTag>("photonCollection");
  //PFPhotonLabel_    = ps.getParameter<InputTag>("pfphotonCollection");
  //
  CaloJetLabel_       = ps.getParameter<InputTag>("caloJetCollection");
  PFJetLabel_         = ps.getParameter<InputTag>("pfJetCollection");
  PFJetLabelEI_       = ps.getParameter<InputTag>("pfJetCollectionEI");
  
  //
  CaloMETLabel_       = ps.getParameter<InputTag>("caloMETCollection");
  PFMETLabel_         = ps.getParameter<InputTag>("pfMETCollection");
  PFMETLabelEI_       = ps.getParameter<InputTag>("pfMETCollectionEI");
  
  //Cuts - MultiJets 
  jetID                    = new reco::helper::JetIDHelper(ps.getParameter<ParameterSet>("JetIDParams"));
  mj_monojet_ptPFJet_      = ps.getParameter<double>("mj_monojet_ptPFJet");
  mj_monojet_ptPFMuon_     = ps.getParameter<double>("mj_monojet_ptPFMuon");
  mj_monojet_ptPFElectron_ = ps.getParameter<double>("mj_monojet_ptPFElectron");
  CaloJetCorService_       = ps.getParameter<std::string>("CaloJetCorService");
  PFJetCorService_         = ps.getParameter<std::string>("PFJetCorService");

  // just to initialize
  //isValidHltConfig_ = false;
}
ExoticaDQM::~ExoticaDQM ( ) [virtual]

Definition at line 142 of file ExoticaDQM.cc.

                       {
  edm::LogInfo("ExoticaDQM") <<  " Deleting ExoticaDQM " << "\n" ;
}

Member Function Documentation

void ExoticaDQM::analyze ( edm::Event const &  e,
edm::EventSetup const &  eSetup 
) [protected, virtual]

Implements edm::EDAnalyzer.

Definition at line 234 of file ExoticaDQM.cc.

References JetCorrector::correction(), edm::Event::getByLabel(), JetCorrector::getJetCorrector(), i, bTagSequences_cff::jetID, and pileupReCalc_HLTpaths::scale.

                                                                           { 

  // Calo objects
  // Electrons
  bool ValidCaloElectron = iEvent.getByLabel(ElectronLabel_, ElectronCollection_);
  if(!ValidCaloElectron) return;
  // Muons
  bool ValidCaloMuon = iEvent.getByLabel(MuonLabel_, MuonCollection_);
  if(!ValidCaloMuon) return;
  // Taus
  bool ValidCaloTau = iEvent.getByLabel(TauLabel_, TauCollection_);
  if(!ValidCaloTau) return;  
  // Photons
  bool ValidCaloPhoton = iEvent.getByLabel(PhotonLabel_, PhotonCollection_);
  if(!ValidCaloPhoton) return; 
  // Jets
  bool ValidCaloJet = iEvent.getByLabel(CaloJetLabel_, caloJetCollection_);
  if(!ValidCaloJet) return;
  calojets = *caloJetCollection_; 
  // MET
  bool ValidCaloMET = iEvent.getByLabel(CaloMETLabel_, caloMETCollection_);
  if(!ValidCaloMET) return;
  

  // PF objects
  // PFJets
  bool ValidPFJet = iEvent.getByLabel(PFJetLabel_, pfJetCollection_);
  if(!ValidPFJet) return;
  pfjets = *pfJetCollection_; 
  // PFMETs
  bool ValidPFMET = iEvent.getByLabel(PFMETLabel_, pfMETCollection_);
  if(!ValidPFMET) return;
  
  //#######################################################
  // Jet Correction
  // Define on-the-fly correction Jet
  for(int i=0; i<2; i++){
    CaloJetPx[i]   = 0.;
    CaloJetPy[i]   = 0.;
    CaloJetPt[i]   = 0.;
    CaloJetEta[i]  = 0.;
    CaloJetPhi[i]  = 0.;
    CaloJetEMF[i]  = 0.;
    CaloJetfHPD[i] = 0.;
    CaloJetn90[i]  = 0.;
    PFJetPx[i]     = 0.;
    PFJetPy[i]     = 0.;
    PFJetPt[i]     = 0.;
    PFJetEta[i]    = 0.;
    PFJetPhi[i]    = 0.;
    PFJetNHEF[i]   = 0.;
    PFJetCHEF[i]   = 0.;
    PFJetNEMF[i]   = 0.;
    PFJetCEMF[i]   = 0.;
  }
  
  //---------- CaloJet Correction (on-the-fly) ----------
  const JetCorrector* calocorrector = JetCorrector::getJetCorrector(CaloJetCorService_,iSetup);
  CaloJetCollection::const_iterator calojet_ = calojets.begin();
  for(; calojet_ != calojets.end(); ++calojet_){
    double scale = calocorrector->correction(*calojet_,iEvent, iSetup); 
    jetID->calculate(iEvent, *calojet_);
    
    if(scale*calojet_->pt()>CaloJetPt[0]){
      CaloJetPt[1]   = CaloJetPt[0]; 
      CaloJetPx[1]   = CaloJetPx[0];
      CaloJetPy[1]   = CaloJetPy[0];
      CaloJetEta[1]  = CaloJetEta[0];
      CaloJetPhi[1]  = CaloJetPhi[0];
      CaloJetEMF[1]  = CaloJetEMF[0];
      CaloJetfHPD[1] = CaloJetfHPD[0];
      CaloJetn90[1]  = CaloJetn90[0];
      //
      CaloJetPt[0]   = scale*calojet_->pt();
      CaloJetPx[0]   = scale*calojet_->px();
      CaloJetPy[0]   = scale*calojet_->py();
      CaloJetEta[0]  = calojet_->eta();
      CaloJetPhi[0]  = calojet_->phi();
      CaloJetEMF[0]  = calojet_->emEnergyFraction();
      CaloJetfHPD[0] = jetID->fHPD();
      CaloJetn90[0]  = jetID->n90Hits();
    }
    else if(scale*calojet_->pt()<CaloJetPt[0] && scale*calojet_->pt()>CaloJetPt[1] ){
      CaloJetPt[1]   = scale*calojet_->pt();
      CaloJetPx[1]   = scale*calojet_->px();
      CaloJetPy[1]   = scale*calojet_->py();
      CaloJetEta[1]  = calojet_->eta();
      CaloJetPhi[1]  = calojet_->phi();
      CaloJetEMF[1]  = calojet_->emEnergyFraction();
      CaloJetfHPD[1] = jetID->fHPD();
      CaloJetn90[1]  = jetID->n90Hits();
    }
    else{}
  }
  
  //
  mj_monojet_countPFJet=0;
  const JetCorrector* pfcorrector = JetCorrector::getJetCorrector(PFJetCorService_,iSetup);
  PFJetCollection::const_iterator pfjet_ = pfjets.begin();
  for(; pfjet_ != pfjets.end(); ++pfjet_){
    double scale = pfcorrector->correction(*pfjet_,iEvent, iSetup);
    if(scale*pfjet_->pt()>PFJetPt[0]){
      PFJetPt[1]   = PFJetPt[0];
      PFJetPx[1]   = PFJetPx[0];
      PFJetPy[1]   = PFJetPy[0];
      PFJetEta[1]  = PFJetEta[0];
      PFJetPhi[1]  = PFJetPhi[0];
      PFJetNHEF[1] = PFJetNHEF[0]; 
      PFJetCHEF[1] = PFJetCHEF[0];
      PFJetNEMF[1] = PFJetNEMF[0]; 
      PFJetCEMF[1] = PFJetCEMF[0];
      //
      PFJetPt[0]   = scale*pfjet_->pt();
      PFJetPx[0]   = scale*pfjet_->px();
      PFJetPy[0]   = scale*pfjet_->py();
      PFJetEta[0]  = pfjet_->eta();
      PFJetPhi[0]  = pfjet_->phi();
      PFJetNHEF[0] = pfjet_->neutralHadronEnergyFraction();
      PFJetCHEF[0] = pfjet_->chargedHadronEnergyFraction();
      PFJetNEMF[0] = pfjet_->neutralEmEnergyFraction();
      PFJetCEMF[0] = pfjet_->chargedEmEnergyFraction();
    }
    else if(scale*pfjet_->pt()<PFJetPt[0] && scale*pfjet_->pt()>PFJetPt[1] ){
      PFJetPt[1]   = scale*pfjet_->pt();
      PFJetPx[1]   = scale*pfjet_->px();
      PFJetPy[1]   = scale*pfjet_->py();
      PFJetEta[1]  = pfjet_->eta();
      PFJetPhi[1]  = pfjet_->phi(); 
      PFJetNHEF[1] = pfjet_->neutralHadronEnergyFraction();
      PFJetCHEF[1] = pfjet_->chargedHadronEnergyFraction();
      PFJetNEMF[1] = pfjet_->neutralEmEnergyFraction();
      PFJetCEMF[1] = pfjet_->chargedEmEnergyFraction();
    }
    else{}
    if(scale*pfjet_->pt()>mj_monojet_ptPFJet_) mj_monojet_countPFJet++;
  }
  //#######################################################
  
  
  // Analyze
  //
  analyzeMultiJets(iEvent);
  //analyzeMultiJetsTrigger(iEvent);
  //
  analyzeLongLived(iEvent);
  //analyzeLongLivedTrigger(iEvent);

  analyzeEventInterpretation(iEvent, iSetup);
}
void ExoticaDQM::analyzeEventInterpretation ( edm::Event const &  e,
edm::EventSetup const &  eSetup 
) [protected, virtual]

Definition at line 476 of file ExoticaDQM.cc.

References JetCorrector::correction(), reco::LeafCandidate::et(), edm::Event::getByLabel(), JetCorrector::getJetCorrector(), and pileupReCalc_HLTpaths::scale.

                                                                                            {  

  // EI
  // PFElectrons
  bool ValidPFElectronEI = iEvent.getByLabel(PFElectronLabelEI_, pfElectronCollectionEI_);
  if(!ValidPFElectronEI) return;
  pfelectronsEI = *pfElectronCollectionEI_;

  // PFMuons
  bool ValidPFMuonEI = iEvent.getByLabel(PFMuonLabelEI_, pfMuonCollectionEI_);
  if(!ValidPFMuonEI) return;
  pfmuonsEI = *pfMuonCollectionEI_;
  
  // PFJets
  bool ValidPFJetEI = iEvent.getByLabel(PFJetLabelEI_, pfJetCollectionEI_);
  if(!ValidPFJetEI) return;
  pfjetsEI = *pfJetCollectionEI_;
  
  // PFMETs
  bool ValidPFMETEI = iEvent.getByLabel(PFMETLabelEI_, pfMETCollectionEI_);
  if(!ValidPFMETEI) return;

  // Jet Correction
  int countJet = 0;
  PFJetEIPt    = -99.;
  const JetCorrector* pfcorrectorEI = JetCorrector::getJetCorrector(PFJetCorService_,iSetup);
  PFJetCollection::const_iterator pfjet_ = pfjetsEI.begin();
  for(; pfjet_ != pfjetsEI.end(); ++pfjet_){
    double scale = pfcorrectorEI->correction(*pfjet_,iEvent, iSetup);
    if(scale*pfjet_->pt()<PFJetEIPt) continue;
    PFJetEIPt   = scale*pfjet_->pt();
    PFJetEIPx   = scale*pfjet_->px();
    PFJetEIPy   = scale*pfjet_->py();
    PFJetEIEta  = pfjet_->eta();
    PFJetEIPhi  = pfjet_->phi();
    PFJetEINHEF = pfjet_->neutralHadronEnergyFraction();
    PFJetEICHEF = pfjet_->chargedHadronEnergyFraction();
    PFJetEINEMF = pfjet_->neutralEmEnergyFraction();
    PFJetEICEMF = pfjet_->chargedEmEnergyFraction();
    countJet++;
  }
  if(countJet>0){
    ei_pfjet1_pt->Fill(PFJetEIPt);
  }
  
  const PFMETCollection *pfmetcolEI = pfMETCollectionEI_.product();
  const PFMET pfmetEI = pfmetcolEI->front();
  ei_pfmet_pt->Fill(pfmetEI.et());
}
void ExoticaDQM::analyzeLongLived ( edm::Event const &  e) [protected, virtual]

Definition at line 433 of file ExoticaDQM.cc.

References EcalClusterTools::cluster2ndMoments(), edm::Event::getByLabel(), EcalClusterTools::getMaximum(), edm::Handle< T >::product(), HI_PhotonSkim_cff::rechits, Cluster2ndMoments::sMaj, and Cluster2ndMoments::sMin.

                                                     { 
  // SMajMajPho, SMinMinPho
  // get ECAL reco hits
  Handle<EBRecHitCollection> ecalhitseb;
  const EBRecHitCollection* rhitseb=0;
  iEvent.getByLabel("reducedEcalRecHitsEB", ecalhitseb);    
  rhitseb = ecalhitseb.product(); // get a ptr to the product
  //
  Handle<EERecHitCollection> ecalhitsee;
  const EERecHitCollection* rhitsee=0;
  iEvent.getByLabel("reducedEcalRecHitsEE", ecalhitsee);
  rhitsee = ecalhitsee.product(); // get a ptr to the product
  //
  int nPhot = 0;
  reco::PhotonCollection::const_iterator photon = PhotonCollection_->begin();
  for(; photon != PhotonCollection_->end(); ++photon){
    if(photon->energy()<3.) continue;
    if(nPhot>=40) continue;
    
    const Ptr<CaloCluster> theSeed = photon->superCluster()->seed(); 
    const EcalRecHitCollection* rechits = ( photon->isEB()) ? rhitseb : rhitsee;
    CaloClusterPtr SCseed = photon->superCluster()->seed();
    
    std::pair<DetId, float> maxRH = EcalClusterTools::getMaximum( *theSeed, &(*rechits) );
    
    if(maxRH.second) {
      Cluster2ndMoments moments = EcalClusterTools::cluster2ndMoments(*SCseed, *rechits);
      //std::vector<float> etaphimoments = EcalClusterTools::localCovariances(*SCseed, &(*rechits), &(*topology));
      ll_gammajet_sMajMajPhot->Fill(moments.sMaj);
      ll_gammajet_sMinMinPhot->Fill(moments.sMin);
    }
    else{
      ll_gammajet_sMajMajPhot->Fill(-100.);
      ll_gammajet_sMinMinPhot->Fill(-100.);
    }
    ++nPhot;
  }

}
void ExoticaDQM::analyzeLongLivedTrigger ( edm::Event const &  e) [protected, virtual]

Definition at line 473 of file ExoticaDQM.cc.

                                                            {
}
void ExoticaDQM::analyzeMultiJets ( edm::Event const &  e) [protected, virtual]

Definition at line 384 of file ExoticaDQM.cc.

References SiPixelRawToDigiRegional_cfi::deltaPhi, deltaR(), reco::LeafCandidate::et(), CaloMET_cfi::met, and reco::LeafCandidate::phi().

                                                     { 

  //--- MonoJet
  //bool checkLepton = false;
  //reco::MuonCollection::const_iterator  muon  = MuonCollection_->begin();
  //for(; muon != MuonCollection_->end(); muon++){
  //if(muon->pt()<mj_monojet_ptPFMuon_) continue; 
  //checkLepton = true; 
  //}
  //reco::GsfElectronCollection::const_iterator electron = ElectronCollection_->begin();
  //for(; electron != ElectronCollection_->end(); electron++){
  //if(electron->pt()<mj_monojet_ptPFElectron_) continue; 
  //checkLepton = true; 
  //}
  //if(checkLepton==false){

  if(PFJetPt[0]>0.){
    mj_monojet_pfJet1_pt->Fill(PFJetPt[0]);
    mj_monojet_pfJet1_eta->Fill(PFJetEta[0]);
    mj_monojet_pfchef->Fill(PFJetCHEF[0]);
    mj_monojet_pfnhef->Fill(PFJetNHEF[0]); 
    mj_monojet_pfcemf->Fill(PFJetCEMF[0]);
    mj_monojet_pfnemf->Fill(PFJetNEMF[0]);
    mj_monojet_pfJetMulti->Fill(mj_monojet_countPFJet); 
  }
  if(PFJetPt[1]>0.){
    mj_monojet_pfJet2_pt->Fill(PFJetPt[1]);
    mj_monojet_pfJet2_eta->Fill(PFJetEta[1]);
    mj_monojet_deltaPhiPFJet1PFJet2->Fill(deltaPhi(PFJetPhi[0],PFJetPhi[1]));
    mj_monojet_deltaRPFJet1PFJet2->Fill(deltaR(PFJetEta[0],PFJetPhi[0],
                                               PFJetEta[1],PFJetPhi[1]));
  }
  
  //--- MET
  const CaloMETCollection *calometcol = caloMETCollection_.product();
  const CaloMET met = calometcol->front();
  mj_caloMet_et->Fill(met.et());
  mj_caloMet_phi->Fill(met.phi());
  
  //
  const PFMETCollection *pfmetcol = pfMETCollection_.product();
  const PFMET pfmet = pfmetcol->front();
  mj_pfMet_et->Fill(pfmet.et());
  mj_pfMet_phi->Fill(pfmet.phi());
}
void ExoticaDQM::analyzeMultiJetsTrigger ( edm::Event const &  e) [protected, virtual]

Definition at line 430 of file ExoticaDQM.cc.

                                                            {
}
void ExoticaDQM::beginJob ( void  ) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 150 of file ExoticaDQM.cc.

References pi.

                         {
  nLumiSecs_ = 0;
  nEvents_   = 0;
  pi = 3.14159265;
}
void ExoticaDQM::beginLuminosityBlock ( edm::LuminosityBlock const &  lumiSeg,
edm::EventSetup const &  context 
) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 177 of file ExoticaDQM.cc.

                                                                          { 
  //edm::LogInfo ("ExoticaDQM") <<"[ExoticaDQM]: Begin of LS transition";
}
void ExoticaDQM::beginRun ( edm::Run const &  run,
edm::EventSetup const &  eSetup 
) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 160 of file ExoticaDQM.cc.

References AlCaHLTBitMon_QueryRunRegistry::string.

                                                                     {
  edm::LogInfo ("ExoticaDQM") <<"[ExoticaDQM]: Begining of Run";
  
  // passed as parameter to HLTConfigProvider::init(), not yet used
  bool isConfigChanged = false;
  
  // isValidHltConfig_ used to short-circuit analyze() in case of problems
  //  const std::string hltProcessName( "HLT" );
  const std::string hltProcessName = theTriggerResultsCollection.process();
  isValidHltConfig_ = hltConfigProvider_.init( run, eSetup, hltProcessName, isConfigChanged );

}
void ExoticaDQM::bookHistos ( DQMStore bei) [private]

Definition at line 186 of file ExoticaDQM.cc.

References DQMStore::book1D(), DQMStore::cd(), and DQMStore::setCurrentFolder().

                                        {
 
  bei->cd();
  
  //--- Multijets
  bei->setCurrentFolder("Physics/Exotica/MultiJets");
  mj_monojet_pfchef               = bei->book1D("mj_monojet_pfchef", "PFJetID CHEF", 50, 0.0 , 1.0);
  mj_monojet_pfnhef               = bei->book1D("mj_monojet_pfnhef", "PFJetID NHEF", 50, 0.0 , 1.0);
  mj_monojet_pfcemf               = bei->book1D("mj_monojet_pfcemf", "PFJetID CEMF", 50, 0.0 , 1.0);
  mj_monojet_pfnemf               = bei->book1D("mj_monojet_pfnemf", "PFJetID NEMF", 50, 0.0 , 1.0);
  mj_monojet_pfJet1_pt            = bei->book1D("mj_monojet_pfJet1_pt", "Pt of PFJet-1 (GeV)", 40, 0.0 , 1000);
  mj_monojet_pfJet2_pt            = bei->book1D("mj_monojet_pfJet2_pt", "Pt of PFJet-2 (GeV)", 40, 0.0 , 1000);
  mj_monojet_pfJet1_eta           = bei->book1D("mj_monojet_pfJet1_eta", "#eta(PFJet-1)", 50, -5.0, 5.0);
  mj_monojet_pfJet2_eta           = bei->book1D("mj_monojet_pfJet2_eta", "#eta(PFJet-2)", 50, -5.0, 5.0);
  mj_monojet_pfJetMulti           = bei->book1D("mj_monojet_pfJetMulti", "No. of PFJets", 10, 0., 10.);
  mj_monojet_deltaPhiPFJet1PFJet2 = bei->book1D("mj_monojet_deltaPhiPFJet1PFJet2", "#Delta#phi(PFJet1, PFJet2)", 40, 0., 4.);
  mj_monojet_deltaRPFJet1PFJet2   = bei->book1D("mj_monojet_deltaRPFJet1PFJet2", "#DeltaR(PFJet1, PFJet2)", 50, 0., 10.);
  mj_monojet_pfmetnomu            = bei->book1D("mj_monojet_pfmetnomu", "PFMET no Mu", 100, 0.0 , 500.0); 
  mj_caloMet_et                   = bei->book1D("mj_caloMet", "Calo Missing E_{T}; GeV", 50, 0.0 , 500);
  mj_caloMet_phi                  = bei->book1D("mj_caloMet_phi", "Calo Missing E_{T} #phi;#phi(MET)", 35, -3.5, 3.5 );
  mj_pfMet_et                     = bei->book1D("mj_pfMet", "Pf Missing E_{T}; GeV", 50,  0.0 , 500);
  mj_pfMet_phi                    = bei->book1D("mj_pfMet_phi", "Pf Missing E_{T} #phi;#phi(MET)", 35, -3.5, 3.5 );
  
  //
  //bei->setCurrentFolder("Physics/Exotica/MultiJetsTrigger"); 
 
  //--- LongLived
  bei->setCurrentFolder("Physics/Exotica/LongLived");
  ll_gammajet_sMajMajPhot         = bei->book1D("ll_gammajet_sMajMajPhot", "sMajMajPhot", 50, 0.0 , 5.0);
  ll_gammajet_sMinMinPhot         = bei->book1D("ll_gammajet_sMinMinPhot", "sMinMinPhot", 50, 0.0 , 5.0);

  //
  //bei->setCurrentFolder("Physics/Exotica/LongLivedTrigger"); 

  //
  bei->setCurrentFolder("Physics/Exotica/EIComparison");
  ei_pfjet1_pt     = bei->book1D("ei_pfjet1_pt",     "Pt of PFJet-1    (EI) (GeV)", 40, 0.0 , 1000);
  ei_pfmet_pt      = bei->book1D("ei_pfmet_pt",      "Pt of PFMET      (EI) (GeV)", 40, 0.0 , 1000);
  //ei_pfmuon_pt     = bei->book1D("ei_pfmuon_pt",     "Pt of PFMuon     (EI) (GeV)", 40, 0.0 , 1000);
  //ei_pfelectron_pt = bei->book1D("ei_pfelectron_pt", "Pt of PFElectron (EI) (GeV)", 40, 0.0 , 1000);
  
  bei->cd();
}
void ExoticaDQM::endJob ( void  ) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 548 of file ExoticaDQM.cc.

                       {
  //edm::LogInfo("ExoticaDQM") <<"[ExoticaDQM]: endjob called!";
}
void ExoticaDQM::endLuminosityBlock ( edm::LuminosityBlock const &  lumiSeg,
edm::EventSetup const &  c 
) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 529 of file ExoticaDQM.cc.

                                                                                                  {
  //edm::LogInfo ("ExoticaDQM") <<"[ExoticaDQM]: End of LS transition, performing the DQM client operation";
  nLumiSecs_++;
  //edm::LogInfo("ExoticaDQM") << "============================================ " 
  //<< endl << " ===> Iteration # " << nLumiSecs_ << " " << lumiSeg.luminosityBlock() 
  //<< endl  << "============================================ " << endl;
}
void ExoticaDQM::endRun ( edm::Run const &  run,
edm::EventSetup const &  eSetup 
) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 541 of file ExoticaDQM.cc.

                                                                     {
}

Member Data Documentation

Definition at line 132 of file ExoticaDQM.h.

Definition at line 180 of file ExoticaDQM.h.

std::string ExoticaDQM::CaloJetCorService_ [private]

Definition at line 207 of file ExoticaDQM.h.

double ExoticaDQM::CaloJetEMF[2] [private]

Definition at line 221 of file ExoticaDQM.h.

double ExoticaDQM::CaloJetEta[2] [private]

Definition at line 219 of file ExoticaDQM.h.

double ExoticaDQM::CaloJetfHPD[2] [private]

Definition at line 222 of file ExoticaDQM.h.

Definition at line 179 of file ExoticaDQM.h.

double ExoticaDQM::CaloJetn90[2] [private]

Definition at line 223 of file ExoticaDQM.h.

double ExoticaDQM::CaloJetPhi[2] [private]

Definition at line 220 of file ExoticaDQM.h.

double ExoticaDQM::CaloJetPt[2] [private]

Definition at line 218 of file ExoticaDQM.h.

double ExoticaDQM::CaloJetPx[2] [private]

Definition at line 216 of file ExoticaDQM.h.

double ExoticaDQM::CaloJetPy[2] [private]

Definition at line 217 of file ExoticaDQM.h.

Definition at line 181 of file ExoticaDQM.h.

Definition at line 194 of file ExoticaDQM.h.

Definition at line 193 of file ExoticaDQM.h.

Definition at line 283 of file ExoticaDQM.h.

Definition at line 280 of file ExoticaDQM.h.

Definition at line 281 of file ExoticaDQM.h.

Definition at line 282 of file ExoticaDQM.h.

Definition at line 145 of file ExoticaDQM.h.

Definition at line 144 of file ExoticaDQM.h.

Definition at line 133 of file ExoticaDQM.h.

int ExoticaDQM::ievt [private]

Definition at line 127 of file ExoticaDQM.h.

int ExoticaDQM::irun [private]

Definition at line 127 of file ExoticaDQM.h.

Definition at line 134 of file ExoticaDQM.h.

Definition at line 209 of file ExoticaDQM.h.

int ExoticaDQM::leptonflavor [private]

Definition at line 129 of file ExoticaDQM.h.

Definition at line 128 of file ExoticaDQM.h.

Definition at line 275 of file ExoticaDQM.h.

Definition at line 276 of file ExoticaDQM.h.

unsigned long long ExoticaDQM::m_cacheID_ [private]

Definition at line 125 of file ExoticaDQM.h.

Definition at line 267 of file ExoticaDQM.h.

Definition at line 268 of file ExoticaDQM.h.

Definition at line 214 of file ExoticaDQM.h.

Definition at line 264 of file ExoticaDQM.h.

Definition at line 265 of file ExoticaDQM.h.

Definition at line 257 of file ExoticaDQM.h.

Definition at line 255 of file ExoticaDQM.h.

Definition at line 261 of file ExoticaDQM.h.

Definition at line 259 of file ExoticaDQM.h.

Definition at line 262 of file ExoticaDQM.h.

Definition at line 260 of file ExoticaDQM.h.

Definition at line 263 of file ExoticaDQM.h.

Definition at line 266 of file ExoticaDQM.h.

Definition at line 258 of file ExoticaDQM.h.

Definition at line 256 of file ExoticaDQM.h.

Definition at line 212 of file ExoticaDQM.h.

Definition at line 210 of file ExoticaDQM.h.

Definition at line 211 of file ExoticaDQM.h.

Definition at line 269 of file ExoticaDQM.h.

Definition at line 270 of file ExoticaDQM.h.

Definition at line 154 of file ExoticaDQM.h.

Definition at line 153 of file ExoticaDQM.h.

int ExoticaDQM::nEvents_ [private]

Definition at line 127 of file ExoticaDQM.h.

int ExoticaDQM::nLumiSecs_ [private]

Definition at line 126 of file ExoticaDQM.h.

Definition at line 148 of file ExoticaDQM.h.

Definition at line 147 of file ExoticaDQM.h.

Definition at line 149 of file ExoticaDQM.h.

double ExoticaDQM::PFJetCEMF[2] [private]

Definition at line 233 of file ExoticaDQM.h.

double ExoticaDQM::PFJetCHEF[2] [private]

Definition at line 231 of file ExoticaDQM.h.

Definition at line 184 of file ExoticaDQM.h.

Definition at line 188 of file ExoticaDQM.h.

std::string ExoticaDQM::PFJetCorService_ [private]

Definition at line 208 of file ExoticaDQM.h.

double ExoticaDQM::PFJetEICEMF [private]

Definition at line 248 of file ExoticaDQM.h.

double ExoticaDQM::PFJetEICHEF [private]

Definition at line 246 of file ExoticaDQM.h.

double ExoticaDQM::PFJetEIEta [private]

Definition at line 243 of file ExoticaDQM.h.

double ExoticaDQM::PFJetEINEMF [private]

Definition at line 247 of file ExoticaDQM.h.

double ExoticaDQM::PFJetEINHEF [private]

Definition at line 245 of file ExoticaDQM.h.

double ExoticaDQM::PFJetEIPhi [private]

Definition at line 244 of file ExoticaDQM.h.

double ExoticaDQM::PFJetEIPt [private]

Definition at line 242 of file ExoticaDQM.h.

double ExoticaDQM::PFJetEIPx [private]

Definition at line 240 of file ExoticaDQM.h.

double ExoticaDQM::PFJetEIPy [private]

Definition at line 241 of file ExoticaDQM.h.

double ExoticaDQM::PFJetEta[2] [private]

Definition at line 228 of file ExoticaDQM.h.

Definition at line 183 of file ExoticaDQM.h.

Definition at line 187 of file ExoticaDQM.h.

double ExoticaDQM::PFJetNEMF[2] [private]

Definition at line 232 of file ExoticaDQM.h.

double ExoticaDQM::PFJetNHEF[2] [private]

Definition at line 230 of file ExoticaDQM.h.

double ExoticaDQM::PFJetPhi[2] [private]

Definition at line 229 of file ExoticaDQM.h.

double ExoticaDQM::PFJetPt[2] [private]

Definition at line 227 of file ExoticaDQM.h.

double ExoticaDQM::PFJetPx[2] [private]

Definition at line 225 of file ExoticaDQM.h.

double ExoticaDQM::PFJetPy[2] [private]

Definition at line 226 of file ExoticaDQM.h.

Definition at line 185 of file ExoticaDQM.h.

Definition at line 189 of file ExoticaDQM.h.

Definition at line 197 of file ExoticaDQM.h.

Definition at line 200 of file ExoticaDQM.h.

Definition at line 196 of file ExoticaDQM.h.

Definition at line 199 of file ExoticaDQM.h.

Definition at line 157 of file ExoticaDQM.h.

Definition at line 156 of file ExoticaDQM.h.

Definition at line 158 of file ExoticaDQM.h.

Definition at line 174 of file ExoticaDQM.h.

Definition at line 173 of file ExoticaDQM.h.

Definition at line 175 of file ExoticaDQM.h.

Definition at line 166 of file ExoticaDQM.h.

Definition at line 165 of file ExoticaDQM.h.

Definition at line 171 of file ExoticaDQM.h.

Definition at line 170 of file ExoticaDQM.h.

float ExoticaDQM::pi [private]

Definition at line 130 of file ExoticaDQM.h.

Definition at line 163 of file ExoticaDQM.h.

Definition at line 162 of file ExoticaDQM.h.

std::vector<std::string> ExoticaDQM::theTriggerForLongLivedList [private]

Definition at line 139 of file ExoticaDQM.h.

std::vector<std::string> ExoticaDQM::theTriggerForMultiJetsList [private]

Definition at line 138 of file ExoticaDQM.h.

Definition at line 137 of file ExoticaDQM.h.

Definition at line 140 of file ExoticaDQM.h.