00001 #include "Validation/EventGenerator/interface/TTbar_GenJetAnalyzer.h"
00002
00003
00004 TTbar_GenJetAnalyzer::TTbar_GenJetAnalyzer(const edm::ParameterSet& iConfig):
00005 jets_(iConfig.getParameter<edm::InputTag>("jets")),
00006 genEventInfoProductTag_(iConfig.getParameter<edm::InputTag>("genEventInfoProductTag"))
00007 {
00008
00009 dbe = 0;
00010 dbe = edm::Service<DQMStore>().operator->();
00011 }
00012
00013
00014 TTbar_GenJetAnalyzer::~TTbar_GenJetAnalyzer()
00015 {
00016
00017
00018
00019
00020 }
00021
00022
00023
00024
00025
00026
00027
00028 void
00029
00030 TTbar_GenJetAnalyzer::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup)
00031 {
00032 using namespace edm;
00033
00034
00035 Handle<GenEventInfoProduct> evt_info;
00036 iEvent.getByLabel(genEventInfoProductTag_, evt_info);
00037 if(!evt_info.isValid()) return;
00038 weight = evt_info->weight() ;
00039
00040
00041 edm::Handle<std::vector<reco::GenJet> > jets;
00042 iEvent.getByLabel(jets_, jets );
00043
00044 if(!jets.isValid()) return;
00045
00046 int njets = 0;
00047 for(std::vector<reco::GenJet>::const_iterator jet_it=jets->begin(); jet_it!=jets->end(); ++jet_it){
00048
00049 ++njets;
00050
00051 hists_["jetPtAll" ]->Fill( jet_it->pt() , weight );
00052 hists_["jetEtaAll"]->Fill( jet_it->eta(), weight );
00053
00054 if (njets == 1) { hists_["jetPt1" ]->Fill( jet_it->pt() , weight );
00055 hists_["jetEta1"]->Fill( jet_it->eta(), weight );
00056 }
00057 if (njets == 2) { hists_["jetPt2" ]->Fill( jet_it->pt() , weight );
00058 hists_["jetEta2"]->Fill( jet_it->eta(), weight );
00059 }
00060 if (njets == 3) { hists_["jetPt3" ]->Fill( jet_it->pt() , weight );
00061 hists_["jetEta3"]->Fill( jet_it->eta(), weight );
00062 }
00063 if (njets == 4) { hists_["jetPt4" ]->Fill( jet_it->pt() , weight );
00064 hists_["jetEta4"]->Fill( jet_it->eta(), weight );
00065 }
00066 }
00067
00068 }
00069
00070
00071
00072 void
00073 TTbar_GenJetAnalyzer::beginJob()
00074 {
00075 if(!dbe) return;
00076 dbe->setCurrentFolder("Generator/TTbar");
00077 hists_["jetPtAll" ] = dbe->book1D("TTbar_jetPtAll" , "pt" , 1000, 0., 1000.);
00078 hists_["jetPt1" ] = dbe->book1D("TTbar_jetPt1" , "pt" , 1000, 0., 1000.);
00079 hists_["jetPt2" ] = dbe->book1D("TTbar_jetPt2" , "pt" , 1000, 0., 1000.);
00080 hists_["jetPt3" ] = dbe->book1D("TTbar_jetPt3" , "pt" , 1000, 0., 1000.);
00081 hists_["jetPt4" ] = dbe->book1D("TTbar_jetPt4" , "pt" , 1000, 0., 1000.);
00082
00083 hists_["jetEtaAll"] = dbe->book1D("TTbar_jetEtaAll", "eta", 100, -5., 5.);
00084 hists_["jetEta1" ] = dbe->book1D("TTbar_jetEta1" , "eta", 100, -5., 5.);
00085 hists_["jetEta2" ] = dbe->book1D("TTbar_jetEta2" , "eta", 100, -5., 5.);
00086 hists_["jetEta3" ] = dbe->book1D("TTbar_jetEta3" , "eta", 100, -5., 5.);
00087 hists_["jetEta4" ] = dbe->book1D("TTbar_jetEta4" , "eta", 100, -5., 5.);
00088 }
00089
00090
00091 void
00092 TTbar_GenJetAnalyzer::endJob()
00093 {
00094 }
00095
00096
00097 void
00098 TTbar_GenJetAnalyzer::beginRun(edm::Run const&, edm::EventSetup const&)
00099 {
00100 }
00101
00102
00103 void
00104 TTbar_GenJetAnalyzer::endRun(edm::Run const&, edm::EventSetup const&)
00105 {
00106 }
00107
00108
00109 void
00110 TTbar_GenJetAnalyzer::beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&)
00111 {
00112 }
00113
00114
00115 void
00116 TTbar_GenJetAnalyzer::endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&)
00117 {
00118 }
00119
00120
00121 void
00122 TTbar_GenJetAnalyzer::fillDescriptions(edm::ConfigurationDescriptions& descriptions) {
00123
00124
00125 edm::ParameterSetDescription desc;
00126 desc.setUnknown();
00127 descriptions.addDefault(desc);
00128 }
00129