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.18 by naodell, Wed Oct 27 14:21:20 2010 UTC vs.
Revision 1.21 by naodell, Wed Nov 3 09:53:54 2010 UTC

# Line 126 | Line 126 | class MPIntuple : public edm::EDAnalyzer
126    TH1F * h1_trackDxy;
127    TH1F * h1_allTrackDeltaZ_PV;
128    TH1F * h1_allTrackDeltaZ_LJ;
129  TH1F * h1_ptHat;
129    TH2F * h2_nAssTracksVsJetPt;
130    TProfile * p1_nVtcs;
131  
# Line 143 | Line 142 | MPIntuple::MPIntuple(const edm::Paramete
142    triggerHLT_ = iConfig.getUntrackedParameter<bool>("triggerHLT");
143    rootfilename = iConfig.getUntrackedParameter<string>("rootfilename");
144    hlTriggerResults_ = iConfig.getUntrackedParameter<string>("HLTriggerResults","TriggerResults");
145 <  hltName_ = iConfig.getUntrackedParameter<string>("hltName","RECO");
145 >  hltName_ = iConfig.getUntrackedParameter<string>("hltName","HLT");
146   }
147  
148   MPIntuple::~MPIntuple()
# Line 189 | Line 188 | void MPIntuple::analyze(const edm::Event
188      if(!myVtx.isValid() || myVtx.isFake()) continue;
189      TCPrimaryVtx* vtxCon = new ((*primaryVtx)[vtxCount]) TCPrimaryVtx;
190        
191 +    cout<<myVtx.nTracks()<<endl;
192 +
193      vtxCon->SetPosition(myVtx.x(), myVtx.y(), myVtx.z());
194      vtxCon->SetNDof(myVtx.ndof());
195      vtxCon->SetChi2(myVtx.chi2());
# Line 286 | Line 287 | void MPIntuple::analyze(const edm::Event
287  
288            for(TrackRefVector::const_iterator iTrack = tracks.begin(); iTrack != tracks.end(); ++iTrack){
289  
290 <            const reco::Track& myTrack = **iTrack;
291 <
292 <            sumTrackZ += myTrack.vz();
293 <            sumTrackIP += myTrack.dxy(vertexBeamSpot.position());
290 >            const reco::Track    &myJetTrack = **iTrack;
291 >            //const reco::TrackRef &myTrackRef = *iTrack;
292 >
293 >            sumTrackZ += myJetTrack.vz();
294 >            sumTrackIP += myJetTrack.dxy(vertexBeamSpot.position());
295              ++nAssociatedTracks;
296 <            
296 >
297 >            for(VertexCollection::const_iterator vtx_iter = primaryVtcs->begin(); vtx_iter!= primaryVtcs->end(); ++vtx_iter){
298 >              
299 >              reco::Vertex myVtx = reco::Vertex(*vtx_iter);
300 >              if(!myVtx.isValid() || myVtx.isFake()) continue;
301 >              
302 >              for(Vertex::trackRef_iterator iTrackRef = myVtx.tracks_begin(); iTrackRef != myVtx.tracks_end(); ++iTrackRef){
303 >                const edm::RefToBase<reco::Track> &myTrackRef = *iTrackRef;
304 >
305 >                if(myTrackRef.isAvailable()){
306 >
307 >                  const reco::Track &myVertexTrack = *myTrackRef.get();
308 >                                
309 >                  cout<<"Vertex track z = "<<myVertexTrack.vz()<<endl;
310 >                  cout<<"Jet track z = "<<myJetTrack.vz()<<endl;
311 >                
312 >                }
313 >              }      
314 >            }              
315            }
316            
317            meanTrackZ = sumTrackZ/nAssociatedTracks;
# Line 300 | Line 320 | void MPIntuple::analyze(const edm::Event
320            
321            for(TrackRefVector::const_iterator iTrack = tracks.begin(); iTrack != tracks.end(); ++iTrack){
322              
323 <            const reco::Track& myTrack = **iTrack;
323 >            const reco::Track &myJetTrack = **iTrack;
324              
325 <            h1_trackZ->Fill(meanTrackZ - myTrack.vz());
326 <            h1_trackDxy->Fill(myTrack.dxy(vertexBeamSpot.position()));
325 >            if(nAssociatedTracks == 3) h1_trackZ->Fill(meanTrackZ - myJetTrack.vz());
326 >            h1_trackDxy->Fill(myJetTrack.dxy(vertexBeamSpot.position()));
327              
328            }    
329            
# Line 343 | Line 363 | void MPIntuple::analyze(const edm::Event
363        qScale = GenInfoHandle->qScale();
364        ptHat  = (GenInfoHandle->hasBinningValues() ? GenInfoHandle->binningValues()[0] : 0.0);
365  
346      h1_ptHat->Fill(ptHat);
347
366      }
367          
368      for(GenJetCollection::const_iterator jet_iter = GenJets->begin(); jet_iter!= GenJets->end(); ++jet_iter){
# Line 422 | Line 440 | void  MPIntuple::beginJob()
440    h1_trackDxy          = new TH1F("h1_trackDxy", "dxy for all associated tracks", 50, -0.4, 0.4);
441    h1_allTrackDeltaZ_PV = new TH1F("h1_allTrackDeltaZ_PV", "#Delta z between jet and primary vertex", 60, -0.3, 0.3);
442    h1_allTrackDeltaZ_LJ = new TH1F("h1_allTrackDeltaZ_LJ", "#Delta z between leading jet and other jet vertices", 60, -0.3, 0.3);
425  h1_ptHat             = new TH1F("h1_ptHat", "ptHat", 50, 10, 100);
443    h2_nAssTracksVsJetPt = new TH2F("h2_nAssTracksVsJetPt", "nTracks vs Jet p_{T}", 50, 0, 100, 20, -0.5, 19.5);
444    p1_nVtcs             = new TProfile("p1_nVtcs", "<N> per run", 5200.0, 132300.0, 137500.0, 0.0, 6.0);
445  
# Line 456 | Line 473 | void MPIntuple::endJob()
473    h1_trackDxy->Write();
474    h1_allTrackDeltaZ_PV->Write();
475    h1_allTrackDeltaZ_LJ->Write();
459  h1_ptHat->Write();
476    h2_nAssTracksVsJetPt->Write();
477    p1_nVtcs->Write();
478  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines