12 mInputCollection (iConfig.getParameter<
edm::
InputTag> (
"src")),
13 mInputGenCollection (iConfig.getParameter<
edm::
InputTag> (
"srcGen")),
14 mInputPFCandCollection (iConfig.getParameter<
edm::
InputTag> (
"PFcands")),
17 mOutputFile (iConfig.getUntrackedParameter<
std::
string>(
"OutputFile",
"")),
21 mRecoJetPtThreshold (iConfig.getParameter<double> (
"recoJetPtThreshold")),
22 mMatchGenPtThreshold (iConfig.getParameter<double> (
"matchGenPtThreshold")),
23 mGenEnergyFractionThreshold (iConfig.getParameter<double> (
"genEnergyFractionThreshold")),
24 mReverseEnergyFractionThreshold(iConfig.getParameter<double> (
"reverseEnergyFractionThreshold")),
25 mRThreshold (iConfig.getParameter<double> (
"RThreshold")),
26 JetCorrectionService (iConfig.getParameter<
std::
string> (
"JetCorrections"))
317 double log10PtMin = 0.50;
318 double log10PtMax = 3.75;
319 int log10PtBins = 26;
321 static const size_t ncms_hcal_edge_pseudorapidity = 82 + 1;
322 static const double cms_hcal_edge_pseudorapidity[ncms_hcal_edge_pseudorapidity] = {
323 -5.191, -4.889, -4.716, -4.538, -4.363, -4.191, -4.013,
324 -3.839, -3.664, -3.489, -3.314, -3.139, -2.964, -2.853,
325 -2.650, -2.500, -2.322, -2.172, -2.043, -1.930, -1.830,
326 -1.740, -1.653, -1.566, -1.479, -1.392, -1.305, -1.218,
327 -1.131, -1.044, -0.957, -0.879, -0.783, -0.696, -0.609,
328 -0.522, -0.435, -0.348, -0.261, -0.174, -0.087,
330 0.087, 0.174, 0.261, 0.348, 0.435, 0.522, 0.609,
331 0.696, 0.783, 0.879, 0.957, 1.044, 1.131, 1.218,
332 1.305, 1.392, 1.479, 1.566, 1.653, 1.740, 1.830,
333 1.930, 2.043, 2.172, 2.322, 2.500, 2.650, 2.853,
334 2.964, 3.139, 3.314, 3.489, 3.664, 3.839, 4.013,
335 4.191, 4.363, 4.538, 4.716, 4.889, 5.191
338 double etaRange[91] = {-6.0, -5.8, -5.6, -5.4, -5.2, -5.0, -4.8, -4.6, -4.4, -4.2,
339 -4.0, -3.8, -3.6, -3.4, -3.2, -3.0, -2.9, -2.8, -2.7, -2.6,
340 -2.5, -2.4, -2.3, -2.2, -2.1, -2.0, -1.9, -1.8, -1.7, -1.6,
341 -1.5, -1.4, -1.3, -1.2, -1.1, -1.0, -0.9, -0.8, -0.7, -0.6,
342 -0.5, -0.4, -0.3, -0.2, -0.1,
343 0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9,
344 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9,
345 2.0, 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 2.8, 2.9,
346 3.0, 3.2, 3.4, 3.6, 3.8, 4.0, 4.2, 4.4, 4.6, 4.8,
347 5.0, 5.2, 5.4, 5.6, 5.8, 6.0};
349 double edge_pseudorapidity[
etaBins_ +1] = {-5.191, -2.650, -2.043, -1.740, -1.479, -1.131, -0.783, -0.522, 0.522, 0.783, 1.131, 1.479, 1.740, 2.043, 2.650, 5.191 };
351 TH2F *h2D_etabins_vs_pt2 =
new TH2F(
"h2D_etabins_vs_pt2",
"etaBins (x axis), sum pt^{2} (y axis)",
etaBins_,edge_pseudorapidity,10000,0,10000);
352 TH2F *h2D_etabins_vs_pt =
new TH2F(
"h2D_etabins_vs_pt",
"etaBins (x axis), sum pt (y axis)",
etaBins_,edge_pseudorapidity,10000,-1000,1000);
353 TH2F *h2D_etabins_vs_phi =
new TH2F(
"h2D_etabins_vs_phi",
"candidate map, eta(x axis), phi (y axis), pt (z axis)",ncms_hcal_edge_pseudorapidity-1,cms_hcal_edge_pseudorapidity,36,-
TMath::Pi(),
TMath::Pi());
354 TH2F *h2D_pfcand_etabins_vs_pt =
new TH2F(
"h2D_etabins_vs_pt",
";#eta;sum p_{T}",
etaBins_,edge_pseudorapidity,300, 0, 300);
358 mNPFpart = ibooker.
book1D(
"NPFpart",
"No of particle flow candidates",1000,0,10000);
359 mPFPt = ibooker.
book1D(
"PFPt",
"PF candidate p_{T}",1000,-5000,5000);
360 mPFEta = ibooker.
book1D(
"PFEta",
"PF candidate #eta",120,-6,6);
361 mPFPhi = ibooker.
book1D(
"PFPhi",
"PF candidate #phi",70,-3.5,3.5);
362 mPFArea = ibooker.
book1D(
"PFArea",
"VS PF candidate area",100,0,4);
364 mSumPFPt = ibooker.
book1D(
"SumPFPt",
"Sum of initial PF p_{T}",1000,-10000,10000);
368 mSumPFPt_HF = ibooker.
book2D(
"SumPFPt_HF",
"HF energy (y axis) vs Sum initial PF p_{T} (x axis)",1000,-1000,1000,1000,0,10000);
428 mNCalopart = ibooker.
book1D(
"NCalopart",
"No of particle flow candidates",1000,0,10000);
429 mCaloPt = ibooker.
book1D(
"CaloPt",
"Calo candidate p_{T}",1000,-5000,5000);
430 mCaloEta = ibooker.
book1D(
"CaloEta",
"Calo candidate #eta",120,-6,6);
431 mCaloPhi = ibooker.
book1D(
"CaloPhi",
"Calo candidate #phi",70,-3.5,3.5);
432 mCaloArea = ibooker.
book1D(
"CaloArea",
"VS Calo candidate area",100,0,4);
434 mSumCaloPt = ibooker.
book1D(
"SumCaloPt",
"Sum Calo p_{T}",1000,-10000,10000);
436 mSumSquaredCaloPt = ibooker.
book1D(
"SumSquaredCaloPt",
"Sum of initial Calo tower p_{T} squared",10000,0,10000);
438 mSumCaloPt_HF = ibooker.
book2D(
"SumCaloPt_HF",
"HF Energy (y axis) vs Sum Calo tower p_{T}",1000,-1000,1000,1000,0,10000);
441 mSumCaloPt_n5p191_n2p650 = ibooker.
book1D(
"mSumCaloPt_n5p191_n2p650",
"Sum Calo tower pT variable in the eta range -5.191 to -2.650",1000,-5000,5000);
442 mSumCaloPt_n2p650_n2p043 = ibooker.
book1D(
"mSumCaloPt_n2p650_n2p043",
"Sum Calo tower pT variable in the eta range -2.650 to -2.043",1000,-5000,5000);
443 mSumCaloPt_n2p043_n1p740 = ibooker.
book1D(
"mSumCaloPt_n2p043_n1p740",
"Sum Calo tower pT variable in the eta range -2.043 to -1.740",1000,-1000,1000);
444 mSumCaloPt_n1p740_n1p479 = ibooker.
book1D(
"mSumCaloPt_n1p740_n1p479",
"Sum Calo tower pT variable in the eta range -1.740 to -1.479",1000,-1000,1000);
445 mSumCaloPt_n1p479_n1p131 = ibooker.
book1D(
"mSumCaloPt_n1p479_n1p131",
"Sum Calo tower pT variable in the eta range -1.479 to -1.131",1000,-1000,1000);
446 mSumCaloPt_n1p131_n0p783 = ibooker.
book1D(
"mSumCaloPt_n1p131_n0p783",
"Sum Calo tower pT variable in the eta range -1.131 to -0.783",1000,-1000,1000);
447 mSumCaloPt_n0p783_n0p522 = ibooker.
book1D(
"mSumCaloPt_n0p783_n0p522",
"Sum Calo tower pT variable in the eta range -0.783 to -0.522",1000,-1000,1000);
448 mSumCaloPt_n0p522_0p522 = ibooker.
book1D(
"mSumCaloPt_n0p522_0p522",
"Sum Calo tower pT variable in the eta range -0.522 to 0.522",1000,-1000,1000);
449 mSumCaloPt_0p522_0p783 = ibooker.
book1D(
"mSumCaloPt_0p522_0p783",
"Sum Calo tower pT variable in the eta range 0.522 to 0.783",1000,-1000,1000);
450 mSumCaloPt_0p783_1p131 = ibooker.
book1D(
"mSumCaloPt_0p783_1p131",
"Sum Calo tower pT variable in the eta range 0.783 to 1.131",1000,-1000,1000);
451 mSumCaloPt_1p131_1p479 = ibooker.
book1D(
"mSumCaloPt_1p131_1p479",
"Sum Calo tower pT variable in the eta range 1.131 to 1.479",1000,-1000,1000);
452 mSumCaloPt_1p479_1p740 = ibooker.
book1D(
"mSumCaloPt_1p479_1p740",
"Sum Calo tower pT variable in the eta range 1.479 to 1.740",1000,-1000,1000);
453 mSumCaloPt_1p740_2p043 = ibooker.
book1D(
"mSumCaloPt_1p740_2p043",
"Sum Calo tower pT variable in the eta range 1.740 to 2.043",1000,-1000,1000);
454 mSumCaloPt_2p043_2p650 = ibooker.
book1D(
"mSumCaloPt_2p043_2p650",
"Sum Calo tower pT variable in the eta range 2.043 to 2.650",1000,-5000,5000);
455 mSumCaloPt_2p650_5p191 = ibooker.
book1D(
"mSumCaloPt_2p650_5p191",
"Sum Calo tower pT variable in the eta range 2.650 to 5.191",1000,-5000,5000);
460 mSumpt = ibooker.
book1D(
"SumpT",
"Sum p_{T} of all the PF candidates per event",1000,0,10000);
463 mNvtx = ibooker.
book1D(
"Nvtx",
"number of vertices", 60, 0, 60);
464 mHF = ibooker.
book1D(
"HF",
"HF energy distribution",1000,0,10000);
468 mEta = ibooker.
book1D(
"Eta",
"Eta", 120, -6, 6);
469 mPhi = ibooker.
book1D(
"Phi",
"Phi", 70, -3.5, 3.5);
470 mPt = ibooker.
book1D(
"Pt",
"Pt", 100, 0, 1000);
471 mP = ibooker.
book1D(
"P",
"P", 100, 0, 1000);
473 mMass = ibooker.
book1D(
"Mass",
"Mass", 100, 0, 200);
477 mNJets_40 = ibooker.
book1D(
"NJets_pt_greater_40",
"NJets pT > 40 GeV", 50, 0, 100);
480 mGenEta = ibooker.
book1D(
"Gen Eta",
";gen jet #eta;counts",120,-6,6);
481 mGenPhi = ibooker.
book1D(
"Gen Phi",
";gen jet #phi;counts",70,-3.5,3.5);
482 mGenPt = ibooker.
book1D(
"Gen pT",
"gen jet p_{T}",250,0,1000);
483 mPtHat = ibooker.
book1D(
"pThat",
"#hat{p_{T}}",250,0,1000);
577 mPtRecoOverGen_GenPt_E_Cent_0_10 = ibooker.
bookProfile(
"PtRecoOverGen_GenPt_E_Cent_0_10", Form(
"%2.2f<|#eta|<%2.2f, (0-10cent);genpt;recopt/genpt",
BarrelEta,
EndcapEta), log10PtBins, log10PtMin, log10PtMax, 0, 2,
" ");
578 mPtRecoOverGen_GenPt_F_Cent_0_10 = ibooker.
bookProfile(
"PtRecoOverGen_GenPt_F_Cent_0_10", Form(
"%2.2f<|#eta|<%2.2f, (0-10cent);genpt;recopt/genpt",
EndcapEta,
ForwardEta), log10PtBins, log10PtMin, log10PtMax, 0, 2,
" ");
580 mPtRecoOverGen_GenPt_E_Cent_10_30 = ibooker.
bookProfile(
"PtRecoOverGen_GenPt_E_Cent_10_30", Form(
"%2.2f<|#eta|<%2.2f, (10-30cent);genpt;recopt/genpt",
BarrelEta,
EndcapEta), log10PtBins, log10PtMin, log10PtMax, 0, 2,
" ");
581 mPtRecoOverGen_GenPt_F_Cent_10_30 = ibooker.
bookProfile(
"PtRecoOverGen_GenPt_F_Cent_10_30", Form(
"%2.2f<|#eta|<%2.2f, (10-30cent);genpt;recopt/genpt",
EndcapEta,
ForwardEta), log10PtBins, log10PtMin, log10PtMax, 0, 2,
" ");
583 mPtRecoOverGen_GenPt_E_Cent_30_50 = ibooker.
bookProfile(
"PtRecoOverGen_GenPt_E_Cent_30_50", Form(
"%2.2f<|#eta|<%2.2f, (30-50cent);genpt;recopt/genpt",
BarrelEta,
EndcapEta), log10PtBins, log10PtMin, log10PtMax, 0, 2,
" ");
584 mPtRecoOverGen_GenPt_F_Cent_30_50 = ibooker.
bookProfile(
"PtRecoOverGen_GenPt_F_Cent_30_50", Form(
"%2.2f<|#eta|<%2.2f, (30-50cent);genpt;recopt/genpt",
EndcapEta,
ForwardEta), log10PtBins, log10PtMin, log10PtMax, 0, 2,
" ");
586 mPtRecoOverGen_GenPt_E_Cent_50_80 = ibooker.
bookProfile(
"PtRecoOverGen_GenPt_E_Cent_50_80", Form(
"%2.2f<|#eta|<%2.2f, (50-80cent);genpt;recopt/genpt",
BarrelEta,
EndcapEta), log10PtBins, log10PtMin, log10PtMax, 0, 2,
" ");
587 mPtRecoOverGen_GenPt_F_Cent_50_80 = ibooker.
bookProfile(
"PtRecoOverGen_GenPt_F_Cent_50_80", Form(
"%2.2f<|#eta|<%2.2f, (50-80cent);genpt;recopt/genpt",
EndcapEta,
ForwardEta), log10PtBins, log10PtMin, log10PtMax, 0, 2,
" ");
624 LogInfo(
"OutputInfo") <<
" Histograms will NOT be saved";
628 delete h2D_etabins_vs_pt2;
629 delete h2D_etabins_vs_pt;
630 delete h2D_etabins_vs_phi;
631 delete h2D_pfcand_etabins_vs_pt;
677 int nVertex = vtxs->size();
679 for (
unsigned int i = 0 ;
i< vtxs->size(); ++
i){
680 unsigned int daughter = (*vtxs)[
i].tracksSize();
681 if( daughter > (*vtxs)[greatestvtx].tracksSize()) greatestvtx =
i;
687 vtx = (*vtxs)[greatestvtx].position();
689 int nGoodVertices = 0;
693 for (
unsigned i=0;
i<pvHandle->size();
i++)
695 if ((*pvHandle)[
i].ndof() > 4 &&
696 (fabs((*pvHandle)[
i].
z()) <= 24) &&
740 bool isCentral =
false;
741 bool ismidCentral =
false;
742 bool ismidPeripheral =
false;
743 bool isPeripheral =
false;
745 if(hibin < 20) isCentral =
true;
746 if(hibin >= 20 && hibin < 60) ismidCentral =
true;
747 if(hibin >= 60 && hibin < 100) ismidPeripheral =
true;
748 if(hibin >= 100 && hibin < 160) isPeripheral =
true;
768 Int_t NCaloTower = 0;
776 Float_t SumPt_value = 0;
778 double edge_pseudorapidity[
etaBins_ +1] = {-5.191, -2.650, -2.043, -1.740, -1.479, -1.131, -0.783, -0.522, 0.522, 0.783, 1.131, 1.479, 1.740, 2.043, 2.650, 5.191 };
789 SumSquaredCaloPt[
i] = 0;
793 for(
unsigned icand = 0;icand<caloCandidates->
size(); icand++){
795 const CaloTower & tower = (*caloCandidates)[icand];
797 if(tower.
p4(vtx).Et() < 0.1)
continue;
802 caloPt = tower.
p4(vtx).Et();
803 caloEta = tower.
p4(vtx).Eta();
804 caloPhi = tower.
p4(vtx).Phi();
809 if(caloEta >= edge_pseudorapidity[
k] && caloEta < edge_pseudorapidity[
k+1]){
810 SumCaloPt[
k] = SumCaloPt[
k] + caloPt;
811 SumSquaredCaloPt[
k] = SumSquaredCaloPt[
k] + caloPt*caloPt;
816 SumPt_value = SumPt_value + caloPt;
824 Float_t Evt_SumCaloPt = 0;
826 Float_t Evt_SumSquaredCaloPt = 0;
847 Evt_SumCaloPt = Evt_SumCaloPt + SumCaloPt[
k];
849 Evt_SumSquaredCaloPt = Evt_SumSquaredCaloPt + SumSquaredCaloPt[
k];
874 SumSquaredPFPt[
i] = 0;
878 for(
unsigned icand=0;icand<pfCandidateColl->size(); icand++){
883 if(pfCandidate.
pt() < 0.5)
continue;
887 pfPt = pfCandidate.
pt();
888 pfEta = pfCandidate.
eta();
889 pfPhi = pfCandidate.
phi();
892 bool inBarrel =
false;
893 bool inEndcap =
false;
894 bool inForward =
false;
896 if(fabs(pfEta)<
BarrelEta) inBarrel =
true;
947 if(pfEta >= edge_pseudorapidity[
k] && pfEta < edge_pseudorapidity[
k+1]){
948 SumPFPt[
k] = SumPFPt[
k] + pfPt;
950 SumSquaredPFPt[
k] = SumSquaredPFPt[
k] + pfPt*pfPt;
956 SumPt_value = SumPt_value + pfPt;
965 Float_t Evt_SumPFPt = 0;
967 Float_t Evt_SumSquaredPFPt = 0;
988 Evt_SumPFPt = Evt_SumPFPt + SumPFPt[
k];
990 Evt_SumSquaredPFPt = Evt_SumSquaredPFPt + SumSquaredPFPt[
k];
1007 for (
unsigned ijet=0; ijet<caloJets->size(); ijet++) recoJets.push_back((*caloJets)[ijet]);
1012 for (
unsigned ijet=0; ijet<jptJets->size(); ijet++) recoJets.push_back((*jptJets)[ijet]);
1017 for (
unsigned ijet=0; ijet<basicJets->size();ijet++) recoJets.push_back((*basicJets)[ijet]);
1031 for (
unsigned ijet=0; ijet<recoJets.size(); ijet++) {
1036 if(recoJets[ijet].
pt() > 40)
1074 if (!genJets.
isValid())
return;
1076 for (GenJetCollection::const_iterator gjet=genJets->begin(); gjet!=genJets->end(); gjet++) {
1085 for (GenJetCollection::const_iterator gjet=genJets->begin(); gjet!=genJets->end(); gjet++) {
1086 if (fabs(gjet->eta()) > 6.)
continue;
1088 if (recoJets.size() <= 0)
continue;
1090 bool inBarrel =
false;
1091 bool inEndcap =
false;
1092 bool inForward =
false;
1094 if(fabs(gjet->eta())<
BarrelEta) inBarrel =
true;
1101 double deltaRBest = 999;
1102 double JetPtBest = 0;
1103 for (
unsigned ijet=0; ijet<recoJets.size(); ++ijet) {
1104 double recoPt = recoJets[ijet].pt();
1106 double delR =
deltaR(gjet->eta(), gjet->phi(), recoJets[ijet].eta(), recoJets[ijet].phi());
1107 if (delR < deltaRBest) {
1114 if (iMatch<0)
continue;
1118 double genpt = gjet->pt();
1119 double geneta = gjet->eta();
1120 double response = JetPtBest / genpt;
1154 if( gjet->pt() >= 20 && gjet->pt() < 30 ){
1173 if(ismidPeripheral){
1193 if( gjet->pt() >= 30 && gjet->pt() < 50 ){
1212 if(ismidPeripheral){
1232 if( gjet->pt() >= 50 && gjet->pt() < 80 ){
1251 if(ismidPeripheral){
1271 if( gjet->pt() >= 80 && gjet->pt() < 120 ){
1290 if(ismidPeripheral){
1310 if( gjet->pt() >= 120 && gjet->pt() < 180 ){
1329 if(ismidPeripheral){
1349 if( gjet->pt() >= 180 && gjet->pt() < 300 ){
1368 if(ismidPeripheral){
1388 if(gjet->pt() >= 300){
1407 if(ismidPeripheral){
MonitorElement * mSumCaloPt_0p522_0p783
MonitorElement * mPtRecoOverGen_B_50_80_Cent_0_10
virtual ~JetTester_HeavyIons()
MonitorElement * mPtRecoOverGen_F_20_30_Cent_30_50
T getParameter(std::string const &) const
MonitorElement * mPtRecoOverGen_F_120_180_Cent_30_50
MonitorElement * mPtRecoOverGen_E_30_50_Cent_50_80
MonitorElement * mPtRecoOverGen_F_300_Inf_Cent_0_10
MonitorElement * mSumCaloPt_n5p191_n2p650
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
MonitorElement * mPtRecoOverGen_F_30_50_Cent_0_10
MonitorElement * mSumCaloPt_2p043_2p650
MonitorElement * mSumPFPt_n0p783_n0p522
MonitorElement * mPFCandpT_Barrel_photon
MonitorElement * mPtRecoOverGen_GenEta_20_30_Cent_30_50
double eta() const final
momentum pseudorapidity
MonitorElement * mPtRecoOverGen_F_120_180_Cent_50_80
const std::vector< double > & binningValues() const
edm::InputTag mInputCollection
edm::EDGetTokenT< CaloTowerCollection > caloTowersToken_
MonitorElement * mPtRecoOverGen_F_30_50_Cent_30_50
MonitorElement * mPtRecoOverGen_GenEta_50_80_Cent_30_50
MonitorElement * mNCalopart
MonitorElement * mCaloArea
MonitorElement * mPtRecoOverGen_GenEta_300_Inf_Cent_50_80
math::PtEtaPhiMLorentzVector p4(double vtxZ) const
JetTester_HeavyIons(const edm::ParameterSet &)
MonitorElement * mSumCaloPt_1p479_1p740
bool hasBinningValues() const
MonitorElement * bookProfile(Args &&...args)
MonitorElement * mSumCaloPt_n0p522_0p522
bool getByToken(EDGetToken token, Handle< PROD > &result) const
static const Int_t etaBins_
MonitorElement * mPtRecoOverGen_F_80_120_Cent_30_50
MonitorElement * mPtRecoOverGen_E_50_80_Cent_30_50
MonitorElement * mSumCaloPt
MonitorElement * mSumCaloPt_n1p131_n0p783
MonitorElement * mPtRecoOverGen_B_120_180_Cent_30_50
MonitorElement * mPtRecoOverGen_GenEta_180_300_Cent_30_50
edm::EDGetTokenT< reco::PFCandidateCollection > pfCandToken_
MonitorElement * mSumSquaredCaloPt
MonitorElement * mPtRecoOverGen_E_300_Inf_Cent_10_30
edm::InputTag centralityBinTag_
MonitorElement * mPtRecoOverGen_E_120_180_Cent_50_80
MonitorElement * mPFCandpT_vs_eta_EME_inHF
MonitorElement * mSumCaloPt_n2p043_n1p740
MonitorElement * mPtRecoOverGen_F_30_50_Cent_10_30
MonitorElement * mPtRecoOverGen_B_300_Inf_Cent_30_50
MonitorElement * mPtRecoOverGen_E_50_80_Cent_10_30
MonitorElement * mPtRecoOverGen_E_30_50_Cent_10_30
MonitorElement * mPtRecoOverGen_GenPt_E_Cent_0_10
MonitorElement * mPtRecoOverGen_E_20_30_Cent_50_80
MonitorElement * mPtRecoOverGen_GenEta_50_80_Cent_0_10
MonitorElement * mPtRecoOverGen_E_80_120_Cent_50_80
double pt() const final
transverse momentum
edm::EDGetTokenT< std::vector< float > > backgrounds_value_
MonitorElement * mPtRecoOverGen_B_300_Inf_Cent_0_10
edm::InputTag mInputPFCandCollection
MonitorElement * mSumSquaredPFPt
MonitorElement * mSumPFPt_n2p650_n2p043
MonitorElement * mSumCaloPt_n2p650_n2p043
MonitorElement * mPtRecoOverGen_GenEta_20_30_Cent_10_30
MonitorElement * mPtRecoOverGen_GenPt_B_Cent_10_30
MonitorElement * mPtRecoOverGen_E_20_30_Cent_0_10
MonitorElement * mPtRecoOverGen_GenPt_F_Cent_50_80
MonitorElement * mPtRecoOverGen_B_20_30_Cent_0_10
MonitorElement * mSumCaloPt_n1p740_n1p479
MonitorElement * mPFCandpT_Barrel_ChargedHadron
MonitorElement * mPtRecoOverGen_B_50_80_Cent_30_50
MonitorElement * mPtRecoOverGen_GenEta_180_300_Cent_0_10
MonitorElement * mPtRecoOverGen_GenEta_30_50_Cent_0_10
MonitorElement * mPFCandpT_vs_eta_muon
MonitorElement * mPtRecoOverGen_B_180_300_Cent_10_30
edm::EDGetTokenT< reco::CandidateView > caloCandViewToken_
MonitorElement * mSumPFPt_0p783_1p131
MonitorElement * mSumPFPt_1p479_1p740
MonitorElement * mPtRecoOverGen_B_20_30_Cent_30_50
MonitorElement * mPtRecoOverGen_B_20_30_Cent_10_30
MonitorElement * mPtRecoOverGen_F_30_50_Cent_50_80
MonitorElement * mPFCandpT_Barrel_HadE_inHF
MonitorElement * mPtRecoOverGen_GenPt_B_Cent_50_80
MonitorElement * mPFCandpT_vs_eta_NeutralHadron
MonitorElement * mSumPFPt_n1p131_n0p783
MonitorElement * mPtRecoOverGen_E_20_30_Cent_30_50
MonitorElement * mPFCandpT_Barrel_Unknown
MonitorElement * mPFCandpT_Barrel_EME_inHF
MonitorElement * mPFCandpT_Forward_Unknown
MonitorElement * mPtRecoOverGen_F_180_300_Cent_10_30
MonitorElement * mSumCaloPt_1p131_1p479
MonitorElement * mNJets_40
MonitorElement * mPtRecoOverGen_F_300_Inf_Cent_50_80
edm::EDGetTokenT< reco::Centrality > centralityToken
MonitorElement * mPtRecoOverGen_F_20_30_Cent_10_30
MonitorElement * mPtRecoOverGen_GenEta_120_180_Cent_30_50
edm::EDGetTokenT< reco::BasicJetCollection > basicJetsToken_
MonitorElement * mPtRecoOverGen_E_80_120_Cent_10_30
MonitorElement * mPtRecoOverGen_B_80_120_Cent_30_50
MonitorElement * mPtRecoOverGen_F_50_80_Cent_10_30
MonitorElement * mPFCandpT_Endcap_NeutralHadron
MonitorElement * mPtRecoOverGen_E_80_120_Cent_0_10
MonitorElement * mPtRecoOverGen_E_30_50_Cent_0_10
MonitorElement * mSumPFPt_n0p522_0p522
MonitorElement * mSumPFPt_n5p191_n2p650
MonitorElement * mPtRecoOverGen_GenPt_E_Cent_10_30
edm::EDGetTokenT< std::vector< reco::Vertex > > hiVertexToken_
MonitorElement * mPtRecoOverGen_E_30_50_Cent_30_50
MonitorElement * mJetArea
MonitorElement * mPFCandpT_Forward_NeutralHadron
MonitorElement * mPtRecoOverGen_GenEta_30_50_Cent_50_80
MonitorElement * mPFCandpT_vs_eta_photon
MonitorElement * mPFCandpT_Forward_photon
MonitorElement * mPFCandpT_Endcap_photon
MonitorElement * mPtRecoOverGen_B_80_120_Cent_10_30
MonitorElement * mSumPFPt_n2p043_n1p740
MonitorElement * mSumCaloPt_2p650_5p191
MonitorElement * mPtRecoOverGen_F_20_30_Cent_0_10
MonitorElement * mPtRecoOverGen_GenEta_20_30_Cent_0_10
MonitorElement * mSumPFPt
MonitorElement * book1D(Args &&...args)
MonitorElement * mPtRecoOverGen_B_30_50_Cent_0_10
MonitorElement * mPtRecoOverGen_GenEta_50_80_Cent_10_30
MonitorElement * mPtRecoOverGen_E_180_300_Cent_10_30
MonitorElement * mPtRecoOverGen_F_50_80_Cent_50_80
MonitorElement * mPtRecoOverGen_F_180_300_Cent_30_50
MonitorElement * mPtRecoOverGen_F_300_Inf_Cent_30_50
MonitorElement * mPtRecoOverGen_GenPt_E_Cent_30_50
MonitorElement * mPtRecoOverGen_B_30_50_Cent_10_30
math::XYZPoint Point
point in the space
MonitorElement * mNPFpart
MonitorElement * mPtRecoOverGen_GenPt_F_Cent_10_30
MonitorElement * mPtRecoOverGen_F_80_120_Cent_50_80
edm::EDGetTokenT< GenEventInfoProduct > evtToken_
MonitorElement * mPtRecoOverGen_F_180_300_Cent_0_10
MonitorElement * mPtRecoOverGen_F_50_80_Cent_0_10
MonitorElement * mPtRecoOverGen_B_120_180_Cent_10_30
edm::EDGetTokenT< reco::JPTJetCollection > jptJetsToken_
MonitorElement * mPFCandpT_Endcap_EME_inHF
MonitorElement * mPFCandpT_Barrel_muon
MonitorElement * mPtRecoOverGen_GenEta_120_180_Cent_0_10
MonitorElement * mSumPFPt_0p522_0p783
MonitorElement * mPtRecoOverGen_GenEta_120_180_Cent_50_80
MonitorElement * mPtRecoOverGen_E_300_Inf_Cent_30_50
static const size_t nedge_pseudorapidity
MonitorElement * mPtRecoOverGen_B_300_Inf_Cent_10_30
MonitorElement * mPtRecoOverGen_F_120_180_Cent_10_30
MonitorElement * mPtRecoOverGen_B_50_80_Cent_50_80
MonitorElement * mPtRecoOverGen_E_20_30_Cent_10_30
MonitorElement * mSumPFPt_1p131_1p479
MonitorElement * mPtRecoOverGen_F_80_120_Cent_10_30
edm::InputTag centralityTag_
MonitorElement * mPFCandpT_Forward_ChargedHadron
const Double_t ForwardEta
MonitorElement * mPFCandpT_Endcap_HadE_inHF
double deltaR(double eta1, double eta2, double phi1, double phi2)
MonitorElement * mPFCandpT_Forward_electron
MonitorElement * mPtRecoOverGen_F_120_180_Cent_0_10
MonitorElement * mConstituents
MonitorElement * mPFCandpT_vs_eta_ChargedHadron
MonitorElement * mSumPFPt_1p740_2p043
edm::EDGetTokenT< reco::CandidateView > pfCandViewToken_
std::vector< reco::PFCandidate > PFCandidateCollection
collection of PFCandidates
MonitorElement * mPtRecoOverGen_GenEta_80_120_Cent_50_80
MonitorElement * mPtRecoOverGen_B_30_50_Cent_30_50
MonitorElement * mPtRecoOverGen_B_80_120_Cent_50_80
edm::EDGetTokenT< reco::GenJetCollection > genJetsToken_
void setCurrentFolder(const std::string &fullpath)
double EtHFtowerSum() const
edm::EDGetTokenT< std::vector< reco::Vertex > > pvToken_
MonitorElement * mPFCandpT_Forward_muon
T const * product() const
MonitorElement * book2D(Args &&...args)
MonitorElement * mPtRecoOverGen_B_80_120_Cent_0_10
MonitorElement * mPtRecoOverGen_GenEta_300_Inf_Cent_30_50
MonitorElement * mSumPFPt_n1p479_n1p131
MonitorElement * mPtRecoOverGen_B_120_180_Cent_0_10
MonitorElement * mSumPFPt_2p043_2p650
MonitorElement * mPtRecoOverGen_GenPt_F_Cent_30_50
MonitorElement * mPFCandpT_vs_eta_HadE_inHF
MonitorElement * mCaloEta
MonitorElement * mPtRecoOverGen_E_120_180_Cent_10_30
MonitorElement * mPtRecoOverGen_GenEta_30_50_Cent_30_50
MonitorElement * mPFCandpT_Endcap_Unknown
MonitorElement * mSumCaloPt_n0p783_n0p522
MonitorElement * mPtRecoOverGen_B_120_180_Cent_50_80
MonitorElement * mPtRecoOverGen_F_80_120_Cent_0_10
MonitorElement * mPFCandpT_vs_eta_electron
MonitorElement * mPFCandpT_vs_eta_Unknown
MonitorElement * mCaloPhi
MonitorElement * mPFCandpT_Endcap_ChargedHadron
MonitorElement * mPtRecoOverGen_F_50_80_Cent_30_50
MonitorElement * mPFCandpT_Forward_EME_inHF
MonitorElement * mSumCaloPt_0p783_1p131
MonitorElement * mPtRecoOverGen_E_80_120_Cent_30_50
Particle reconstructed by the particle flow algorithm.
MonitorElement * mPtRecoOverGen_GenEta_80_120_Cent_0_10
MonitorElement * mPtRecoOverGen_E_180_300_Cent_30_50
MonitorElement * mPtRecoOverGen_E_50_80_Cent_50_80
edm::EDGetTokenT< int > centralityBinToken
MonitorElement * mSumPFPt_HF
MonitorElement * mPtRecoOverGen_GenPt_F_Cent_0_10
MonitorElement * mPtRecoOverGen_GenPt_B_Cent_0_10
static int position[264][3]
MonitorElement * mPtRecoOverGen_B_180_300_Cent_30_50
MonitorElement * mPtRecoOverGen_F_180_300_Cent_50_80
MonitorElement * mPtRecoOverGen_GenEta_300_Inf_Cent_10_30
MonitorElement * mSumPFPt_2p650_5p191
MonitorElement * mPtRecoOverGen_E_300_Inf_Cent_50_80
MonitorElement * mPtRecoOverGen_GenPt_B_Cent_30_50
MonitorElement * mPtRecoOverGen_GenEta_80_120_Cent_10_30
MonitorElement * mPtRecoOverGen_E_120_180_Cent_30_50
MonitorElement * mPtRecoOverGen_B_180_300_Cent_0_10
MonitorElement * mPtRecoOverGen_B_180_300_Cent_50_80
MonitorElement * mPFCandpT_Barrel_NeutralHadron
MonitorElement * mSumCaloPt_HF
MonitorElement * mPFCandpT_Forward_HadE_inHF
MonitorElement * mPtRecoOverGen_GenEta_180_300_Cent_50_80
double mMatchGenPtThreshold
MonitorElement * mPtRecoOverGen_GenEta_300_Inf_Cent_0_10
virtual ParticleType particleId() const
edm::InputTag mInputGenCollection
MonitorElement * mPtRecoOverGen_GenEta_50_80_Cent_50_80
MonitorElement * mSumPFPt_n1p740_n1p479
MonitorElement * mPtRecoOverGen_GenEta_120_180_Cent_10_30
MonitorElement * mPtRecoOverGen_GenEta_20_30_Cent_50_80
MonitorElement * mPFCandpT_Endcap_electron
double phi() const final
momentum azimuthal angle
MonitorElement * mPtRecoOverGen_B_20_30_Cent_50_80
MonitorElement * mPFCandpT_Barrel_electron
MonitorElement * mPtRecoOverGen_GenEta_180_300_Cent_10_30
edm::EDGetTokenT< edm::ValueMap< reco::VoronoiBackground > > backgrounds_
MonitorElement * mPtRecoOverGen_E_180_300_Cent_50_80
MonitorElement * mPtRecoOverGen_B_50_80_Cent_10_30
MonitorElement * mPtRecoOverGen_GenEta_30_50_Cent_10_30
edm::EDGetTokenT< reco::CaloJetCollection > caloJetsToken_
MonitorElement * mPFCandpT_Endcap_muon
MonitorElement * mPtRecoOverGen_F_300_Inf_Cent_10_30
MonitorElement * mPtRecoOverGen_E_180_300_Cent_0_10
MonitorElement * mSumCaloPt_1p740_2p043
MonitorElement * mPtRecoOverGen_GenEta_80_120_Cent_30_50
double mRecoJetPtThreshold
MonitorElement * mPtRecoOverGen_E_50_80_Cent_0_10
MonitorElement * mPtRecoOverGen_GenPt_E_Cent_50_80
MonitorElement * mPtRecoOverGen_B_30_50_Cent_50_80
MonitorElement * mSumCaloPt_n1p479_n1p131
MonitorElement * mPtRecoOverGen_B_300_Inf_Cent_50_80
MonitorElement * mPtRecoOverGen_F_20_30_Cent_50_80
void analyze(const edm::Event &, const edm::EventSetup &) override
MonitorElement * mPtRecoOverGen_E_300_Inf_Cent_0_10
MonitorElement * mPtRecoOverGen_E_120_180_Cent_0_10
MonitorElement * mjetpileup