CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

PFJetTester Class Reference

#include <PFJetTester.h>

Inheritance diagram for PFJetTester:
edm::EDAnalyzer

List of all members.

Public Member Functions

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

Private Member Functions

void fillMatchHists (const reco::GenJet &fGenJet, const reco::PFJet &fPFJet)

Private Attributes

std::string inputCaloMETLabel_
std::string inputGenMETLabel_
edm::InputTag inputMETLabel_
MonitorElementmAllGenJetsEta
MonitorElementmAllGenJetsPt
MonitorElementmCaloMET
MonitorElementmCaloMET_3000
MonitorElementmCaloMETPhi
MonitorElementmCaloMETSig
MonitorElementmCaloMETSig_3000
MonitorElementmCaloMEx
MonitorElementmCaloMEx_3000
MonitorElementmCaloMEy
MonitorElementmCaloMEy_3000
MonitorElementmCaloSumET
MonitorElementmCaloSumET_3000
MonitorElementmChargedEmEnergy_3000
MonitorElementmChargedEmEnergy_80
MonitorElementmChargedEmEnergyFraction
MonitorElementmChargedHadronEnergy_3000
MonitorElementmChargedHadronEnergy_80
MonitorElementmChargedHadronEnergyFraction
MonitorElementmConstituents
MonitorElementmConstituents_3000
MonitorElementmConstituents_80
MonitorElementmDelEta
MonitorElementmDelPhi
MonitorElementmDelPt
MonitorElementmDeltaE
MonitorElementmDeltaEta
MonitorElementmDeltaPhi
MonitorElementmE
MonitorElementmE_3000
MonitorElementmE_80
MonitorElementmEBEne
MonitorElementmEBTime
MonitorElementmEEEne
MonitorElementmEETime
MonitorElementmEFirst
MonitorElementmEFirst_3000
MonitorElementmEFirst_80
MonitorElementmEmEnergyProfile
MonitorElementmEmTiming
MonitorElementmEScale
MonitorElementmEScale_pt10
MonitorElementmEScaleFineBin
MonitorElementmEta
MonitorElementmEtaFineBin
MonitorElementmEtaFineBin1m
MonitorElementmEtaFineBin1p
MonitorElementmEtaFineBin2m
MonitorElementmEtaFineBin2p
MonitorElementmEtaFineBin3m
MonitorElementmEtaFineBin3p
MonitorElementmEtaFirst
std::string METType_
double mGenEnergyFractionThreshold
MonitorElementmGenEta
MonitorElementmGenEtaFirst
MonitorElementmGenJetMatchEnergyFraction
MonitorElementmGenPhi
MonitorElementmGenPhiFirst
MonitorElementmGenPt
MonitorElementmGenPt_3000
MonitorElementmGenPt_80
MonitorElementmHadEnergyProfile
MonitorElementmHadTiming
MonitorElementmHBEne
MonitorElementmHBTime
MonitorElementmHEEne
MonitorElementmHETime
MonitorElementmHFEne
MonitorElementmHFTime
MonitorElementmHOEne
MonitorElementmHOTime
edm::InputTag mInputCollection
edm::InputTag mInputGenCollection
MonitorElementmJetEnergyProfile
MonitorElementmlinEScale
MonitorElementmMass
MonitorElementmMass_3000
MonitorElementmMass_80
MonitorElementmMatchedGenJetsEta
MonitorElementmMatchedGenJetsPt
double mMatchGenPtThreshold
MonitorElementmMjj
MonitorElementmMjj_3000
MonitorElementmNeutralEmEnergy_3000
MonitorElementmNeutralEmEnergy_80
MonitorElementmNeutralEmEnergyFraction
MonitorElementmNeutralHadronEnergy_3000
MonitorElementmNeutralHadronEnergy_80
MonitorElementmNeutralHadronEnergyFraction
MonitorElementmNJets1
MonitorElementmNJets2
MonitorElementmNJetsEtaC
MonitorElementmNJetsEtaF
std::string mOutputFile
MonitorElementmP
MonitorElementmP_3000
MonitorElementmP_80
MonitorElementmPhi
MonitorElementmPhiFineBin
MonitorElementmPhiFirst
MonitorElementmPt
MonitorElementmPt_3000
MonitorElementmPt_80
MonitorElementmPtFirst
MonitorElementmPtFirst_3000
MonitorElementmPtFirst_80
MonitorElementmPthat_3000
MonitorElementmPthat_80
MonitorElementmpTScale1D_200_300
MonitorElementmpTScale1D_2700_3500
MonitorElementmpTScale1D_600_900
MonitorElementmpTScale1D_60_120
MonitorElementmpTScale1DB_200_300
MonitorElementmpTScale1DB_2700_3500
MonitorElementmpTScale1DB_600_900
MonitorElementmpTScale1DB_60_120
MonitorElementmpTScale1DE_200_300
MonitorElementmpTScale1DE_2700_3500
MonitorElementmpTScale1DE_600_900
MonitorElementmpTScale1DE_60_120
MonitorElementmpTScale1DF_200_300
MonitorElementmpTScale1DF_2700_3500
MonitorElementmpTScale1DF_600_900
MonitorElementmpTScale1DF_60_120
MonitorElementmpTScale_200_300_d
MonitorElementmpTScale_200_300_s
MonitorElementmpTScale_2700_3500_d
MonitorElementmpTScale_2700_3500_s
MonitorElementmpTScale_600_900_d
MonitorElementmpTScale_600_900_s
MonitorElementmpTScale_60_120_d
MonitorElementmpTScale_60_120_s
MonitorElementmpTScaleB_d
MonitorElementmpTScaleB_s
MonitorElementmpTScaleE_d
MonitorElementmpTScaleE_s
MonitorElementmpTScaleF_d
MonitorElementmpTScaleF_s
double mReverseEnergyFractionThreshold
MonitorElementmReverseMatchEnergyFraction
MonitorElementmRMatch
double mRThreshold
std::string mTurnOnEverything
MonitorElementnumberofevents

Detailed Description

Definition at line 21 of file PFJetTester.h.


Constructor & Destructor Documentation

PFJetTester::PFJetTester ( const edm::ParameterSet iConfig)

Definition at line 47 of file PFJetTester.cc.

