1 |
buchmann |
1.1 |
#include <iostream>
|
2 |
|
|
#include <vector>
|
3 |
|
|
#include <sys/stat.h>
|
4 |
|
|
|
5 |
|
|
#include <TCut.h>
|
6 |
|
|
#include <TROOT.h>
|
7 |
|
|
#include <TCanvas.h>
|
8 |
|
|
#include <TMath.h>
|
9 |
|
|
#include <TColor.h>
|
10 |
|
|
#include <TPaveText.h>
|
11 |
|
|
#include <TRandom.h>
|
12 |
|
|
#include <TH1.h>
|
13 |
|
|
#include <TH2.h>
|
14 |
|
|
#include <TF1.h>
|
15 |
|
|
#include <TSQLResult.h>
|
16 |
|
|
#include <TProfile.h>
|
17 |
|
|
#include <TLegendEntry.h>
|
18 |
|
|
|
19 |
|
|
using namespace std;
|
20 |
|
|
|
21 |
|
|
|
22 |
|
|
namespace TTbarAnalysis {
|
23 |
|
|
void Initialize();
|
24 |
|
|
|
25 |
|
|
void Finish();
|
26 |
|
|
|
27 |
|
|
void Run();
|
28 |
|
|
|
29 |
|
|
TCut MetCut("(id1==id2 && (mll<76||mll>106) && met[4]>40) || (id1!=id2)"); // no MET cut on OF
|
30 |
|
|
TCut MllCut("mll>20");
|
31 |
|
|
TCut JetCut("pfJetGoodNum30>=2");
|
32 |
|
|
TCut BTagCut("pfJetGoodNumBtag30>=1");
|
33 |
|
|
|
34 |
|
|
TCut SF("id1==id2 && (mll<76||mll>106)");
|
35 |
|
|
TCut OF("id1!=id2");
|
36 |
|
|
|
37 |
|
|
TCut FullCut( MetCut && MllCut && JetCut && BTagCut);
|
38 |
|
|
TCut FullNoB( MetCut && MllCut && JetCut);
|
39 |
|
|
|
40 |
|
|
string backup_basicqualitycut;
|
41 |
|
|
string backup_essentialcut;
|
42 |
|
|
string backup_basiccut;
|
43 |
|
|
string backup_leptoncut;
|
44 |
|
|
}
|
45 |
|
|
|
46 |
|
|
void TTbarAnalysis::Initialize() {
|
47 |
|
|
cout << "initializing analysis " << endl;
|
48 |
|
|
|
49 |
|
|
TTbarAnalysis::backup_basicqualitycut = (const char*) basicqualitycut;
|
50 |
|
|
TTbarAnalysis::backup_essentialcut = (const char*) essentialcut;
|
51 |
|
|
TTbarAnalysis::backup_basiccut = (const char*) basiccut;
|
52 |
|
|
TTbarAnalysis::backup_leptoncut = (const char*) leptoncut;
|
53 |
|
|
|
54 |
|
|
string Sbasicqualitycut = backup_basicqualitycut;
|
55 |
|
|
Sbasicqualitycut = ReplaceAll(Sbasicqualitycut,")<1.4",")<2.5");
|
56 |
|
|
basicqualitycut=TCut(Sbasicqualitycut.c_str());
|
57 |
|
|
|
58 |
|
|
string Sbasiccut = backup_basiccut;
|
59 |
|
|
Sbasiccut = ReplaceAll(Sbasiccut,")<1.4",")<2.5");
|
60 |
|
|
basiccut=TCut(Sbasiccut.c_str());
|
61 |
|
|
|
62 |
|
|
string Sessentialcut = backup_essentialcut;
|
63 |
|
|
Sessentialcut = ReplaceAll(Sessentialcut,")<1.4",")<2.5");
|
64 |
|
|
essentialcut=TCut(Sessentialcut.c_str());
|
65 |
|
|
|
66 |
|
|
string Sleptoncut = backup_leptoncut;
|
67 |
|
|
Sleptoncut = ReplaceAll(Sleptoncut,")<1.4",")<2.5");
|
68 |
|
|
leptoncut=TCut(Sleptoncut.c_str());
|
69 |
|
|
|
70 |
|
|
|
71 |
|
|
/*
|
72 |
|
|
for(unsigned int isample=0;isample<allsamples.collection.size();isample++) {
|
73 |
|
|
if(Contains(allsamples.collection[isample].filename,"DYJet")) allsamples.collection[isample].weight=1.1*allsamples.collection[isample].weight;
|
74 |
|
|
}
|
75 |
|
|
*/
|
76 |
|
|
|
77 |
|
|
}
|
78 |
|
|
|
79 |
|
|
void TTbarAnalysis::Run() {
|
80 |
|
|
bool doPF=false;
|
81 |
|
|
bool doratio=true;
|
82 |
|
|
bool dolog=true;
|
83 |
|
|
bool nolog=false;
|
84 |
|
|
|
85 |
|
|
|
86 |
|
|
make_plain_kin_plot("numVtx",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),30,0,30,nolog,"m_{ll}","NumberOfVertices_SF_Fig1",doPF,doratio);
|
87 |
|
|
make_plain_kin_plot("numVtx",Cut2Str(TTbarAnalysis::OF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),30,0,30,nolog,"m_{ll}","NumberOfVertices_OF_Fig1",doPF,doratio);
|
88 |
|
|
|
89 |
|
|
|
90 |
|
|
make_plain_kin_plot("pt1",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==0")),50,0,250,nolog,"p_{T}^{e1}","LeadingLeptonPt__e",doPF,doratio);
|
91 |
|
|
make_plain_kin_plot("pt1",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==1")),50,0,250,nolog,"p_{T}^{#mu1}","LeadingLeptonPt__m",doPF,doratio);
|
92 |
|
|
make_plain_kin_plot("pfJetGoodPt[0]",Cut2Str(TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),50,0,250,nolog,"p_{T}^{J1}","LeadingJetPt",doPF,doratio);
|
93 |
|
|
make_plain_kin_plot("pt2",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==0")),50,0,250,nolog,"p_{T}^{e2}","SubLeadingLeptonPt__e",doPF,doratio);
|
94 |
|
|
make_plain_kin_plot("pt2",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==1")),50,0,250,nolog,"p_{T}^{#mu2}","SubLeadingLeptonPt__m",doPF,doratio);
|
95 |
|
|
make_plain_kin_plot("pfJetGoodPt[1]",Cut2Str(TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),50,0,250,nolog,"p_{T}^{J2}","SubLeadingJetPt",doPF,doratio);
|
96 |
|
|
make_plain_kin_plot("mll",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),40,0,400,nolog,"m_{ll}","InvariantDileptonMass_SF_Fig16",doPF,doratio);
|
97 |
|
|
make_plain_kin_plot("mll",Cut2Str(TTbarAnalysis::OF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),40,0,400,nolog,"m_{ll}","InvariantDileptonMass_OF_Fig16",doPF,doratio);
|
98 |
|
|
|
99 |
|
|
make_plain_kin_plot("mll",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==0")),40,0,400,nolog,"m_{ll}","InvariantDileptonMass_ee_Fig21",doPF,doratio);
|
100 |
|
|
make_plain_kin_plot("mll",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==1")),40,0,400,nolog,"m_{ll}","InvariantDileptonMass_mm_Fig21",doPF,doratio);
|
101 |
|
|
make_plain_kin_plot("mll",Cut2Str((TTbarAnalysis::SF||TTbarAnalysis::OF) && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),40,0,400,nolog,"m_{ll}","InvariantDileptonMass_all_Fig21",doPF,doratio);
|
102 |
|
|
|
103 |
|
|
make_plain_kin_plot("met[4]",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),30,0,150,nolog,"MET (T1)","MET_SF_Fig17",doPF,doratio);
|
104 |
|
|
make_plain_kin_plot("met[4]",Cut2Str(TTbarAnalysis::OF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),30,0,150,nolog,"MET (T1)","MET_OF_Fig17",doPF,doratio);
|
105 |
|
|
make_plain_kin_plot("met[4]",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==0")),30,0,150,nolog,"MET (T1)","MET_ee_Fig22",doPF,doratio);
|
106 |
|
|
make_plain_kin_plot("met[4]",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==1")),30,0,150,nolog,"MET (T1)","MET_mm_Fig22",doPF,doratio);
|
107 |
|
|
make_plain_kin_plot("met[4]",Cut2Str((TTbarAnalysis::SF||TTbarAnalysis::OF) && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),30,0,150,nolog,"MET (T1)","MET_all_Fig22",doPF,doratio);
|
108 |
|
|
make_plain_kin_plot("pfJetGoodNum30",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::MetCut),6,-0.5,5.5,nolog,"N(Jets)","nJets_SF_Fig18",doPF,doratio);
|
109 |
|
|
make_plain_kin_plot("pfJetGoodNum30",Cut2Str(TTbarAnalysis::OF && TTbarAnalysis::MllCut && TTbarAnalysis::MetCut),6,-0.5,5.5,nolog,"N(Jets)","nJets_OF_Fig18",doPF,doratio);
|
110 |
|
|
make_plain_kin_plot("pfJetGoodNum30",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==0")),6,-0.5,5.5,nolog,"N(Jets)","nJets_ee_Fig23",doPF,doratio);
|
111 |
|
|
make_plain_kin_plot("pfJetGoodNum30",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==1")),6,-0.5,5.5,nolog,"N(Jets)","nJets_mm_Fig23",doPF,doratio);
|
112 |
|
|
make_plain_kin_plot("pfJetGoodNum30",Cut2Str((TTbarAnalysis::SF||TTbarAnalysis::OF) && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),6,-0.5,5.5,nolog,"N(Jets)","nJets_all_Fig23",doPF,doratio);
|
113 |
|
|
make_plain_kin_plot("pfJetGoodNumBtag30",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::MetCut && TTbarAnalysis::JetCut),6,-0.5,5.5,nolog,"N(btags)","NBtags_SF_Fig19",doPF,doratio);
|
114 |
|
|
make_plain_kin_plot("pfJetGoodNumBtag30",Cut2Str(TTbarAnalysis::OF && TTbarAnalysis::MllCut && TTbarAnalysis::MetCut && TTbarAnalysis::JetCut),6,-0.5,5.5,nolog,"N(btags)","NBtags_OF_Fig19",doPF,doratio);
|
115 |
|
|
make_plain_kin_plot("pfJetGoodNumBtag30",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==0")),6,-0.5,5.5,nolog,"N(btags)","nJets_ee_Fig23",doPF,doratio);
|
116 |
|
|
make_plain_kin_plot("pfJetGoodNumBtag30",Cut2Str(TTbarAnalysis::SF && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut && TCut("id1==1")),6,-0.5,5.5,nolog,"N(btags)","nJets_mm_Fig23",doPF,doratio);
|
117 |
|
|
make_plain_kin_plot("pfJetGoodNumBtag30",Cut2Str((TTbarAnalysis::SF||TTbarAnalysis::OF) && TTbarAnalysis::MllCut && TTbarAnalysis::JetCut),6,-0.5,5.5,nolog,"N(btags)","nJets_all_Fig23",doPF,doratio);
|
118 |
|
|
|
119 |
|
|
}
|
120 |
|
|
|
121 |
|
|
void TTbarAnalysis::Finish() {
|
122 |
|
|
cout << "Finishing analysis " << endl;
|
123 |
|
|
basicqualitycut=TCut(TTbarAnalysis::backup_basicqualitycut.c_str());
|
124 |
|
|
basiccut =TCut(TTbarAnalysis::backup_basiccut.c_str());
|
125 |
|
|
essentialcut =TCut(TTbarAnalysis::backup_essentialcut.c_str());
|
126 |
|
|
leptoncut =TCut(TTbarAnalysis::backup_leptoncut.c_str());
|
127 |
|
|
}
|
128 |
|
|
|
129 |
|
|
void ttbar_analysis() {
|
130 |
|
|
TTbarAnalysis::Initialize();
|
131 |
|
|
|
132 |
|
|
TTbarAnalysis::Run();
|
133 |
|
|
|
134 |
|
|
TTbarAnalysis::Finish();
|
135 |
|
|
}
|