53 |
|
doMuons = iConfig.getParameter<bool>("doMuons"); |
54 |
|
doTaus = iConfig.getParameter<bool>("doTaus"); |
55 |
|
doJets = iConfig.getParameter<bool>("doJets"); |
56 |
+ |
doGenJets = iConfig.getParameter<bool>("doGenJets"); |
57 |
|
doJECUncertainty = iConfig.getParameter<bool>("doJECUncertainty"); |
58 |
|
doGenTopJets = iConfig.getParameter<bool>("doGenTopJets"); |
59 |
|
doPhotons = iConfig.getParameter<bool>("doPhotons"); |
113 |
|
tr->Branch( jet_sources[j].c_str(), "std::vector<Jet>", &jets[j]); |
114 |
|
} |
115 |
|
} |
116 |
+ |
if(doGenJets){ |
117 |
+ |
genjet_sources = iConfig.getParameter<std::vector<std::string> >("genjet_sources"); |
118 |
+ |
genjet_ptmin = iConfig.getParameter<double> ("genjet_ptmin"); |
119 |
+ |
genjet_etamax = iConfig.getParameter<double> ("genjet_etamax"); |
120 |
+ |
for(size_t j=0; j< genjet_sources.size(); ++j){ |
121 |
+ |
tr->Branch( genjet_sources[j].c_str(), "std::vector<Particle>", &genjets[j]); |
122 |
+ |
} |
123 |
+ |
} |
124 |
|
if(doTopJets){ |
125 |
|
topjet_sources = iConfig.getParameter<std::vector<std::string> >("topjet_sources"); |
126 |
|
topjet_ptmin = iConfig.getParameter<double> ("topjet_ptmin"); |
640 |
|
} |
641 |
|
} |
642 |
|
} |
643 |
+ |
|
644 |
+ |
//-------------- gen jets ------------- |
645 |
+ |
|
646 |
+ |
if(doGenJets){ |
647 |
+ |
for(size_t j=0; j< genjet_sources.size(); ++j){ |
648 |
+ |
|
649 |
+ |
genjets[j].clear(); |
650 |
+ |
|
651 |
+ |
edm::Handle< std::vector<reco::GenJet> > genjet_handle; |
652 |
+ |
iEvent.getByLabel(genjet_sources[j], genjet_handle); |
653 |
+ |
const std::vector<reco::GenJet>& gen_jets = *(genjet_handle.product()); |
654 |
+ |
|
655 |
+ |
for (unsigned int i = 0; i < gen_jets.size(); ++i) { |
656 |
+ |
pat::Jet gen_jet = gen_jets[i]; |
657 |
+ |
if(gen_jet.pt() < genjet_ptmin) continue; |
658 |
+ |
if(fabs(gen_jet.eta()) > genjet_etamax) continue; |
659 |
+ |
|
660 |
+ |
Particle jet; |
661 |
+ |
jet.set_charge(gen_jet.charge()); |
662 |
+ |
jet.set_pt(gen_jet.pt()); |
663 |
+ |
jet.set_eta(gen_jet.eta()); |
664 |
+ |
jet.set_phi(gen_jet.phi()); |
665 |
+ |
jet.set_energy(gen_jet.energy()); |
666 |
+ |
|
667 |
+ |
genjets[j].push_back(jet); |
668 |
+ |
|
669 |
+ |
} |
670 |
+ |
} |
671 |
+ |
} |
672 |
|
|
673 |
|
// ------------- top jets ------------- |
674 |
|
if(doTopJets){ |