References DQMStore::book1D(), DQMStore::book2D(), DQMStore::book3D(), DQMStore::bookProfile(), DQMStore::bookProfile2D(), jptDQMConfig_cff::etaBins, ExpressReco_HICollisions_FallBack::etaMax, ExpressReco_HICollisions_FallBack::etaMin, edm::InputTag::label(), mAllGenJetsEta, mAllGenJetsPt, mCaloMET, mCaloMET_3000, mCaloMETPhi, mCaloMETSig, mCaloMETSig_3000, mCaloMEx, mCaloMEx_3000, mCaloMEy, mCaloMEy_3000, mCaloSumET, mCaloSumET_3000, mChargedEmEnergy_3000, mChargedEmEnergy_80, mChargedEmEnergyFraction, mChargedHadronEnergy_3000, mChargedHadronEnergy_80, mChargedHadronEnergyFraction, mConstituents, mConstituents_80, mDelEta, mDelPhi, mDelPt, mDeltaE, mDeltaEta, mDeltaPhi, mE, mE_3000, mE_80, mEBEne, mEBTime, mEEEne, mEETime, mEFirst, mEFirst_3000, mEFirst_80, mEmEnergyProfile, mEmTiming, mEScale, mEScale_pt10, mEScaleFineBin, mEta, mEtaFineBin, mEtaFineBin1m, mEtaFineBin1p, mEtaFineBin2m, mEtaFineBin2p, mEtaFineBin3m, mEtaFineBin3p, mEtaFirst, mGenEta, mGenEtaFirst, mGenJetMatchEnergyFraction, mGenPhi, mGenPhiFirst, mGenPt, mGenPt_3000, mGenPt_80, mHadEnergyProfile, mHadTiming, mHBEne, mHBTime, mHEEne, mHETime, mHFEne, mHFTime, mHOEne, mHOTime, mInputCollection, mJetEnergyProfile, mlinEScale, mMass, mMass_3000, mMass_80, mMatchedGenJetsEta, mMatchedGenJetsPt, mMjj, mMjj_3000, mNeutralEmEnergy_3000, mNeutralEmEnergy_80, mNeutralEmEnergyFraction, mNeutralHadronEnergy_3000, mNeutralHadronEnergy_80, mNeutralHadronEnergyFraction, mNJets1, mNJets2, mNJetsEtaC, mNJetsEtaF, mOutputFile, mP, mP_3000, mP_80, mPhi, mPhiFineBin, mPhiFirst, mPt, mPt_3000, mPt_80, mPtFirst, mPtFirst_3000, mPtFirst_80, mPthat_3000, mPthat_80, mpTScale1D_200_300, mpTScale1D_2700_3500, mpTScale1D_600_900, mpTScale1D_60_120, mpTScale1DB_200_300, mpTScale1DB_2700_3500, mpTScale1DB_600_900, mpTScale1DB_60_120, mpTScale1DE_200_300, mpTScale1DE_2700_3500, mpTScale1DE_600_900, mpTScale1DE_60_120, mpTScale1DF_200_300, mpTScale1DF_2700_3500, mpTScale1DF_600_900, mpTScale1DF_60_120, mpTScale_200_300_d, mpTScale_200_300_s, mpTScale_2700_3500_d, mpTScale_2700_3500_s, mpTScale_600_900_d, mpTScale_600_900_s, mpTScale_60_120_d, mpTScale_60_120_s, mpTScaleB_d, mpTScaleB_s, mpTScaleE_d, mpTScaleE_s, mpTScaleF_d, mpTScaleF_s, mReverseMatchEnergyFraction, mRMatch, mTurnOnEverything, numberofevents, and DQMStore::setCurrentFolder().

  : mInputCollection (iConfig.getParameter<edm::InputTag>( "src" )),
    mInputGenCollection (iConfig.getParameter<edm::InputTag>( "srcGen" )),
    mOutputFile (iConfig.getUntrackedParameter<std::string>("outputFile", "")),
    mMatchGenPtThreshold (iConfig.getParameter<double>("genPtThreshold")),
    mGenEnergyFractionThreshold (iConfig.getParameter<double>("genEnergyFractionThreshold")),
    mReverseEnergyFractionThreshold (iConfig.getParameter<double>("reverseEnergyFractionThreshold")),
    mRThreshold (iConfig.getParameter<double>("RThreshold")),
    mTurnOnEverything (iConfig.getUntrackedParameter<std::string>("TurnOnEverything",""))
{
    numberofevents
    = mEta = mEtaFineBin = mPhi = mPhiFineBin = mE = mE_80 = mE_3000
    = mP = mP_80 = mP_3000 = mPt = mPt_80 = mPt_3000
    = mMass = mMass_80 = mMass_3000 = mConstituents = mConstituents_80
    = mEtaFirst = mPhiFirst = mEFirst = mEFirst_80 = mEFirst_3000 = mPtFirst = mPtFirst_80 = mPtFirst_3000
    = mMjj = mMjj_3000 = mDelEta = mDelPhi = mDelPt 
      //    = mMaxEInEmTowers = mMaxEInHadTowers 
      //    = mHadEnergyInHO = mHadEnergyInHB = mHadEnergyInHF = mHadEnergyInHE 
      //    = mHadEnergyInHO_80 = mHadEnergyInHB_80 = mHadEnergyInHE_80 
      //    = mHadEnergyInHO_3000 = mHadEnergyInHB_3000 = mHadEnergyInHE_3000 
      //    = mEmEnergyInEB = mEmEnergyInEE = mEmEnergyInHF 
      //    = mEmEnergyInEB_80 = mEmEnergyInEE_80
      //    = mEmEnergyInEB_3000 = mEmEnergyInEE_3000
      //    = mEnergyFractionHadronic = mEnergyFractionEm 
      //    = mHFLong = mHFTotal = mHFLong_80 = mHFLong_3000 = mHFShort = mHFShort_80 = mHFShort_3000
      //    = mN90
    = mChargedEmEnergy_80 = mChargedHadronEnergy_80 = mNeutralEmEnergy_80 = mNeutralHadronEnergy_80
    = mChargedEmEnergy_3000 = mChargedHadronEnergy_3000 = mNeutralEmEnergy_3000 = mNeutralHadronEnergy_3000
    = mChargedEmEnergyFraction = mChargedHadronEnergyFraction = mNeutralEmEnergyFraction = mNeutralHadronEnergyFraction
    = mCaloMEx = mCaloMEx_3000 = mCaloMEy = mCaloMEy_3000 = mCaloMETSig = mCaloMETSig_3000
    = mCaloMET = mCaloMET_3000 =  mCaloMETPhi = mCaloSumET  = mCaloSumET_3000   
    = mHadTiming = mEmTiming 
    = mNJetsEtaC = mNJetsEtaF = mNJets1 = mNJets2
    = mAllGenJetsPt = mMatchedGenJetsPt = mAllGenJetsEta = mMatchedGenJetsEta 
    = mGenJetMatchEnergyFraction = mReverseMatchEnergyFraction = mRMatch
    = mDeltaEta = mDeltaPhi = mEScale = mlinEScale = mDeltaE
    = mHadEnergyProfile = mEmEnergyProfile = mJetEnergyProfile 
      //    = mHadJetEnergyProfile = mEMJetEnergyProfile
    = mEScale_pt10 = mEScaleFineBin
    = mpTScaleB_s = mpTScaleE_s = mpTScaleF_s 
    = mpTScaleB_d = mpTScaleE_d = mpTScaleF_d
    = mpTScale_60_120_s = mpTScale_200_300_s = mpTScale_600_900_s = mpTScale_2700_3500_s
    = mpTScale_60_120_d = mpTScale_200_300_d = mpTScale_600_900_d = mpTScale_2700_3500_d
    = mpTScale1DB_60_120    = mpTScale1DE_60_120    = mpTScale1DF_60_120 
    = mpTScale1DB_200_300   = mpTScale1DE_200_300   = mpTScale1DF_200_300 
    = mpTScale1DB_600_900   = mpTScale1DE_600_900   = mpTScale1DF_600_900 
    = mpTScale1DB_2700_3500 = mpTScale1DE_2700_3500 = mpTScale1DF_2700_3500
    = mpTScale1D_60_120 = mpTScale1D_200_300 = mpTScale1D_600_900 = mpTScale1D_2700_3500
    = mHBEne = mHBTime = mHEEne = mHETime = mHFEne = mHFTime = mHOEne = mHOTime
    = mEBEne = mEBTime = mEEEne = mEETime 
    = mPthat_80 = mPthat_3000
    = 0;
  
  DQMStore* dbe = &*edm::Service<DQMStore>();
  if (dbe) {
    dbe->setCurrentFolder("JetMET/RecoJetsV/PFJetTask_" + mInputCollection.label());
    //
    numberofevents    = dbe->book1D("numberofevents","numberofevents", 3, 0 , 2);
    //
    mEta              = dbe->book1D("Eta", "Eta", 100, -5, 5); 
    mEtaFineBin       = dbe->book1D("EtaFineBin_Pt10", "EtaFineBin_Pt10", 500, -5, 5); 
    mEtaFineBin1p     = dbe->book1D("EtaFineBin1p_Pt10", "EtaFineBin1p_Pt10", 100, 0, 1.3); 
    mEtaFineBin2p     = dbe->book1D("EtaFineBin2p_Pt10", "EtaFineBin2p_Pt10", 100, 1.3, 3); 
    mEtaFineBin3p     = dbe->book1D("EtaFineBin3p_Pt10", "EtaFineBin3p_Pt10", 100, 3, 5); 
    mEtaFineBin1m     = dbe->book1D("EtaFineBin1m_Pt10", "EtaFineBin1m_Pt10", 100, -1.3, 0); 
    mEtaFineBin2m     = dbe->book1D("EtaFineBin2m_Pt10", "EtaFineBin2m_Pt10", 100, -3, -1.3); 
    mEtaFineBin3m     = dbe->book1D("EtaFineBin3m_Pt10", "EtaFineBin3m_Pt10", 100, -5, -3); 
    //
    mPhi              = dbe->book1D("Phi", "Phi", 70, -3.5, 3.5); 
    mPhiFineBin       = dbe->book1D("PhiFineBin_Pt10", "PhiFineBin_Pt10", 350, -3.5, 3.5); 
    //
    mE                = dbe->book1D("E", "E", 100, 0, 500); 
    mE_80             = dbe->book1D("E_80", "E_80", 100, 0, 4500); 
    mE_3000           = dbe->book1D("E_3000", "E_3000", 100, 0, 6000); 
    //
    mP                = dbe->book1D("P", "P", 100, 0, 500); 
    mP_80             = dbe->book1D("P_80", "P_80", 100, 0, 4500); 
    mP_3000           = dbe->book1D("P_3000", "P_3000", 100, 0, 6000); 
    //
    mPt               = dbe->book1D("Pt", "Pt", 100, 0, 50); 
    mPt_80            = dbe->book1D("Pt_80", "Pt_80", 100, 0, 140); 
    mPt_3000          = dbe->book1D("Pt_3000", "Pt_3000", 100, 0, 4000); 
    //
    mMass             = dbe->book1D("Mass", "Mass", 100, 0, 25); 
    mMass_80          = dbe->book1D("Mass_80", "Mass_80", 100, 0, 120); 
    mMass_3000        = dbe->book1D("Mass_3000", "Mass_3000", 100, 0, 500); 
    //
    mConstituents     = dbe->book1D("Constituents", "# of Constituents", 100, 0, 100); 
    mConstituents_80  = dbe->book1D("Constituents_80", "# of Constituents_80", 40, 0, 40); 
    //
    mEtaFirst         = dbe->book1D("EtaFirst", "EtaFirst", 100, -5, 5); 
    mPhiFirst         = dbe->book1D("PhiFirst", "PhiFirst", 70, -3.5, 3.5);     
    mEFirst           = dbe->book1D("EFirst", "EFirst", 100, 0, 1000); 
    mEFirst_80        = dbe->book1D("EFirst_80", "EFirst_80", 100, 0, 180); 
    mEFirst_3000      = dbe->book1D("EFirst_3000", "EFirst_3000", 100, 0, 4000); 
    mPtFirst          = dbe->book1D("PtFirst", "PtFirst", 100, 0, 50); 
    mPtFirst_80       = dbe->book1D("PtFirst_80", "PtFirst_80", 100, 0, 140);
    mPtFirst_3000     = dbe->book1D("PtFirst_3000", "PtFirst_3000", 100, 0, 4000);
    //
    mMjj              = dbe->book1D("Mjj", "Mjj", 100, 0, 2000); 
    mMjj_3000         = dbe->book1D("Mjj_3000", "Mjj_3000", 100, 0, 10000); 
    mDelEta           = dbe->book1D("DelEta", "DelEta", 100, -.5, .5); 
    mDelPhi           = dbe->book1D("DelPhi", "DelPhi", 100, -.5, .5); 
    mDelPt            = dbe->book1D("DelPt", "DelPt", 100, -1, 1); 
    //
    //    mMaxEInEmTowers   = dbe->book1D("MaxEInEmTowers", "MaxEInEmTowers", 100, 0, 100); 
    //    mMaxEInHadTowers  = dbe->book1D("MaxEInHadTowers", "MaxEInHadTowers", 100, 0, 100); 
    //    mHadEnergyInHO    = dbe->book1D("HadEnergyInHO", "HadEnergyInHO", 100, 0, 10); 
    //    mHadEnergyInHB    = dbe->book1D("HadEnergyInHB", "HadEnergyInHB", 100, 0, 50); 
    //    mHadEnergyInHF    = dbe->book1D("HadEnergyInHF", "HadEnergyInHF", 100, 0, 50); 
    //    mHadEnergyInHE    = dbe->book1D("HadEnergyInHE", "HadEnergyInHE", 100, 0, 100); 
    //
    //    mHadEnergyInHO_80    = dbe->book1D("HadEnergyInHO_80", "HadEnergyInHO_80", 100, 0, 50); 
    //    mHadEnergyInHB_80    = dbe->book1D("HadEnergyInHB_80", "HadEnergyInHB_80", 100, 0, 200); 
    //    mHadEnergyInHE_80    = dbe->book1D("HadEnergyInHE_80", "HadEnergyInHE_80", 100, 0, 1000); 
    //    mHadEnergyInHO_3000  = dbe->book1D("HadEnergyInHO_3000", "HadEnergyInHO_3000", 100, 0, 500); 
    //    mHadEnergyInHB_3000  = dbe->book1D("HadEnergyInHB_3000", "HadEnergyInHB_3000", 100, 0, 3000); 
    //    mHadEnergyInHE_3000  = dbe->book1D("HadEnergyInHE_3000", "HadEnergyInHE_3000", 100, 0, 2000); 
    //
    //    mEmEnergyInEB     = dbe->book1D("EmEnergyInEB", "EmEnergyInEB", 100, 0, 50); 
    //    mEmEnergyInEE     = dbe->book1D("EmEnergyInEE", "EmEnergyInEE", 100, 0, 50); 
    //    mEmEnergyInHF     = dbe->book1D("EmEnergyInHF", "EmEnergyInHF", 120, -20, 100); 
    //    mEmEnergyInEB_80  = dbe->book1D("EmEnergyInEB_80", "EmEnergyInEB_80", 100, 0, 200); 
    //    mEmEnergyInEE_80  = dbe->book1D("EmEnergyInEE_80", "EmEnergyInEE_80", 100, 0, 1000); 
    //    mEmEnergyInEB_3000= dbe->book1D("EmEnergyInEB_3000", "EmEnergyInEB_3000", 100, 0, 3000); 
    //    mEmEnergyInEE_3000= dbe->book1D("EmEnergyInEE_3000", "EmEnergyInEE_3000", 100, 0, 2000); 
    //    mEnergyFractionHadronic = dbe->book1D("EnergyFractionHadronic", "EnergyFractionHadronic", 120, -0.1, 1.1); 
    //    mEnergyFractionEm = dbe->book1D("EnergyFractionEm", "EnergyFractionEm", 120, -0.1, 1.1); 
    //
    //    mHFTotal          = dbe->book1D("HFTotal", "HFTotal", 100, 0, 500);
    //    mHFTotal_80       = dbe->book1D("HFTotal_80", "HFTotal_80", 100, 0, 3000);
    //    mHFTotal_3000     = dbe->book1D("HFTotal_3000", "HFTotal_3000", 100, 0, 6000);
    //    mHFLong           = dbe->book1D("HFLong", "HFLong", 100, 0, 500);
    //    mHFLong_80        = dbe->book1D("HFLong_80", "HFLong_80", 100, 0, 200);
    //    mHFLong_3000      = dbe->book1D("HFLong_3000", "HFLong_3000", 100, 0, 1500);
    //    mHFShort          = dbe->book1D("HFShort", "HFShort", 100, 0, 500);
    //    mHFShort_80       = dbe->book1D("HFShort_80", "HFShort_80", 100, 0, 200);
    //    mHFShort_3000     = dbe->book1D("HFShort_3000", "HFShort_3000", 100, 0, 1500);
    //
    //    mN90              = dbe->book1D("N90", "N90", 50, 0, 50); 
    //

    mChargedEmEnergy_80 = dbe->book1D("ChargedEmEnergy_80","ChargedEmEnergy_80",100,0.,500.);
    mChargedHadronEnergy_80 = dbe->book1D("ChargedHadronEnergy_80","ChargedHadronEnergy_80",100,0.,500.);
    mNeutralEmEnergy_80 = dbe->book1D("NeutralEmEnergy_80","NeutralEmEnergy_80",100,0.,500.);
    mNeutralHadronEnergy_80 = dbe->book1D("NeutralHadronEnergy_80","NeutralHadronEnergy_80",100,0.,500.);

    mChargedEmEnergy_3000 = dbe->book1D("ChargedEmEnergy_3000","ChargedEmEnergy_3000",100,0.,2000.);
    mChargedHadronEnergy_3000 = dbe->book1D("ChargedHadronEnergy_3000","ChargedHadronEnergy_3000",100,0.,2000.);
    mNeutralEmEnergy_3000 = dbe->book1D("NeutralEmEnergy_3000","NeutralEmEnergy_3000",100,0.,2000.);
    mNeutralHadronEnergy_3000 = dbe->book1D("NeutralHadronEnergy_3000","NeutralHadronEnergy_3000",100,0.,2000.);

    mChargedEmEnergyFraction = dbe->book1D("ChargedEmEnergyFraction","ChargedEmEnergyFraction",120,-0.1,1.1);
    mChargedHadronEnergyFraction = dbe->book1D("ChargedHadronEnergyFraction","ChargedHadronEnergyFraction",120,-0.1,1.1);
    mNeutralEmEnergyFraction = dbe->book1D("NeutralEmEnergyFraction","NeutralEmEnergyFraction",120,-0.1,1.1);
    mNeutralHadronEnergyFraction = dbe->book1D("NeutralHadronEnergyFraction","NeutralHadronEnergyFraction",120,-0.1,1.1);


    mGenEta           = dbe->book1D("GenEta", "GenEta", 100, -5, 5);
    mGenPhi           = dbe->book1D("GenPhi", "GenPhi", 70, -3.5, 3.5);
    mGenPt            = dbe->book1D("GenPt", "GenPt", 100, 0, 50);
    mGenPt_80         = dbe->book1D("GenPt_80", "GenPt_80", 100, 0, 140);
    mGenPt_3000       = dbe->book1D("GenPt_3000", "GenPt_3000", 100, 0, 1500);
    //
    mGenEtaFirst      = dbe->book1D("GenEtaFirst", "GenEtaFirst", 100, -5, 5);
    mGenPhiFirst      = dbe->book1D("GenPhiFirst", "GenPhiFirst", 70, -3.5, 3.5);
    //
    mCaloMEx          = dbe->book1D("CaloMEx","CaloMEx",200,-150,150);
    mCaloMEx_3000     = dbe->book1D("CaloMEx_3000","CaloMEx_3000",100,-500,500);
    mCaloMEy          = dbe->book1D("CaloMEy","CaloMEy",200,-150,150);
    mCaloMEy_3000     = dbe->book1D("CaloMEy_3000","CaloMEy_3000",100,-500,500);
    mCaloMETSig       = dbe->book1D("CaloMETSig","CaloMETSig",100,0,15);
    mCaloMETSig_3000  = dbe->book1D("CaloMETSig_3000","CaloMETSig_3000",100,0,50);
    mCaloMET          = dbe->book1D("CaloMET","CaloMET",100,0,150);
    mCaloMET_3000     = dbe->book1D("CaloMET_3000","CaloMET_3000",100,0,1000);
    mCaloMETPhi       = dbe->book1D("CaloMETPhi","CaloMETPhi",70, -3.5, 3.5);
    mCaloSumET        = dbe->book1D("CaloSumET","CaloSumET",100,0,500);
    mCaloSumET_3000   = dbe->book1D("CaloSumET_3000","CaloSumET_3000",100,3000,8000);
    //
    mHadTiming        = dbe->book1D("HadTiming", "HadTiming", 75, -50, 100);
    mEmTiming         = dbe->book1D("EMTiming", "EMTiming", 75, -50, 100);
    //
    mNJetsEtaC        = dbe->book1D("NJetsEtaC_Pt10", "NJetsEtaC_Pt10", 15, 0, 15);
    mNJetsEtaF        = dbe->book1D("NJetsEtaF_Pt10", "NJetsEtaF_Pt10", 15, 0, 15);
    //
    mNJets1           = dbe->bookProfile("NJets1", "NJets1", 100, 0, 200,  100, 0, 50, "s");
    mNJets2           = dbe->bookProfile("NJets2", "NJets2", 100, 0, 4000, 100, 0, 50, "s");
    //
    mHBEne     = dbe->book1D( "HBEne",  "HBEne", 1000, -20, 100 );
    mHBTime    = dbe->book1D( "HBTime", "HBTime", 200, -200, 200 );
    mHEEne     = dbe->book1D( "HEEne",  "HEEne", 1000, -20, 100 );
    mHETime    = dbe->book1D( "HETime", "HETime", 200, -200, 200 );
    mHOEne     = dbe->book1D( "HOEne",  "HOEne", 1000, -20, 100 );
    mHOTime    = dbe->book1D( "HOTime", "HOTime", 200, -200, 200 );
    mHFEne     = dbe->book1D( "HFEne",  "HFEne", 1000, -20, 100 );
    mHFTime    = dbe->book1D( "HFTime", "HFTime", 200, -200, 200 );
    mEBEne     = dbe->book1D( "EBEne",  "EBEne", 1000, -20, 100 );
    mEBTime    = dbe->book1D( "EBTime", "EBTime", 200, -200, 200 );
    mEEEne     = dbe->book1D( "EEEne",  "EEEne", 1000, -20, 100 );
    mEETime    = dbe->book1D( "EETime", "EETime", 200, -200, 200 );
    //
    mPthat_80            = dbe->book1D("Pthat_80", "Pthat_80", 100, 40.0, 160.0); 
    mPthat_3000          = dbe->book1D("Pthat_3000", "Pthat_3000", 100, 2500.0, 4000.0); 
    //
    double log10PtMin = 0.5; //=3.1622766
    double log10PtMax = 3.75; //=5623.41325
    int log10PtBins = 26; 
    double etaMin = -5.;
    double etaMax = 5.;
    int etaBins = 50;

    double linPtMin = 5;
    double linPtMax = 155;
    int linPtBins = 15;

    int log10PtFineBins = 50;

    mAllGenJetsPt = dbe->book1D("GenJetLOGpT", "GenJet LOG(pT_gen)", 
                                log10PtBins, log10PtMin, log10PtMax);
    mMatchedGenJetsPt = dbe->book1D("MatchedGenJetLOGpT", "MatchedGenJet LOG(pT_gen)", 
                                    log10PtBins, log10PtMin, log10PtMax);
    mAllGenJetsEta = dbe->book2D("GenJetEta", "GenJet Eta vs LOG(pT_gen)", 
                                 log10PtBins, log10PtMin, log10PtMax, etaBins, etaMin, etaMax);
    mMatchedGenJetsEta = dbe->book2D("MatchedGenJetEta", "MatchedGenJet Eta vs LOG(pT_gen)", 
                                     log10PtBins, log10PtMin, log10PtMax, etaBins, etaMin, etaMax);
    //
    if (mTurnOnEverything.compare("yes")==0) {
      mHadEnergyProfile = dbe->bookProfile2D("HadEnergyProfile", "HadEnergyProfile", 82, -41, 41, 73, 0, 73, 100, 0, 10000, "s");
      mEmEnergyProfile  = dbe->bookProfile2D("EmEnergyProfile", "EmEnergyProfile", 82, -41, 41, 73, 0, 73, 100, 0, 10000, "s");
    }
    mJetEnergyProfile = dbe->bookProfile2D("JetEnergyProfile", "JetEnergyProfile", 50, -5, 5, 36, -3.1415987, 3.1415987, 100, 0, 10000, "s");
    //    mHadJetEnergyProfile = dbe->bookProfile2D("HadJetEnergyProfile", "HadJetEnergyProfile", 50, -5, 5, 36, -3.1415987, 3.1415987, 100, 0, 10000, "s");
    //    mEMJetEnergyProfile = dbe->bookProfile2D("EMJetEnergyProfile", "EMJetEnergyProfile", 50, -5, 5, 36, -3.1415987, 3.1415987, 100, 0, 10000, "s");
    //
    if (mTurnOnEverything.compare("yes")==0) {
    mGenJetMatchEnergyFraction  = dbe->book3D("GenJetMatchEnergyFraction", "GenJetMatchEnergyFraction vs LOG(pT_gen) vs eta", 
                                              log10PtBins, log10PtMin, log10PtMax, etaBins, etaMin, etaMax, 101, 0, 1.01);
    mReverseMatchEnergyFraction  = dbe->book3D("ReverseMatchEnergyFraction", "ReverseMatchEnergyFraction vs LOG(pT_gen) vs eta", 
                                               log10PtBins, log10PtMin, log10PtMax, etaBins, etaMin, etaMax, 101, 0, 1.01);
    mRMatch  = dbe->book3D("RMatch", "delta(R)(Gen-Calo) vs LOG(pT_gen) vs eta", 
                           log10PtBins, log10PtMin, log10PtMax, etaBins, etaMin, etaMax, 60, 0, 3);
    mDeltaEta = dbe->book3D("DeltaEta", "DeltaEta vs LOG(pT_gen) vs eta", 
                              log10PtBins, log10PtMin, log10PtMax, etaBins, etaMin, etaMax, 100, -1, 1);
    mDeltaPhi = dbe->book3D("DeltaPhi", "DeltaPhi vs LOG(pT_gen) vs eta", 
                              log10PtBins, log10PtMin, log10PtMax, etaBins, etaMin, etaMax, 100, -1, 1);
    mEScale = dbe->book3D("EScale", "EnergyScale vs LOG(pT_gen) vs eta", 
                            log10PtBins, log10PtMin, log10PtMax, etaBins, etaMin, etaMax, 100, 0, 2);
    mlinEScale = dbe->book3D("linEScale", "EnergyScale vs LOG(pT_gen) vs eta", 
                            linPtBins, linPtMin, linPtMax, etaBins, etaMin, etaMax, 100, 0, 2);
    mDeltaE = dbe->book3D("DeltaE", "DeltaE vs LOG(pT_gen) vs eta", 
                            log10PtBins, log10PtMin, log10PtMax, etaBins, etaMin, etaMax, 2000, -200, 200);
    //
    mEScale_pt10 = dbe->book3D("EScale_pt10", "EnergyScale vs LOG(pT_gen) vs eta", 
                            log10PtBins, log10PtMin, log10PtMax, etaBins, etaMin, etaMax, 100, 0, 2);
    mEScaleFineBin = dbe->book3D("EScaleFineBins", "EnergyScale vs LOG(pT_gen) vs eta", 
                            log10PtFineBins, log10PtMin, log10PtMax, etaBins, etaMin, etaMax, 100, 0, 2);
    }

    mpTScaleB_s = dbe->bookProfile("pTScaleB_s", "pTScale_s_0<|eta|<1.3",
                                    log10PtBins, log10PtMin, log10PtMax, 0, 2, "s");
    mpTScaleE_s = dbe->bookProfile("pTScaleE_s", "pTScale_s_1.3<|eta|<3.0",
                                    log10PtBins, log10PtMin, log10PtMax, 0, 2, "s");
    mpTScaleF_s = dbe->bookProfile("pTScaleF_s", "pTScale_s_3.0<|eta|<5.0",
                                    log10PtBins, log10PtMin, log10PtMax, 0, 2, "s");
    mpTScaleB_d = dbe->bookProfile("pTScaleB_d", "pTScale_d_0<|eta|<1.3",
                                   log10PtBins, log10PtMin, log10PtMax, 0, 2, " ");
    mpTScaleE_d = dbe->bookProfile("pTScaleE_d", "pTScale_d_1.3<|eta|<3.0",
                                   log10PtBins, log10PtMin, log10PtMax, 0, 2, " ");
    mpTScaleF_d = dbe->bookProfile("pTScaleF_d", "pTScale_d_3.0<|eta|<5.0",
                                   log10PtBins, log10PtMin, log10PtMax, 0, 2, " ");

    mpTScale_60_120_s    = dbe->bookProfile("pTScale_60_120_s", "pTScale_s_60<pT<120",
                                          etaBins, etaMin, etaMax, 0., 2., "s");
    mpTScale_200_300_s   = dbe->bookProfile("pTScale_200_300_s", "pTScale_s_200<pT<300",
                                          etaBins, etaMin, etaMax, 0., 2., "s");
    mpTScale_600_900_s   = dbe->bookProfile("pTScale_600_900_s", "pTScale_s_600<pT<900",
                                          etaBins, etaMin, etaMax, 0., 2., "s");
    mpTScale_2700_3500_s = dbe->bookProfile("pTScale_2700_3500_s", "pTScale_s_2700<pt<3500",
                                          etaBins, etaMin, etaMax, 0., 2., "s");
    mpTScale_60_120_d    = dbe->bookProfile("pTScale_60_120_d", "pTScale_d_60<pT<120",
                                          etaBins, etaMin, etaMax, 0., 2., " ");
    mpTScale_200_300_d   = dbe->bookProfile("pTScale_200_300_d", "pTScale_d_200<pT<300",
                                          etaBins, etaMin, etaMax, 0., 2., " ");
    mpTScale_600_900_d   = dbe->bookProfile("pTScale_600_900_d", "pTScale_d_600<pT<900",
                                          etaBins, etaMin, etaMax, 0., 2., " ");
    mpTScale_2700_3500_d = dbe->bookProfile("pTScale_2700_3500_d", "pTScale_d_2700<pt<3500",
                                          etaBins, etaMin, etaMax, 0., 2., " ");

    mpTScale1DB_60_120 = dbe->book1D("pTScale1DB_60_120", "pTScale_distribution_for_0<|eta|<1.3_60_120",
                                   100, 0, 2);
    mpTScale1DE_60_120 = dbe->book1D("pTScale1DE_60_120", "pTScale_distribution_for_1.3<|eta|<3.0_60_120",
                                   100, 0, 2);
    mpTScale1DF_60_120 = dbe->book1D("pTScale1DF_60_120", "pTScale_distribution_for_3.0<|eta|<5.0_60_120",
                                   100, 0, 2);

    mpTScale1DB_200_300 = dbe->book1D("pTScale1DB_200_300", "pTScale_distribution_for_0<|eta|<1.3_200_300",
                                   100, 0, 2);
    mpTScale1DE_200_300 = dbe->book1D("pTScale1DE_200_300", "pTScale_distribution_for_1.3<|eta|<3.0_200_300",
                                   100, 0, 2);
    mpTScale1DF_200_300 = dbe->book1D("pTScale1DF_200_300", "pTScale_distribution_for_3.0<|eta|<5.0_200_300",
                                   100, 0, 2);

    mpTScale1DB_600_900 = dbe->book1D("pTScale1DB_600_900", "pTScale_distribution_for_0<|eta|<1.3_600_900",
                                   100, 0, 2);
    mpTScale1DE_600_900 = dbe->book1D("pTScale1DE_600_900", "pTScale_distribution_for_1.3<|eta|<3.0_600_900",
                                   100, 0, 2);
    mpTScale1DF_600_900 = dbe->book1D("pTScale1DF_600_900", "pTScale_distribution_for_3.0<|eta|<5.0_600_900",
                                   100, 0, 2);

    mpTScale1DB_2700_3500 = dbe->book1D("pTScale1DB_2700_3500", "pTScale_distribution_for_0<|eta|<1.3_2700_3500",
                                   100, 0, 2);
    mpTScale1DE_2700_3500 = dbe->book1D("pTScale1DE_2700_3500", "pTScale_distribution_for_1.3<|eta|<3.0_2700_3500",
                                   100, 0, 2);
    mpTScale1DF_2700_3500 = dbe->book1D("pTScale1DF_2700_3500", "pTScale_distribution_for_3.0<|eta|<5.0_2700_3500",
                                   100, 0, 2);

    mpTScale1D_60_120    = dbe->book1D("pTScale1D_60_120", "pTScale_distribution_for_60<pT<120",
                                            100, 0, 2);
    mpTScale1D_200_300    = dbe->book1D("pTScale1D_200_300", "pTScale_distribution_for_200<pT<300",
                                            100, 0, 2);
    mpTScale1D_600_900    = dbe->book1D("pTScale1D_600_900", "pTScale_distribution_for_600<pT<900",
                                            100, 0, 2);
    mpTScale1D_2700_3500 = dbe->book1D("pTScale1D_2700_3500", "pTScale_distribution_for_2700<pt<3500",
                                            100, 0, 2);

  }

  if (mOutputFile.empty ()) {
    LogInfo("OutputInfo") << " PFJet histograms will NOT be saved";
  } 
  else {
    LogInfo("OutputInfo") << " PFJethistograms will be saved to file:" << mOutputFile;
  }
}
PFJetTester::~PFJetTester ( )

