ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MPIAnalyzer/src/MPIntuple.cc
(Generate patch)

Comparing UserCode/MPIAnalyzer/src/MPIntuple.cc (file contents):
Revision 1.4 by naodell, Sat May 22 23:34:09 2010 UTC vs.
Revision 1.6 by naodell, Sun May 23 21:56:11 2010 UTC

# Line 99 | Line 99 | class MPIntuple : public edm::EDAnalyzer
99  
100    int eventNumber, runNumber, lumiSection;
101  
102 <  TTree *sTree;
102 >  TTree* sTree;
103    TFile* ntupleFile;
104  
105    TClonesArray* jet_ak5PF;
106    TClonesArray* jetP4_ak5Gen;
107 <  TClonesArray* vtx_offline;
107 >  TClonesArray* primaryVtx;
108  
109    bool doGenJets_;
110    bool doPFJets_;
111 +  bool isMC;
112  
113    string rootfilename;
114  
# Line 116 | Line 117 | class MPIntuple : public edm::EDAnalyzer
117    TriggerNames triggerNames;
118    HLTConfigProvider hltConfig_;
119    vector<string>  hlNames;
120 +  unsigned int triggerStatus;
121  
122  
123   };
# Line 150 | Line 152 | MPIntuple::~MPIntuple()
152   void MPIntuple::analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup)
153   {
154  
155 <  eventNumber = iEvent.id().event();
156 <  runNumber   = iEvent.id().run();
155 >  eventNumber  = iEvent.id().event();
156 >  runNumber    = iEvent.id().run();
157    lumiSection  = (unsigned int)iEvent.getLuminosityBlock().luminosityBlock();
158 +  //  isMC = iEvent.???();
159    
160 <  int PFcount = 0;
160 >  int PFcount  = 0;
161    int Gencount = 0;
162    int Vtxcount = 0;
163  
# Line 176 | Line 179 | void MPIntuple::analyze(const edm::Event
179        float scale3 = correctorL3->correction(myJet);
180  
181        if(myJet.et() > 5){
182 <        
183 <        TCJet jetCon;
184 <        
185 <        jetCon.SetP4(myJet.px(), myJet.py(), myJet.pz(), myJet.energy());
186 <        jetCon.SetVtx(myJet.vx(), myJet.vy(), myJet.vz());
182 >                
183 >        TCJet* jetCon = new ((*jet_ak5PF)[PFcount]) TCJet;
184 >      
185 >        jetCon->SetP4(myJet.px(), myJet.py(), myJet.pz(), myJet.energy());
186 >        jetCon->SetVtx(myJet.vx(), myJet.vy(), myJet.vz());
187  
188 <        jetCon.SetChHadFrac(myJet.chargedHadronEnergyFraction());
189 <        jetCon.SetNeuHadFrac(myJet.neutralHadronEnergyFraction());
190 <        jetCon.SetChEmFrac(myJet.chargedEmEnergyFraction());
191 <        jetCon.SetNeuEmFrac(myJet.neutralEmEnergyFraction());
188 >        jetCon->SetChHadFrac(myJet.chargedHadronEnergyFraction());
189 >        jetCon->SetNeuHadFrac(myJet.neutralHadronEnergyFraction());
190 >        jetCon->SetChEmFrac(myJet.chargedEmEnergyFraction());
191 >        jetCon->SetNeuEmFrac(myJet.neutralEmEnergyFraction());
192  
193 <        jetCon.SetNumConstit(myJet.chargedMultiplicity() + myJet.neutralMultiplicity());
194 <        jetCon.SetNumChPart(myJet.chargedMultiplicity());
193 >        jetCon->SetNumConstit(myJet.chargedMultiplicity() + myJet.neutralMultiplicity());
194 >        jetCon->SetNumChPart(myJet.chargedMultiplicity());
195  
196 <        jetCon.SetNumChPart(myJet.chargedMultiplicity());
196 >        jetCon->SetNumChPart(myJet.chargedMultiplicity());
197  
198 <        jetCon.SetJetCorr(2, scale2);
199 <        jetCon.SetJetCorr(3, scale3);
197 <        
198 <        new ((*jet_ak5PF)[PFcount]) TCJet(jetCon);
198 >        jetCon->SetJetCorr(2, scale2);
199 >        jetCon->SetJetCorr(3, scale3);
200                  
201 +
202          ++PFcount;
203        }      
204      }  
# Line 223 | Line 225 | void MPIntuple::analyze(const edm::Event
225    }
226  
227  
228 <  Handle<reco::VertexCollection> primaryVtx;
229 <  iEvent.getByLabel(PrimaryVtxHandle_, primaryVtx);
228 >  Handle<reco::VertexCollection> primaryVtcs;
229 >  iEvent.getByLabel(PrimaryVtxHandle_, primaryVtcs);
230  
231 <  for(VertexCollection::const_iterator vtx_iter = primaryVtx->begin(); vtx_iter!= primaryVtx->end(); ++vtx_iter){
231 >  for(VertexCollection::const_iterator vtx_iter = primaryVtcs->begin(); vtx_iter!= primaryVtcs->end(); ++vtx_iter){
232      
233      reco::Vertex myVtx = reco::Vertex(*vtx_iter);
234      
235 <    TCPrimaryVtx vtxCon;
234 <      
235 <    vtxCon.SetPosition(myVtx.x(), myVtx.y(), myVtx.z());
236 <    vtxCon.SetNDof(myVtx.ndof());
237 <    vtxCon.SetChi2(myVtx.chi2());
238 <      
239 <    new ((*vtx_offline)[Vtxcount]) TCPrimaryVtx(vtxCon);
235 >    TCPrimaryVtx* vtxCon = new ((*primaryVtx)[Vtxcount]) TCPrimaryVtx;
236        
237 +    vtxCon->SetPosition(myVtx.x(), myVtx.y(), myVtx.z());
238 +    vtxCon->SetNDof(myVtx.ndof());
239 +    vtxCon->SetChi2(myVtx.chi2());
240 +            
241      ++Vtxcount;
242      
243    }
# Line 256 | Line 256 | void MPIntuple::analyze(const edm::Event
256    string MPI_TriggerNames[32] = {"HLT_PixelTracks_Multiplicity70", "HLT_MinBiasBSC_NoBPTX", "HLT_PixelTracks_Multiplicity40","HLT_L1Tech_HCAL_HF", "HLT_IsoTrackHB_8E29", "HLT_IsoTrackHE_8E29", "HLT_L1Tech_RPC_TTU_RBst1_collisions", "HLT_L1_BscMinBiasOR_BptxPlusORMinus", "HLT_L1Tech_BSC_halo_forPhysicsBackground", "HLT_L1Tech_BSC_HighMultiplicity", "HLT_MinBiasPixel_DoubleIsoTrack5", "HLT_MinBiasPixel_DoubleTrack", "HLT_MinBiasPixel_SingleTrack", "HLT_ZeroBiasPixel_SingleTrack", "HLT_MinBiasBSC", "HLT_StoppedHSCP_8E29", "HLT_Jet15U_HcalNoiseFiltered", "HLT_QuadJet15U", "HLT_DiJetAve30U_8E29", "HLT_DiJetAve15U_8E29", "HLT_FwdJet20U", "HLT_Jet50U", "HLT_Jet30U", "HLT_Jet15U", "HLT_BTagMu_Jet10U", "HLT_DoubleJet15U_ForwardBackward", "HLT_BTagIP_Jet50U", "HLT_DoubleLooseIsoTau15", "HLT_SingleLooseIsoTau20", "HLT_HT100U", "HLT_MET100", "HLT_MET45"};
257  
258    bool triggerPassed = false;
259 <  unsigned int triggerStatus = 0x0;
259 >  triggerStatus = 0x0;
260    
261    for (uint iT=0; iT<hlNames.size(); ++iT) {
262  
# Line 275 | Line 275 | void MPIntuple::analyze(const edm::Event
275      }
276    }
277    
278  cout<<triggerStatus<<endl;
278  
279    if(PFcount > 0 || Gencount > 0 || Vtxcount > 0);  sTree -> Fill();
280    
281    jet_ak5PF->Clear();
282 <  vtx_offline->Clear();
282 >  primaryVtx->Clear();
283    jetP4_ak5Gen->Clear();
284  
285   }
# Line 291 | Line 290 | void  MPIntuple::beginJob()
290   {
291    
292    ntupleFile           = new TFile(rootfilename.c_str(), "RECREATE");
293 <  sTree                = new TTree("dpsTree", "Tree for Jets");
293 >  sTree                = new TTree("mpiTree", "Tree for Jets");
294    
295    jet_ak5PF            = new TClonesArray("TCJet");
296    jetP4_ak5Gen         = new TClonesArray("TLorentzVector");
297 <  vtx_offline          = new TClonesArray("TCPrimaryVtx");
297 >  primaryVtx           = new TClonesArray("TCPrimaryVtx");
298  
299    sTree->Branch("jet_ak5PF",&jet_ak5PF, 6400, 0);
300    sTree->Branch("jetP4_ak5Gen",&jetP4_ak5Gen, 6400, 0);
301 <  sTree->Branch("vtx_offline",&vtx_offline, 6400, 0);
301 >  sTree->Branch("primaryVtx",&primaryVtx, 6400, 0);
302  
303    sTree->Branch("eventNumber",&eventNumber, "eventNumber/I");
304    sTree->Branch("runNumber",&runNumber, "runNumber/I");
305    sTree->Branch("lumiSection",&lumiSection, "lumiSection/I");
306 +  sTree->Branch("triggerStatus",&triggerStatus, "triggerStatus/i");
307 +  sTree->Branch("isMC",&isMC,"isMC/O");
308 +
309  
310   }
311  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines