ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/HbbAnalysis/src/HistosVertexBase.cc
Revision: 1.1
Committed: Thu Feb 18 15:52:41 2010 UTC (15 years, 2 months ago) by amagnan
Content type: text/plain
Branch: MAIN
CVS Tags: v00-05-00, HbbAnaFor35X, v00-04-02, v00-04-01, v00-04-00
Log Message:
add histos for vertices

File Contents

# User Rev Content
1 amagnan 1.1 #include "UserCode/HbbAnalysis/interface/HistosVertexBase.hh"
2    
3     namespace HbbAnalysis {//namespace
4    
5     void HistosVertexBase::Initialise(TFileDirectory & aDir, std::string aName, bool aDoGenMatched)
6     {
7     p_nVertices = aDir.make<TH1F>("p_nVertices",";n_{vertex};N_{entries}",10,0,10);
8     p_trackWeights = aDir.make<TH1F>("p_trackWeights",";track weights;N_{entries}",100,0,1);
9     p_nGoodTracks = aDir.make<TH1F>("p_nGoodTracks",";n_{trks}(weight>0.5);N_{entries}",20,0,20);
10     p_chi2 = aDir.make<TH1F>("p_chi2",";#chi^{2};N_{entries}",300,0,150);
11     p_ndof = aDir.make<TH1F>("p_ndof",";n_{dof};N_{entries}",200,0,200);
12     p_x = aDir.make<TH1F>("p_x",";x (cm);N_{entries}",200,-0.4,0.4);
13     p_y = aDir.make<TH1F>("p_y",";y (cm);N_{entries}",200,-0.4,0.4);
14     p_z = aDir.make<TH1F>("p_z",";z (cm);N_{entries}",200,-40,40);
15     p_xError = aDir.make<TH1F>("p_xError",";#sigma_{x} (cm);N_{entries}",200,0,0.08);
16     p_yError = aDir.make<TH1F>("p_yError",";#sigma_{y} (cm);N_{entries}",200,0,0.08);
17     p_zError = aDir.make<TH1F>("p_zError",";#sigma_{z} (cm);N_{entries}",300,0,15);
18     p_xSig = aDir.make<TH1F>("p_xSig",";x/#sigma_{x};N_{entries}",200,0,20);
19     p_ySig = aDir.make<TH1F>("p_ySig",";y/#sigma_{y};N_{entries}",200,0,20);
20     p_zSig = aDir.make<TH1F>("p_zSig",";z/#sigma_{z};N_{entries}",200,0,20);
21     p_cov01 = aDir.make<TH1F>("p_cov01",";cov_{xy};N_{entries}",100,-0.001,0.001);
22     p_cov02 = aDir.make<TH1F>("p_cov02",";cov_{xz};N_{entries}",400,-0.2,0.2);
23     p_cov12 = aDir.make<TH1F>("p_cov12",";cov_{yz};N_{entries}",400,-0.2,0.2);
24    
25     }
26    
27     void HistosVertexBase::FillEventHistograms(const std::vector<HbbAnalysis::Vertex> & aCol)
28     {
29     p_nVertices->Fill(aCol.size());
30     }
31    
32     void HistosVertexBase::FillHistograms(const HbbAnalysis::Vertex & aVtx, bool isLead)
33     {
34     unsigned nGoodTrks = 0;
35    
36     HbbAnalysis::VertexVars lVars = aVtx.vtxVars();
37    
38     for (unsigned int iTr(0); iTr<lVars.trackWeights.size(); iTr++){
39     p_trackWeights->Fill(lVars.trackWeights.at(iTr));
40     if (lVars.trackWeights.at(iTr) > 0.5) nGoodTrks++;
41     }
42     p_nGoodTracks->Fill(nGoodTrks);
43     p_chi2->Fill(lVars.chi2);
44     p_ndof->Fill(lVars.ndof);
45     p_x->Fill(lVars.x);
46     p_y->Fill(lVars.y);
47     p_z->Fill(lVars.z);
48     p_xError->Fill(lVars.xError);
49     p_yError->Fill(lVars.yError);
50     p_zError->Fill(lVars.zError);
51     if (lVars.xError != 0) p_xSig->Fill(lVars.x/lVars.xError);
52     if (lVars.yError != 0) p_ySig->Fill(lVars.y/lVars.yError);
53     if (lVars.zError != 0) p_zSig->Fill(lVars.z/lVars.zError);
54     p_cov01->Fill(lVars.cov01);
55     p_cov02->Fill(lVars.cov02);
56     p_cov12->Fill(lVars.cov12);
57    
58     }
59    
60    
61     }//namespace
62