Definition at line 382 of file PFJetTester.cc.

{
}

Member Function Documentation

void PFJetTester::analyze ( const edm::Event mEvent,
const edm::EventSetup mSetup 
) [virtual]

Implements edm::EDAnalyzer.

Definition at line 394 of file PFJetTester.cc.

References ExpressReco_HICollisions_FallBack::caloTowers, deltaR(), reco::LeafCandidate::eta(), MonitorElement::Fill(), fillMatchHists(), edm::Event::getByLabel(), edm::Event::getManyByType(), HcalBarrel, HcalEndcap, HcalForward, HcalOuter, i, edm::HandleBase::isValid(), j, metsig::jet, edm::InputTag::label(), mAllGenJetsEta, mAllGenJetsPt, mCaloMET, mCaloMET_3000, mCaloMETPhi, mCaloMETSig, mCaloMETSig_3000, mCaloMEx, mCaloMEx_3000, mCaloMEy, mCaloMEy_3000, mCaloSumET, mCaloSumET_3000, mChargedEmEnergy_3000, mChargedEmEnergy_80, mChargedEmEnergyFraction, mChargedHadronEnergy_3000, mChargedHadronEnergy_80, mChargedHadronEnergyFraction, mConstituents, mConstituents_80, mE, mE_3000, mE_80, mEBEne, mEBTime, mEEEne, mEETime, mEFirst, mEFirst_3000, mEFirst_80, mEmEnergyProfile, mEmTiming, mEta, mEtaFineBin, mEtaFineBin1m, mEtaFineBin1p, mEtaFineBin2m, mEtaFineBin2p, mEtaFineBin3m, mEtaFineBin3p, mEtaFirst, reco::MET::mEtSig(), mGenEta, mGenEtaFirst, mGenPhi, mGenPhiFirst, mGenPt, mGenPt_3000, mGenPt_80, mHadEnergyProfile, mHadTiming, mHBEne, mHBTime, mHEEne, mHETime, mHFEne, mHFTime, mHOEne, mHOTime, mInputCollection, mInputGenCollection, mJetEnergyProfile, mMass, mMass_3000, mMass_80, mMatchGenPtThreshold, mMjj, mMjj_3000, mNeutralEmEnergy_3000, mNeutralEmEnergy_80, mNeutralEmEnergyFraction, mNeutralHadronEnergy_3000, mNeutralHadronEnergy_80, mNeutralHadronEnergyFraction, mNJets1, mNJets2, mNJetsEtaC, mNJetsEtaF, mP, mP_3000, mP_80, mPhi, mPhiFineBin, mPhiFirst, mPt, mPt_3000, mPt_80, mPtFirst, mPtFirst_3000, mPtFirst_80, mPthat_3000, mPthat_80, mRMatch, mRThreshold, mTurnOnEverything, njet, numberofevents, python::pfJets_cff::pfJets, reco::LeafCandidate::phi(), edm::Handle< T >::product(), reco::LeafCandidate::pt(), reco::LeafCandidate::px(), reco::LeafCandidate::py(), and reco::MET::sumEt().

