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

# Content
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