{
  double countsfornumberofevents = 1;
  numberofevents->Fill(countsfornumberofevents);
  // *********************************
  // *** Get pThat
  // *********************************

  edm::Handle<HepMCProduct> evt;
  mEvent.getByLabel("generator", evt);
  if (evt.isValid()) {
  HepMC::GenEvent * myGenEvent = new HepMC::GenEvent(*(evt->GetEvent()));
  
  double pthat = myGenEvent->event_scale();

  mPthat_80->Fill(pthat);
  mPthat_3000->Fill(pthat);

  delete myGenEvent; 
  }

  // ***********************************
  // *** Get CaloMET
  // ***********************************

  const CaloMET *calomet;
  edm::Handle<CaloMETCollection> calo;
  mEvent.getByLabel("met", calo);
  if (!calo.isValid()) {
    edm::LogInfo("OutputInfo") << " failed to retrieve data required by MET Task";
    edm::LogInfo("OutputInfo") << " MET Task cannot continue...!";
  } else {
    const CaloMETCollection *calometcol = calo.product();
    calomet = &(calometcol->front());
    
    double caloSumET = calomet->sumEt();
    double caloMETSig = calomet->mEtSig();
    double caloMET = calomet->pt();
    double caloMEx = calomet->px();
    double caloMEy = calomet->py();
    double caloMETPhi = calomet->phi();

    mCaloMEx->Fill(caloMEx);
    mCaloMEx_3000->Fill(caloMEx);
    mCaloMEy->Fill(caloMEy);
    mCaloMEy_3000->Fill(caloMEy);
    mCaloMET->Fill(caloMET);
    mCaloMET_3000->Fill(caloMET);
    mCaloMETPhi->Fill(caloMETPhi);
    mCaloSumET->Fill(caloSumET);
    mCaloSumET_3000->Fill(caloSumET);
    mCaloMETSig->Fill(caloMETSig);
    mCaloMETSig_3000->Fill(caloMETSig);
  }

  // ***********************************
  // *** Get the CaloTower collection
  // ***********************************
  Handle<CaloTowerCollection> caloTowers;
  mEvent.getByLabel( "towerMaker", caloTowers );
  if (caloTowers.isValid()) {
  for( CaloTowerCollection::const_iterator cal = caloTowers->begin(); cal != caloTowers->end(); ++ cal ){

    //To compensate for the index
    if (mTurnOnEverything.compare("yes")==0) {
      if (cal->ieta() >> 0 ){mHadEnergyProfile->Fill (cal->ieta()-1, cal->iphi(), cal->hadEnergy());
      mEmEnergyProfile->Fill (cal->ieta()-1, cal->iphi(), cal->emEnergy());}
      mHadEnergyProfile->Fill (cal->ieta(), cal->iphi(), cal->hadEnergy());
      mEmEnergyProfile->Fill (cal->ieta(), cal->iphi(), cal->emEnergy());
    }

    mHadTiming->Fill (cal->hcalTime());
    mEmTiming->Fill (cal->ecalTime());    
  }
  }  

  // ***********************************
  // *** Get the RecHits collection
  // ***********************************
  try {
    std::vector<edm::Handle<HBHERecHitCollection> > colls;
    mEvent.getManyByType(colls);
    std::vector<edm::Handle<HBHERecHitCollection> >::iterator i;
    for (i=colls.begin(); i!=colls.end(); i++) {
      for (HBHERecHitCollection::const_iterator j=(*i)->begin(); j!=(*i)->end(); j++) {
        //      std::cout << *j << std::endl;
        if (j->id().subdet() == HcalBarrel) {
          mHBEne->Fill(j->energy()); 
          mHBTime->Fill(j->time()); 
        }
        if (j->id().subdet() == HcalEndcap) {
          mHEEne->Fill(j->energy()); 
          mHETime->Fill(j->time()); 
        }

      }
    }
  } catch (...) {
    edm::LogInfo("OutputInfo") << " No HB/HE RecHits.";
  }

  try {
    std::vector<edm::Handle<HFRecHitCollection> > colls;
    mEvent.getManyByType(colls);
    std::vector<edm::Handle<HFRecHitCollection> >::iterator i;
    for (i=colls.begin(); i!=colls.end(); i++) {
      for (HFRecHitCollection::const_iterator j=(*i)->begin(); j!=(*i)->end(); j++) {
        //      std::cout << *j << std::endl;
        if (j->id().subdet() == HcalForward) {
          mHFEne->Fill(j->energy()); 
          mHFTime->Fill(j->time()); 
        }
      }
    }
  } catch (...) {
    edm::LogInfo("OutputInfo") << " No HF RecHits.";
  }

  try {
    std::vector<edm::Handle<HORecHitCollection> > colls;
    mEvent.getManyByType(colls);
    std::vector<edm::Handle<HORecHitCollection> >::iterator i;
    for (i=colls.begin(); i!=colls.end(); i++) {
      for (HORecHitCollection::const_iterator j=(*i)->begin(); j!=(*i)->end(); j++) {
        if (j->id().subdet() == HcalOuter) {
          mHOEne->Fill(j->energy()); 
          mHOTime->Fill(j->time()); 
        }
      }
    }
  } catch (...) {
    edm::LogInfo("OutputInfo") << " No HO RecHits.";
  }
  try {
    std::vector<edm::Handle<EBRecHitCollection> > colls;
    mEvent.getManyByType(colls);
    std::vector<edm::Handle<EBRecHitCollection> >::iterator i;
    for (i=colls.begin(); i!=colls.end(); i++) {
      for (EBRecHitCollection::const_iterator j=(*i)->begin(); j!=(*i)->end(); j++) {
        //      if (j->id() == EcalBarrel) {
        mEBEne->Fill(j->energy()); 
        mEBTime->Fill(j->time()); 
        //    }
        //      std::cout << *j << std::endl;
        //      std::cout << j->id() << std::endl;
      }
    }
  } catch (...) {
    edm::LogInfo("OutputInfo") << " No EB RecHits.";
  }

  try {
    std::vector<edm::Handle<EERecHitCollection> > colls;
    mEvent.getManyByType(colls);
    std::vector<edm::Handle<EERecHitCollection> >::iterator i;
    for (i=colls.begin(); i!=colls.end(); i++) {
      for (EERecHitCollection::const_iterator j=(*i)->begin(); j!=(*i)->end(); j++) {
        //      if (j->id().subdet() == EcalEndcap) {
        mEEEne->Fill(j->energy()); 
        mEETime->Fill(j->time()); 
        //    }
        //      std::cout << *j << std::endl;
      }
    }
  } catch (...) {
    edm::LogInfo("OutputInfo") << " No EE RecHits.";
  }


  //***********************************
  //*** Get the Jet collection
  //***********************************
  math::XYZTLorentzVector p4tmp[2];
  Handle<PFJetCollection> pfJets;
  mEvent.getByLabel(mInputCollection, pfJets);
  if (!pfJets.isValid()) return;
  PFJetCollection::const_iterator jet = pfJets->begin ();
  int jetIndex = 0;
  int nJet = 0;
  int nJetF = 0;
  int nJetC = 0;
  for (; jet != pfJets->end (); jet++, jetIndex++) {
    if (mEta) mEta->Fill (jet->eta());

    if (jet->pt() > 10.) {
      if (fabs(jet->eta()) > 1.3) 
        nJetF++;
      else 
        nJetC++;          
    }
    if (jet->pt() > 10.) {
      if (mEtaFineBin) mEtaFineBin->Fill (jet->eta());
      if (mEtaFineBin1p) mEtaFineBin1p->Fill (jet->eta());
      if (mEtaFineBin2p) mEtaFineBin2p->Fill (jet->eta());
      if (mEtaFineBin3p) mEtaFineBin3p->Fill (jet->eta());
      if (mEtaFineBin1m) mEtaFineBin1m->Fill (jet->eta());
      if (mEtaFineBin2m) mEtaFineBin2m->Fill (jet->eta());
      if (mEtaFineBin3m) mEtaFineBin3m->Fill (jet->eta());
      if (mPhiFineBin) mPhiFineBin->Fill (jet->phi());
    }
    if (mPhi) mPhi->Fill (jet->phi());
    if (mE) mE->Fill (jet->energy());
    if (mE_80) mE_80->Fill (jet->energy());
    if (mE_3000) mE_3000->Fill (jet->energy());
    if (mP) mP->Fill (jet->p());
    if (mP_80) mP_80->Fill (jet->p());
    if (mP_3000) mP_3000->Fill (jet->p());
    if (mPt) mPt->Fill (jet->pt());
    if (mPt_80) mPt_80->Fill (jet->pt());
    if (mPt_3000) mPt_3000->Fill (jet->pt());
    if (mMass) mMass->Fill (jet->mass());
    if (mMass_80) mMass_80->Fill (jet->mass());
    if (mMass_3000) mMass_3000->Fill (jet->mass());
    if (mConstituents) mConstituents->Fill (jet->nConstituents());
    if (mConstituents_80) mConstituents_80->Fill (jet->nConstituents());
    if (jet == pfJets->begin ()) { // first jet
      if (mEtaFirst) mEtaFirst->Fill (jet->eta());
      if (mPhiFirst) mPhiFirst->Fill (jet->phi());
      if (mEFirst) mEFirst->Fill (jet->energy());
      if (mEFirst_80) mEFirst_80->Fill (jet->energy());
      if (mEFirst_3000) mEFirst_3000->Fill (jet->energy());
      if (mPtFirst) mPtFirst->Fill (jet->pt());
      if (mPtFirst_80) mPtFirst_80->Fill (jet->pt());
      if (mPtFirst_3000) mPtFirst_3000->Fill (jet->pt());
    }
    if (jetIndex == 0) {
      nJet++;
      p4tmp[0] = jet->p4();     
    }
    if (jetIndex == 1) {
      nJet++;
      p4tmp[1] = jet->p4();     
    }

    //    if (mMaxEInEmTowers) mMaxEInEmTowers->Fill (jet->maxEInEmTowers());
    //    if (mMaxEInHadTowers) mMaxEInHadTowers->Fill (jet->maxEInHadTowers());
    //    if (mHadEnergyInHO) mHadEnergyInHO->Fill (jet->hadEnergyInHO());
    //    if (mHadEnergyInHO_80)   mHadEnergyInHO_80->Fill (jet->hadEnergyInHO());
    //    if (mHadEnergyInHO_3000) mHadEnergyInHO_3000->Fill (jet->hadEnergyInHO());
    //    if (mHadEnergyInHB) mHadEnergyInHB->Fill (jet->hadEnergyInHB());
    //    if (mHadEnergyInHB_80)   mHadEnergyInHB_80->Fill (jet->hadEnergyInHB());
    //    if (mHadEnergyInHB_3000) mHadEnergyInHB_3000->Fill (jet->hadEnergyInHB());
    //    if (mHadEnergyInHF) mHadEnergyInHF->Fill (jet->hadEnergyInHF());
    //    if (mHadEnergyInHE) mHadEnergyInHE->Fill (jet->hadEnergyInHE());
    //    if (mHadEnergyInHE_80)   mHadEnergyInHE_80->Fill (jet->hadEnergyInHE());
    //    if (mHadEnergyInHE_3000) mHadEnergyInHE_3000->Fill (jet->hadEnergyInHE());
    //    if (mEmEnergyInEB) mEmEnergyInEB->Fill (jet->emEnergyInEB());
    //    if (mEmEnergyInEB_80)   mEmEnergyInEB_80->Fill (jet->emEnergyInEB());
    //    if (mEmEnergyInEB_3000) mEmEnergyInEB_3000->Fill (jet->emEnergyInEB());
    //    if (mEmEnergyInEE) mEmEnergyInEE->Fill (jet->emEnergyInEE());
    //    if (mEmEnergyInEE_80)   mEmEnergyInEE_80->Fill (jet->emEnergyInEE());
    //    if (mEmEnergyInEE_3000) mEmEnergyInEE_3000->Fill (jet->emEnergyInEE());
    //    if (mEmEnergyInHF) mEmEnergyInHF->Fill (jet->emEnergyInHF());
    //    if (mEnergyFractionHadronic) mEnergyFractionHadronic->Fill (jet->energyFractionHadronic());
    //    if (mEnergyFractionEm) mEnergyFractionEm->Fill (jet->emEnergyFraction());
    //
    //    if (mHFTotal)      mHFTotal->Fill (jet->hadEnergyInHF()+jet->emEnergyInHF());
    //    if (mHFTotal_80)   mHFTotal_80->Fill (jet->hadEnergyInHF()+jet->emEnergyInHF());
    //    if (mHFTotal_3000) mHFTotal_3000->Fill (jet->hadEnergyInHF()+jet->emEnergyInHF());
    //    if (mHFLong)       mHFLong->Fill (jet->hadEnergyInHF()*0.5+jet->emEnergyInHF());
    //    if (mHFLong_80)    mHFLong_80->Fill (jet->hadEnergyInHF()*0.5+jet->emEnergyInHF());
    //    if (mHFLong_3000)  mHFLong_3000->Fill (jet->hadEnergyInHF()*0.5+jet->emEnergyInHF());
    //    if (mHFShort)      mHFShort->Fill (jet->hadEnergyInHF()*0.5);
    //    if (mHFShort_80)   mHFShort_80->Fill (jet->hadEnergyInHF()*0.5);
    //    if (mHFShort_3000) mHFShort_3000->Fill (jet->hadEnergyInHF()*0.5);

    if (mChargedEmEnergy_80) mChargedEmEnergy_80->Fill (jet->chargedEmEnergy());
    if (mChargedHadronEnergy_80) mChargedHadronEnergy_80->Fill (jet->chargedHadronEnergy());
    if (mNeutralEmEnergy_80) mNeutralEmEnergy_80->Fill (jet->neutralEmEnergy());
    if (mNeutralHadronEnergy_80) mNeutralHadronEnergy_80->Fill (jet->neutralHadronEnergy());

    if (mChargedEmEnergy_3000) mChargedEmEnergy_3000->Fill (jet->chargedEmEnergy());
    if (mChargedHadronEnergy_3000) mChargedHadronEnergy_3000->Fill (jet->chargedHadronEnergy());
    if (mNeutralEmEnergy_3000) mNeutralEmEnergy_3000->Fill (jet->neutralEmEnergy());
    if (mNeutralHadronEnergy_3000) mNeutralHadronEnergy_3000->Fill (jet->neutralHadronEnergy());

    if (mChargedEmEnergyFraction) mChargedEmEnergyFraction->Fill (jet->chargedEmEnergyFraction());
    if (mChargedHadronEnergyFraction) mChargedHadronEnergyFraction->Fill (jet->chargedHadronEnergyFraction());
    if (mNeutralEmEnergyFraction) mNeutralEmEnergyFraction->Fill (jet->neutralEmEnergyFraction());
    if (mNeutralHadronEnergyFraction) mNeutralHadronEnergyFraction->Fill (jet->neutralHadronEnergyFraction());

    //    if (mN90) mN90->Fill (jet->n90());
    mJetEnergyProfile->Fill (jet->eta(), jet->phi(), jet->energy());
    //    mHadJetEnergyProfile->Fill (jet->eta(), jet->phi(), jet->hadEnergyInHO()+jet->hadEnergyInHB()+jet->hadEnergyInHF()+jet->hadEnergyInHE());
    //    mEMJetEnergyProfile->Fill (jet->eta(), jet->phi(), jet->emEnergyInEB()+jet->emEnergyInEE()+jet->emEnergyInHF());
  }




  if (mNJetsEtaC) mNJetsEtaC->Fill( nJetC );
  if (mNJetsEtaF) mNJetsEtaF->Fill( nJetF );

  if (nJet == 2) {
    if (mMjj) mMjj->Fill( (p4tmp[0]+p4tmp[1]).mass() );
    if (mMjj_3000) mMjj_3000->Fill( (p4tmp[0]+p4tmp[1]).mass() );
  }

  // Count Jets above Pt cut
  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (200./100.));

    for ( PFJetCollection::const_iterator cal = pfJets->begin(); cal != pfJets->end(); ++ cal ) {
      if ( cal->pt() > ptStep ) njet++;
    }
    mNJets1->Fill( ptStep, njet );
  }

  for (int istep = 0; istep < 100; ++istep) {
    int     njet = 0;
    float ptStep = (istep * (4000./100.));
    for ( PFJetCollection::const_iterator cal = pfJets->begin(); cal != pfJets->end(); ++ cal ) {
      if ( cal->pt() > ptStep ) njet++;
    }
    mNJets2->Fill( ptStep, njet );
  }

  // Gen jet analysis
  Handle<GenJetCollection> genJets;
  mEvent.getByLabel(mInputGenCollection, genJets);
  if (!genJets.isValid()) return;
  GenJetCollection::const_iterator gjet = genJets->begin ();
  int gjetIndex = 0;
  for (; gjet != genJets->end (); gjet++, gjetIndex++) {
    if (mGenEta) mGenEta->Fill (gjet->eta());
    if (mGenPhi) mGenPhi->Fill (gjet->phi());
    if (mGenPt) mGenPt->Fill (gjet->pt());
    if (mGenPt_80) mGenPt_80->Fill (gjet->pt());
    if (mGenPt_3000) mGenPt_3000->Fill (gjet->pt());
    if (gjet == genJets->begin ()) { // first jet
      if (mGenEtaFirst) mGenEtaFirst->Fill (gjet->eta());
      if (mGenPhiFirst) mGenPhiFirst->Fill (gjet->phi());
    }
  }


  // now match PFJets to GenJets
  JetMatchingTools jetMatching (mEvent);
  if (!(mInputGenCollection.label().empty())) {
    //    Handle<GenJetCollection> genJets;
    //    mEvent.getByLabel(mInputGenCollection, genJets);

    std::vector <std::vector <const reco::GenParticle*> > genJetConstituents (genJets->size());
    std::vector <std::vector <const reco::GenParticle*> > pfJetConstituents (pfJets->size());
    /*
    if (mRThreshold > 0) { 
    }
    else {
      for (unsigned iGenJet = 0; iGenJet < genJets->size(); ++iGenJet) {
        genJetConstituents [iGenJet] = jetMatching.getGenParticles ((*genJets) [iGenJet]);
      }
      
      for (unsigned iPFJet = 0; iPFJet < pfJets->size(); ++iPFJet) {
        pfJetConstituents [iPFJet] = jetMatching.getGenParticles ((*pfJets) [iPFJet], false);
      }
    }
    */
    
    for (unsigned iGenJet = 0; iGenJet < genJets->size(); ++iGenJet) {               //****************************************************************
    //for (unsigned iGenJet = 0; iGenJet < 1; ++iGenJet) {                           // only FIRST Jet !!!!
      const GenJet& genJet = (*genJets) [iGenJet];
      double genJetPt = genJet.pt();

      //std::cout << iGenJet <<". Genjet: pT = " << genJetPt << "GeV" << std::endl;  //  *****************************************************

      if (fabs(genJet.eta()) > 5.) continue; // out of detector 
      if (genJetPt < mMatchGenPtThreshold) continue; // no low momentum 
      double logPtGen = log10 (genJetPt);
      mAllGenJetsPt->Fill (logPtGen);
      mAllGenJetsEta->Fill (logPtGen, genJet.eta());
      if (pfJets->size() <= 0) continue; // no PFJets - nothing to match
      if (mRThreshold > 0) {
        unsigned iPFJetBest = 0;
        double deltaRBest = 999.;
        for (unsigned iPFJet = 0; iPFJet < pfJets->size(); ++iPFJet) {
          double dR = deltaR (genJet.eta(), genJet.phi(), (*pfJets) [iPFJet].eta(), (*pfJets) [iPFJet].phi());
          if (deltaRBest < mRThreshold && dR < mRThreshold && genJet.pt() > 5.) {
            /*
            std::cout << "Yet another matched jet for GenJet pt=" << genJet.pt()
                      << " previous PFJet pt/dr: " << (*pfJets) [iPFJetBest].pt() << '/' << deltaRBest
                      << " new PFJet pt/dr: " << (*pfJets) [iPFJet].pt() << '/' << dR
                      << std::endl;
            */
          }
          if (dR < deltaRBest) {
            iPFJetBest = iPFJet;
            deltaRBest = dR;
          }
        }
        if (mTurnOnEverything.compare("yes")==0) {
          mRMatch->Fill (logPtGen, genJet.eta(), deltaRBest);
        }
        if (deltaRBest < mRThreshold) { // Matched
          fillMatchHists (genJet, (*pfJets) [iPFJetBest]);
        }
      }
      /*
      else {
        unsigned iPFJetBest = 0;
        double energyFractionBest = 0.;
        for (unsigned iPFJet = 0; iPFJet < pfJets->size(); ++iPFJet) {
          double energyFraction = jetMatching.overlapEnergyFraction (genJetConstituents [iGenJet], 
                                                                     pfJetConstituents [iPFJet]);
          if (energyFraction > energyFractionBest) {
            iPFJetBest = iPFJet;
            energyFractionBest = energyFraction;
          }
        }
        if (mTurnOnEverything.compare("yes")==0) {
          mGenJetMatchEnergyFraction->Fill (logPtGen, genJet.eta(), energyFractionBest);
        }
        if (energyFractionBest > mGenEnergyFractionThreshold) { // good enough
          double reverseEnergyFraction = jetMatching.overlapEnergyFraction (pfJetConstituents [iPFJetBest], 
                                                                            genJetConstituents [iGenJet]);
          if (mTurnOnEverything.compare("yes")==0) {
            mReverseMatchEnergyFraction->Fill (logPtGen, genJet.eta(), reverseEnergyFraction);
          }
          if (reverseEnergyFraction > mReverseEnergyFractionThreshold) { // Matched
            fillMatchHists (genJet, (*pfJets) [iPFJetBest]);
          }
        }
      }
      */
    }
  }
}
void PFJetTester::beginJob ( void  ) [virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 386 of file PFJetTester.cc.

                          {
}
void PFJetTester::endJob ( void  ) [virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 389 of file PFJetTester.cc.

References mOutputFile.

void PFJetTester::fillMatchHists ( const reco::GenJet fGenJet,
const reco::PFJet fPFJet 
) [private]

Definition at line 823 of file PFJetTester.cc.

References reco::LeafCandidate::energy(), reco::LeafCandidate::eta(), MonitorElement::Fill(), mDelEta, mDelPhi, mDelPt, mDeltaE, mDeltaEta, mDeltaPhi, mEScale, mEScale_pt10, mEScaleFineBin, mlinEScale, mMatchedGenJetsEta, mMatchedGenJetsPt, mpTScale1D_200_300, mpTScale1D_2700_3500, mpTScale1D_600_900, mpTScale1D_60_120, mpTScale1DB_200_300, mpTScale1DB_2700_3500, mpTScale1DB_600_900, mpTScale1DB_60_120, mpTScale1DE_200_300, mpTScale1DE_2700_3500, mpTScale1DE_600_900, mpTScale1DE_60_120, mpTScale1DF_200_300, mpTScale1DF_2700_3500, mpTScale1DF_600_900, mpTScale1DF_60_120, mpTScale_200_300_d, mpTScale_200_300_s, mpTScale_2700_3500_d, mpTScale_2700_3500_s, mpTScale_600_900_d, mpTScale_600_900_s, mpTScale_60_120_d, mpTScale_60_120_s, mpTScaleB_d, mpTScaleB_s, mpTScaleE_d, mpTScaleE_s, mpTScaleF_d, mpTScaleF_s, mTurnOnEverything, reco::LeafCandidate::phi(), and reco::LeafCandidate::pt().

Referenced by analyze().

                                                                                    {
  double logPtGen = log10 (fGenJet.pt());
  double PtGen = fGenJet.pt();
  double PtPF = fPFJet.pt();
  mMatchedGenJetsPt->Fill (logPtGen);
  mMatchedGenJetsEta->Fill (logPtGen, fGenJet.eta());

  double PtThreshold = 10.;

  if (mTurnOnEverything.compare("yes")==0) {
    mDeltaEta->Fill (logPtGen, fGenJet.eta(), fPFJet.eta()-fGenJet.eta());
    mDeltaPhi->Fill (logPtGen, fGenJet.eta(), fPFJet.phi()-fGenJet.phi());
    mEScale->Fill (logPtGen, fGenJet.eta(), fPFJet.energy()/fGenJet.energy());
    mlinEScale->Fill (fGenJet.pt(), fGenJet.eta(), fPFJet.energy()/fGenJet.energy());
    mDeltaE->Fill (logPtGen, fGenJet.eta(), fPFJet.energy()-fGenJet.energy());

    mEScaleFineBin->Fill (logPtGen, fGenJet.eta(), fPFJet.energy()/fGenJet.energy());
  
    if (fGenJet.pt()>PtThreshold) {
      mEScale_pt10->Fill (logPtGen, fGenJet.eta(), fPFJet.energy()/fGenJet.energy());

    }

  }
  if (fPFJet.pt() > PtThreshold) {
    mDelEta->Fill (fGenJet.eta()-fPFJet.eta());
    mDelPhi->Fill (fGenJet.phi()-fPFJet.phi());
    mDelPt->Fill  ((fGenJet.pt()-fPFJet.pt())/fGenJet.pt());
  }

  if (fabs(fGenJet.eta())<1.3) {

    mpTScaleB_s->Fill (log10(PtGen), PtPF/PtGen);
    mpTScaleB_d->Fill (log10(PtGen), PtPF/PtGen);
    if (PtGen>60.0 && PtGen<120.0) {
      mpTScale1DB_60_120->Fill (fPFJet.pt()/fGenJet.pt());
    }
    if (PtGen>200.0 && PtGen<300.0) {
      mpTScale1DB_200_300->Fill (fPFJet.pt()/fGenJet.pt());
    }
    if (PtGen>600.0 && PtGen<900.0) {
      mpTScale1DB_600_900->Fill (fPFJet.pt()/fGenJet.pt());
    }
    if (PtGen>2700.0 && PtGen<3500.0) {
      mpTScale1DB_2700_3500->Fill (fPFJet.pt()/fGenJet.pt());
    }
  }

  if (fabs(fGenJet.eta())>1.3 && fabs(fGenJet.eta())<3.0) {

    mpTScaleE_s->Fill (log10(PtGen), PtPF/PtGen);
    mpTScaleE_d->Fill (log10(PtGen), PtPF/PtGen);
    if (PtGen>60.0 && PtGen<120.0) {
      mpTScale1DE_60_120->Fill (fPFJet.pt()/fGenJet.pt());
    }
    if (PtGen>200.0 && PtGen<300.0) {
      mpTScale1DE_200_300->Fill (fPFJet.pt()/fGenJet.pt());
    }
    if (PtGen>600.0 && PtGen<900.0) {
      mpTScale1DE_600_900->Fill (fPFJet.pt()/fGenJet.pt());
    }
    if (PtGen>2700.0 && PtGen<3500.0) {
      mpTScale1DE_2700_3500->Fill (fPFJet.pt()/fGenJet.pt());
    }
  }

  if (fabs(fGenJet.eta())>3.0 && fabs(fGenJet.eta())<5.0) {

    mpTScaleF_s->Fill (log10(PtGen), PtPF/PtGen);
    mpTScaleF_d->Fill (log10(PtGen), PtPF/PtGen);
    if (PtGen>60.0 && PtGen<120.0) {
      mpTScale1DF_60_120->Fill (fPFJet.pt()/fGenJet.pt());
    }
    if (PtGen>200.0 && PtGen<300.0) {
      mpTScale1DF_200_300->Fill (fPFJet.pt()/fGenJet.pt());
    }
    if (PtGen>600.0 && PtGen<900.0) {
      mpTScale1DF_600_900->Fill (fPFJet.pt()/fGenJet.pt());
    }
    if (PtGen>2700.0 && PtGen<3500.0) {
      mpTScale1DF_2700_3500->Fill (fPFJet.pt()/fGenJet.pt());
    }
  }

  if (fGenJet.pt()>60.0 && fGenJet.pt()<120.0) {
    mpTScale_60_120_s->Fill (fGenJet.eta(),fPFJet.pt()/fGenJet.pt());
    mpTScale_60_120_d->Fill (fGenJet.eta(),fPFJet.pt()/fGenJet.pt());
    mpTScale1D_60_120->Fill (fPFJet.pt()/fGenJet.pt());
  }

  if (fGenJet.pt()>200.0 && fGenJet.pt()<300.0) {
    mpTScale_200_300_s->Fill (fGenJet.eta(),fPFJet.pt()/fGenJet.pt());
    mpTScale_200_300_d->Fill (fGenJet.eta(),fPFJet.pt()/fGenJet.pt());
    mpTScale1D_200_300->Fill (fPFJet.pt()/fGenJet.pt());
  }

  if (fGenJet.pt()>600.0 && fGenJet.pt()<900.0) {
    mpTScale_600_900_s->Fill (fGenJet.eta(),fPFJet.pt()/fGenJet.pt());
    mpTScale_600_900_d->Fill (fGenJet.eta(),fPFJet.pt()/fGenJet.pt());
    mpTScale1D_600_900->Fill (fPFJet.pt()/fGenJet.pt());
  }

  if (fGenJet.pt()>2700.0 && fGenJet.pt()<3500.0) {
    mpTScale_2700_3500_s->Fill (fGenJet.eta(),fPFJet.pt()/fGenJet.pt());
    mpTScale_2700_3500_d->Fill (fGenJet.eta(),fPFJet.pt()/fGenJet.pt());
    mpTScale1D_2700_3500->Fill (fPFJet.pt()/fGenJet.pt());
  }



}

Member Data Documentation

std::string PFJetTester::inputCaloMETLabel_ [private]

Definition at line 41 of file PFJetTester.h.

std::string PFJetTester::inputGenMETLabel_ [private]

Definition at line 40 of file PFJetTester.h.

Definition at line 38 of file PFJetTester.h.

Definition at line 161 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 159 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 234 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 235 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 236 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 239 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 240 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 230 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 231 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 232 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 233 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 237 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 238 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 101 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 96 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 106 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 102 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 97 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 107 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 69 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 71 of file PFJetTester.h.

Definition at line 70 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 209 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 210 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 211 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 170 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 166 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 167 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 57 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 59 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 58 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 251 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 252 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 253 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 254 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 78 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 80 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 79 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 224 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 73 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 168 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 172 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 173 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 47 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 48 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 52 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 49 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 53 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 50 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 54 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 51 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 76 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

std::string PFJetTester::METType_ [private]

Definition at line 39 of file PFJetTester.h.

Definition at line 215 of file PFJetTester.h.

Definition at line 148 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 155 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 163 of file PFJetTester.h.

Referenced by PFJetTester().

Definition at line 149 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 156 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 150 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 152 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 151 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 223 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 72 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 243 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 244 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 245 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 246 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 249 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 250 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 247 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 248 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 35 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 36 of file PFJetTester.h.

Referenced by analyze().

Definition at line 225 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 169 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 66 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 68 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 67 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 162 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 160 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 214 of file PFJetTester.h.

Referenced by analyze().

Definition at line 92 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 93 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 103 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 98 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 108 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 104 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 99 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 109 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 88 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 89 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 85 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 86 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

std::string PFJetTester::mOutputFile [private]

Definition at line 37 of file PFJetTester.h.

Referenced by endJob(), and PFJetTester().

Definition at line 60 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 62 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 61 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 55 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 56 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 77 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 63 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 65 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 64 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 81 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 83 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 82 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 145 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 144 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

Definition at line 205 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 207 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 206 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 204 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 195 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 201 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 198 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 192 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 196 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 202 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 199 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 193 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 197 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 203 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 200 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 194 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 188 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 183 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 190 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 185 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 189 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 184 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 187 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 182 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 178 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 175 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 179 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 176 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 180 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 177 of file PFJetTester.h.

Referenced by fillMatchHists(), and PFJetTester().

Definition at line 216 of file PFJetTester.h.

Definition at line 164 of file PFJetTester.h.

Referenced by PFJetTester().

Definition at line 165 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().

double PFJetTester::mRThreshold [private]

Definition at line 217 of file PFJetTester.h.

Referenced by analyze().

std::string PFJetTester::mTurnOnEverything [private]

Definition at line 220 of file PFJetTester.h.

Referenced by analyze(), fillMatchHists(), and PFJetTester().

Definition at line 44 of file PFJetTester.h.

Referenced by analyze(), and PFJetTester().