]>
Commit | Line | Data |
---|---|---|
f427cbed | 1 | //Create by Christine Nattrass, Rebecca Scott, Irakli Martashvili |
2 | //University of Tennessee at Knoxville | |
3 | //This macro takes an input file created by AliAnalysisHadEtMonteCarlo and creates an AliAnalysisHadEtCorrections for the determination of the corrected Et | |
4 | // #include "TFile.h" | |
5 | // #include <iostream> | |
6 | // #include "AliAnalysisHadEtCorrections.h" | |
7 | ||
8 | // #include <iostream> | |
9 | // #include <TROOT.h> | |
10 | // #include <TSystem.h> | |
11 | // #include "TStopwatch.h" | |
12 | ||
8663c99d | 13 | //Corrections added in by hand to deal with the inadequacies of PYTHIA and HIJING |
14 | TH1D *pp276TPCBkgd(); | |
15 | TH1D *pp276ITSBkgd(); | |
16 | TH1D *PbPb276TPCBkgd(); | |
17 | TH1D *PbPb276ITSBkgd(); | |
18 | Double_t xAxis1[112] = {0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.11, 0.12, 0.13, 0.14, 0.15, 0.16, 0.17, 0.18, 0.19, 0.2, 0.22, 0.24, 0.26, 0.28, 0.3, 0.32, 0.34, 0.36, 0.38, 0.4, 0.42, 0.44, 0.46, 0.48, 0.5, 0.52, 0.54, 0.56, 0.58, 0.6, 0.62, 0.64, 0.66, 0.68, 0.7, 0.72, 0.74, 0.76, 0.78, 0.8, 0.82, 0.84, 0.86, 0.88, 0.9, 0.92, 0.94, 0.96, 0.98, 1, 1.05, 1.1, 1.15, 1.2, 1.25, 1.3, 1.35, 1.4, 1.45, 1.5, 1.55, 1.6, 1.65, 1.7, 1.75, 1.8, 1.85, 1.9, 1.95, 2, 2.2, 2.4, 2.6, 2.8, 3, 3.2, 3.4, 3.6, 3.8, 4, 4.2, 4.4, 4.6, 4.8, 5, 5.5, 6, 6.5, 7, 7.5, 8, 8.5, 9, 9.5, 10, 12, 14, 16, 18, 20, 25}; | |
19 | ||
20 | ||
48a07264 | 21 | Float_t CorrNeutral(float ptcut, char *prodname, char *shortprodname, bool ispp = true, bool forSim = true, bool TPC, bool hadronic = false, float etacut = 0.7); |
22 | TH1D *GetHistoCorrNeutral(float cut, char *name, bool ispp, bool forSim, int mycase, bool eta, int color, int marker, bool hadronic = false); | |
f427cbed | 23 | |
48a07264 | 24 | Float_t CorrPtCut(float ptcut, char *prodname = "Enter Production Name", char *shortprodname = "EnterProductionName", bool ispp = true, bool forSim = true, int mycase = 0); |
25 | TH1D *GetHistoCorrPtCut(float ptcut = 0.15, char *name, bool ispp = true, bool forSim = true, int mycase); | |
f427cbed | 26 | |
48a07264 | 27 | TH1D *GetHistoCorrNotID(float etacut,char *name, bool TPC, bool eta, bool ispp = true, bool forSim = true); |
28 | TH1D *CorrNotID(float etacut,char *name, char *prodname, char *shortprodname, bool TPC, bool ispp = true, bool forSim = true); | |
29 | Float_t CorrNotIDConst(float ptcut, float etacut,char *name, char *prodname, char *shortprodname, bool TPC, bool ispp, bool forSim); | |
f427cbed | 30 | |
48a07264 | 31 | TH1D *GetHistoNoID(float etacut, char *name, bool eta, bool TPC, bool ispp, bool forSim); |
32 | TH1D *CorrNoID(float etacut,char *name, char *prodname, char *shortprodname, bool ispp, bool forSim); | |
33 | Float_t CorrNoIDConst(float etacut, float ptcut,char *name, char *prodname, char *shortprodname, bool ispp, bool forSim); | |
b64de20c | 34 | |
35 | TH1D* bayneseffdiv(TH1D* numerator, TH1D* denominator,Char_t* name); | |
48a07264 | 36 | TH1D *GetHistoEfficiency(float cut, char *name, int mycase, int color, int marker,bool TPC, bool ITS, int cb = -1, int cblast = -1); |
37 | void CorrEfficiencyPlots(bool TPC, char *prodname, char *shortprodname); | |
38 | ||
39 | TH1D *GetHistoCorrBkgd(float etacut,char *name, bool TPC,bool ispp,bool forSim); | |
40 | void CorrBkgdPlots(char *prodname, char *shortprodname, bool TPC,bool ispp,bool forSim); | |
41 | ||
42 | //Some variables that we'll use multiple times. We'll declare them here since they don't seem to delete right in the functions | |
43 | char prefix[100]; | |
44 | char histoname[100]; | |
45 | char epsname[100]; | |
46 | char pngname[100]; | |
47 | TFile *file = NULL;//initiated in main function | |
48 | const char *mynameTPC = "TPC"; | |
49 | const char *mynameITS = "ITS"; | |
50 | const char *mynameTPCITS = "TPCITS"; | |
51 | const char *detectorEMCAL = "EMCAL"; | |
52 | const char *detectorPHOS = "PHOS"; | |
53 | const char *reweightedNo = ""; | |
54 | const char *reweightedYes = "Reweighted"; | |
b64de20c | 55 | |
56 | //=========================================================================================== | |
f427cbed | 57 | |
48a07264 | 58 | void GetCorrections(char *prodname = "Enter Production Name", char *shortprodname = "EnterProductionName", bool ispp = true, bool forSim = true, bool TPC = true, char *infilename="Et.ESD.new.sim.merged.root", int dataset = 2009){ |
f427cbed | 59 | TStopwatch timer; |
60 | timer.Start(); | |
61 | gSystem->Load("libTree.so"); | |
62 | gSystem->Load("libGeom.so"); | |
63 | gSystem->Load("libVMC.so"); | |
64 | gSystem->Load("libXMLIO.so"); | |
65 | ||
66 | gSystem->Load("libSTEERBase.so"); | |
67 | gSystem->Load("libESD.so"); | |
68 | gSystem->Load("libAOD.so"); | |
69 | ||
70 | gSystem->Load("libANALYSIS"); | |
71 | gSystem->Load("libANALYSISalice"); | |
72 | ||
73 | gSystem->AddIncludePath("-I$ALICE_ROOT/include"); | |
0e866ddc | 74 | gROOT->ProcessLine(".L AliAnalysisEtCuts.cxx+g"); |
f427cbed | 75 | gROOT->ProcessLine(".L AliAnalysisHadEtCorrections.cxx+g"); |
48a07264 | 76 | file = new TFile(infilename); |
f427cbed | 77 | |
a02dfa56 | 78 | char outfilename[200]; |
f43fc416 | 79 | char *sim = "ForData"; |
80 | if(forSim) sim = "ForSimulations"; | |
81 | char *system = "PbPb"; | |
82 | if(ispp) system = "pp"; | |
0add53f6 | 83 | sprintf(outfilename,"rootFiles/corrections/corrections.%s.%s.%s.root",shortprodname,system,sim); |
f427cbed | 84 | TFile *outfile = new TFile(outfilename,"RECREATE"); |
85 | AliAnalysisHadEtCorrections *hadCorrectionEMCAL = new AliAnalysisHadEtCorrections(); | |
86 | hadCorrectionEMCAL->SetName("hadCorrectionEMCAL"); | |
b64de20c | 87 | float etacut = 0.7; |
88 | hadCorrectionEMCAL->SetEtaCut(etacut); | |
48a07264 | 89 | hadCorrectionEMCAL->IsData(!forSim); |
90 | hadCorrectionEMCAL->IsEMCal(kTRUE); | |
91 | hadCorrectionEMCAL->SetProduction(shortprodname); | |
92 | hadCorrectionEMCAL->SetProductionDescription(prodname); | |
93 | hadCorrectionEMCAL->SetDataSet(dataset); | |
b64de20c | 94 | //float etacut = hadCorrectionEMCAL->GetEtaCut(); |
95 | //cout<<"eta cut is "<<etacut<<endl; | |
f427cbed | 96 | hadCorrectionEMCAL->SetAcceptanceCorrectionFull(1.0); |
48a07264 | 97 | cout<<"Warning: Acceptance corrections will have to be updated to include real acceptance maps of the EMCAL"<<endl; |
f427cbed | 98 | hadCorrectionEMCAL->SetAcceptanceCorrectionPHOS(360.0/60.0); |
99 | hadCorrectionEMCAL->SetAcceptanceCorrectionEMCAL(360.0/60.0); | |
b64de20c | 100 | |
f427cbed | 101 | float ptcut = 0.1; |
48a07264 | 102 | float neutralCorr = CorrNeutral(ptcut,prodname,shortprodname,ispp,forSim,TPC,false,etacut); |
f427cbed | 103 | hadCorrectionEMCAL->SetNeutralCorrection(neutralCorr); |
48a07264 | 104 | //Using error from data, see analysis note for details |
105 | if(ispp){ | |
106 | hadCorrectionEMCAL->SetNeutralCorrectionLowBound(neutralCorr*(1.0-0.013)); | |
107 | hadCorrectionEMCAL->SetNeutralCorrectionHighBound(neutralCorr*(1.0+0.013)); | |
108 | } | |
109 | else{ | |
110 | hadCorrectionEMCAL->SetNeutralCorrectionLowBound(neutralCorr*(1.0-0.049)); | |
111 | hadCorrectionEMCAL->SetNeutralCorrectionHighBound(neutralCorr*(1.0+0.049)); | |
112 | } | |
113 | ||
114 | float hadronicCorr = CorrNeutral(ptcut,prodname,shortprodname,ispp,forSim,TPC,true,etacut); | |
b64de20c | 115 | hadCorrectionEMCAL->SetNotHadronicCorrection(hadronicCorr); |
48a07264 | 116 | if(ispp){ |
117 | hadCorrectionEMCAL->SetNotHadronicCorrectionLowBound(hadronicCorr*(1.0-0.008)); | |
118 | hadCorrectionEMCAL->SetNotHadronicCorrectionHighBound(hadronicCorr*(1.0+0.008)); | |
119 | } | |
120 | else{ | |
121 | hadCorrectionEMCAL->SetNotHadronicCorrectionLowBound(hadronicCorr*(1.0-0.023)); | |
122 | hadCorrectionEMCAL->SetNotHadronicCorrectionHighBound(hadronicCorr*(1.0+0.023)); | |
123 | } | |
124 | ||
125 | float ptcutITS = CorrPtCut(0.1,prodname,shortprodname,ispp,forSim); | |
f427cbed | 126 | hadCorrectionEMCAL->SetpTCutCorrectionITS(ptcutITS); |
48a07264 | 127 | float ptcutTPC = CorrPtCut(0.15,prodname,shortprodname,ispp,forSim); |
f427cbed | 128 | hadCorrectionEMCAL->SetpTCutCorrectionTPC(ptcutTPC); |
48a07264 | 129 | float ptcutITSLow = CorrPtCut(0.1,prodname,shortprodname,ispp,forSim,-1); |
130 | float ptcutTPCLow = CorrPtCut(0.15,prodname,shortprodname,ispp,forSim,-1); | |
131 | hadCorrectionEMCAL->SetpTCutCorrectionITSLowBound(ptcutITSLow); | |
132 | hadCorrectionEMCAL->SetpTCutCorrectionTPCLowBound(ptcutTPCLow); | |
133 | float ptcutITSHigh = CorrPtCut(0.1,prodname,shortprodname,ispp,forSim,1); | |
134 | float ptcutTPCHigh = CorrPtCut(0.15,prodname,shortprodname,ispp,forSim,1); | |
135 | hadCorrectionEMCAL->SetpTCutCorrectionITSHighBound(ptcutITSHigh); | |
136 | hadCorrectionEMCAL->SetpTCutCorrectionTPCHighBound(ptcutTPCHigh); | |
137 | ||
138 | TH1D *NotIDTPC = CorrNotID(etacut,"CorrNotIDEMCALTPC",prodname,shortprodname,true,ispp,forSim); | |
139 | TH1D *NotIDITS = CorrNotID(etacut,"CorrNotIDEMCALITS",prodname,shortprodname,false,ispp,forSim); | |
b64de20c | 140 | hadCorrectionEMCAL->SetNotIDCorrectionTPC(NotIDTPC); |
141 | hadCorrectionEMCAL->SetNotIDCorrectionITS(NotIDITS); | |
142 | ||
48a07264 | 143 | Float_t NotIDConstTPC = CorrNotIDConst(0.15,etacut,"CorrNotIDEMCALTPC2",prodname,shortprodname,true,ispp,forSim); |
144 | Float_t NotIDConstITS = CorrNotIDConst(0.10,etacut,"CorrNotIDEMCALTPC2",prodname,shortprodname,true,ispp,forSim); | |
0e866ddc | 145 | hadCorrectionEMCAL->SetNotIDConstCorrectionTPC(1.0/NotIDConstTPC); |
146 | hadCorrectionEMCAL->SetNotIDConstCorrectionITS(1.0/NotIDConstITS); | |
48a07264 | 147 | if(ispp){ |
0add53f6 | 148 | hadCorrectionEMCAL->SetNotIDConstCorrectionTPCLowBound(1./NotIDConstTPC*(1.0-0.010)); |
149 | hadCorrectionEMCAL->SetNotIDConstCorrectionITSLowBound(1./NotIDConstITS*(1.0-0.010)); | |
150 | hadCorrectionEMCAL->SetNotIDConstCorrectionTPCHighBound(1./NotIDConstTPC*(1.0+0.010)); | |
151 | hadCorrectionEMCAL->SetNotIDConstCorrectionITSHighBound(1./NotIDConstITS*(1.0+0.010)); | |
48a07264 | 152 | } |
153 | else{ | |
0add53f6 | 154 | hadCorrectionEMCAL->SetNotIDConstCorrectionTPCLowBound(1./NotIDConstTPC*(1.0-0.022)); |
155 | hadCorrectionEMCAL->SetNotIDConstCorrectionITSLowBound(1./NotIDConstITS*(1.0-0.022)); | |
156 | hadCorrectionEMCAL->SetNotIDConstCorrectionTPCHighBound(1./NotIDConstTPC*(1.0+0.022)); | |
157 | hadCorrectionEMCAL->SetNotIDConstCorrectionITSHighBound(1./NotIDConstITS*(1.0+0.022)); | |
48a07264 | 158 | } |
159 | ||
160 | TH1D *NoID = CorrNoID(etacut,"CorrNoIDEMCAL",prodname,shortprodname,ispp,forSim); | |
b64de20c | 161 | hadCorrectionEMCAL->SetNotIDCorrectionNoPID(NoID); |
162 | ||
48a07264 | 163 | Float_t NoIDTPC = CorrNoIDConst(etacut,0.15,"CorrNoIDEMCAL2",prodname,shortprodname,ispp,forSim); |
164 | Float_t NoIDITS = CorrNoIDConst(etacut,0.1,"CorrNoIDEMCAL2",prodname,shortprodname,ispp,forSim); | |
0e866ddc | 165 | hadCorrectionEMCAL->SetNotIDConstCorrectionTPCNoID(1./NoIDTPC); |
166 | hadCorrectionEMCAL->SetNotIDConstCorrectionITSNoID(1./NoIDITS); | |
48a07264 | 167 | hadCorrectionEMCAL->SetNotIDConstCorrectionTPCNoIDLowBound(1./NoIDTPC*.98); |
168 | hadCorrectionEMCAL->SetNotIDConstCorrectionITSNoIDLowBound(1./NoIDITS*.98); | |
169 | hadCorrectionEMCAL->SetNotIDConstCorrectionTPCNoIDHighBound(1./NoIDTPC*1.02); | |
170 | hadCorrectionEMCAL->SetNotIDConstCorrectionITSNoIDHighBound(1./NoIDITS*1.02); | |
8663c99d | 171 | |
172 | //Here we're going to do a bit of a cheat. We want the efficiency for ITS standalone tracks + TPC+ITS tracks. This is returned by the function for the efficiency function if I ask for ITS only efficiency. Had I known how this worked I probably would have written the code differently... but... | |
173 | //anyhow I left a switch for changing it back. | |
a775fa71 | 174 | bool useITSStandalone = false; |
8663c99d | 175 | TH1D *efficiencyPionTPC = GetHistoEfficiency(etacut,"hEfficiencyPionTPC",1,1,20,useITSStandalone,true); |
a02dfa56 | 176 | hadCorrectionEMCAL->SetEfficiencyPionTPC(efficiencyPionTPC); |
8663c99d | 177 | TH1D *efficiencyKaonTPC = GetHistoEfficiency(etacut,"hEfficiencyKaonTPC",2,1,20,useITSStandalone,true); |
a02dfa56 | 178 | hadCorrectionEMCAL->SetEfficiencyKaonTPC(efficiencyKaonTPC); |
8663c99d | 179 | TH1D *efficiencyProtonTPC = GetHistoEfficiency(etacut,"hEfficiencyProtonTPC",3,1,20,useITSStandalone,true); |
a02dfa56 | 180 | hadCorrectionEMCAL->SetEfficiencyProtonTPC(efficiencyProtonTPC); |
8663c99d | 181 | TH1D *efficiencyHadronTPC = GetHistoEfficiency(etacut,"hEfficiencyHadronTPC",0,1,20,useITSStandalone,true); |
a02dfa56 | 182 | hadCorrectionEMCAL->SetEfficiencyHadronTPC(efficiencyHadronTPC); |
48a07264 | 183 | TH1D *efficiencyPionITS = GetHistoEfficiency(etacut,"hEfficiencyPionITS",1,1,20,false,true); |
a02dfa56 | 184 | hadCorrectionEMCAL->SetEfficiencyPionITS(efficiencyPionITS); |
48a07264 | 185 | TH1D *efficiencyKaonITS = GetHistoEfficiency(etacut,"hEfficiencyKaonITS",2,1,20,false,true); |
a02dfa56 | 186 | hadCorrectionEMCAL->SetEfficiencyKaonITS(efficiencyKaonITS); |
48a07264 | 187 | TH1D *efficiencyProtonITS = GetHistoEfficiency(etacut,"hEfficiencyProtonITS",3,1,20,false,true); |
a02dfa56 | 188 | hadCorrectionEMCAL->SetEfficiencyProtonITS(efficiencyProtonITS); |
48a07264 | 189 | TH1D *efficiencyHadronITS = GetHistoEfficiency(etacut,"hEfficiencyHadronITS",0,1,20,false,true); |
a02dfa56 | 190 | hadCorrectionEMCAL->SetEfficiencyHadronITS(efficiencyHadronITS); |
191 | ||
48a07264 | 192 | if(!ispp){ |
8663c99d | 193 | TH1D *efficiencyPionTPCCB0 = GetHistoEfficiency(etacut,"hEfficiencyPionTPCCB0",1,1,20,useITSStandalone,true,0,4); |
48a07264 | 194 | for(int i=0;i<=4;i++) hadCorrectionEMCAL->SetEfficiencyPionTPC((TH1D*)efficiencyPionTPCCB0->Clone(Form("Test%i",i)),i); |
8663c99d | 195 | TH1D *efficiencyPionTPCCB5 = GetHistoEfficiency(etacut,"hEfficiencyPionTPCCB5",1,1,20,useITSStandalone,true,5,9); |
48a07264 | 196 | for(int i=5;i<=9;i++) hadCorrectionEMCAL->SetEfficiencyPionTPC((TH1D*)efficiencyPionTPCCB5->Clone(Form("Test%i",i)),i); |
8663c99d | 197 | TH1D *efficiencyPionTPCCB10 = GetHistoEfficiency(etacut,"hEfficiencyPionTPCCB10",1,1,20,useITSStandalone,true,10,15); |
198 | for(int i=10;i<=20;i++) hadCorrectionEMCAL->SetEfficiencyPionTPC((TH1D*)efficiencyPionTPCCB10->Clone(Form("Test%i",i)),i); | |
48a07264 | 199 | |
8663c99d | 200 | TH1D *efficiencyKaonTPCCB0 = GetHistoEfficiency(etacut,"hEfficiencyKaonTPCCB0",2,1,20,useITSStandalone,true,0,4); |
48a07264 | 201 | for(int i=0;i<=4;i++) hadCorrectionEMCAL->SetEfficiencyKaonTPC((TH1D*)efficiencyKaonTPCCB0->Clone(Form("Test%i",i)),i); |
8663c99d | 202 | TH1D *efficiencyKaonTPCCB5 = GetHistoEfficiency(etacut,"hEfficiencyKaonTPCCB5",2,1,20,useITSStandalone,true,5,9); |
48a07264 | 203 | for(int i=5;i<=9;i++) hadCorrectionEMCAL->SetEfficiencyKaonTPC((TH1D*)efficiencyKaonTPCCB5->Clone(Form("Test%i",i)),i); |
8663c99d | 204 | TH1D *efficiencyKaonTPCCB10 = GetHistoEfficiency(etacut,"hEfficiencyKaonTPCCB10",2,1,20,useITSStandalone,true,10,15); |
205 | for(int i=10;i<=20;i++) hadCorrectionEMCAL->SetEfficiencyKaonTPC((TH1D*)efficiencyKaonTPCCB10->Clone(Form("Test%i",i)),i);//Kaon | |
48a07264 | 206 | |
8663c99d | 207 | TH1D *efficiencyProtonTPCCB0 = GetHistoEfficiency(etacut,"hEfficiencyProtonTPCCB0",3,1,20,useITSStandalone,true,0,4); |
48a07264 | 208 | for(int i=0;i<=4;i++) hadCorrectionEMCAL->SetEfficiencyProtonTPC((TH1D*)efficiencyProtonTPCCB0->Clone(Form("Test%i",i)),i); |
8663c99d | 209 | TH1D *efficiencyProtonTPCCB5 = GetHistoEfficiency(etacut,"hEfficiencyProtonTPCCB5",3,1,20,useITSStandalone,true,5,9); |
48a07264 | 210 | for(int i=5;i<=9;i++) hadCorrectionEMCAL->SetEfficiencyProtonTPC((TH1D*)efficiencyProtonTPCCB5->Clone(Form("Test%i",i)),i); |
8663c99d | 211 | TH1D *efficiencyProtonTPCCB10 = GetHistoEfficiency(etacut,"hEfficiencyProtonTPCCB10",3,1,20,useITSStandalone,true,10,15); |
212 | for(int i=10;i<=20;i++) hadCorrectionEMCAL->SetEfficiencyProtonTPC((TH1D*)efficiencyProtonTPCCB10->Clone(Form("Test%i",i)),i);//Proton | |
48a07264 | 213 | |
8663c99d | 214 | TH1D *efficiencyHadronTPCCB0 = GetHistoEfficiency(etacut,"hEfficiencyHadronTPCCB0",0,1,20,useITSStandalone,true,0,4); |
48a07264 | 215 | for(int i=0;i<=4;i++) hadCorrectionEMCAL->SetEfficiencyHadronTPC((TH1D*)efficiencyHadronTPCCB0->Clone(Form("Test%i",i)),i); |
8663c99d | 216 | TH1D *efficiencyHadronTPCCB5 = GetHistoEfficiency(etacut,"hEfficiencyHadronTPCCB5",0,1,20,useITSStandalone,true,5,9); |
48a07264 | 217 | for(int i=5;i<=9;i++) hadCorrectionEMCAL->SetEfficiencyHadronTPC((TH1D*)efficiencyHadronTPCCB5->Clone(Form("Test%i",i)),i); |
8663c99d | 218 | TH1D *efficiencyHadronTPCCB10 = GetHistoEfficiency(etacut,"hEfficiencyHadronTPCCB10",0,1,20,useITSStandalone,true,10,15); |
219 | for(int i=10;i<=20;i++) hadCorrectionEMCAL->SetEfficiencyHadronTPC((TH1D*)efficiencyHadronTPCCB10->Clone(Form("Test%i",i)),i);//Hadron | |
48a07264 | 220 | |
221 | ||
222 | TH1D *efficiencyPionITSCB0 = GetHistoEfficiency(etacut,"hEfficiencyPionITSCB0",1,1,20,false,true,0,4); | |
223 | for(int i=0;i<=4;i++) hadCorrectionEMCAL->SetEfficiencyPionITS((TH1D*)efficiencyPionITSCB0->Clone(Form("Test%i",i)),i); | |
224 | TH1D *efficiencyPionITSCB5 = GetHistoEfficiency(etacut,"hEfficiencyPionITSCB5",1,1,20,false,true,5,9); | |
225 | for(int i=5;i<=9;i++) hadCorrectionEMCAL->SetEfficiencyPionITS((TH1D*)efficiencyPionITSCB5->Clone(Form("Test%i",i)),i); | |
226 | TH1D *efficiencyPionITSCB10 = GetHistoEfficiency(etacut,"hEfficiencyPionITSCB10",1,1,20,false,true,10,15); | |
8663c99d | 227 | for(int i=10;i<=20;i++) hadCorrectionEMCAL->SetEfficiencyPionITS((TH1D*)efficiencyPionITSCB10->Clone(Form("Test%i",i)),i);//Pion |
48a07264 | 228 | |
229 | TH1D *efficiencyKaonITSCB0 = GetHistoEfficiency(etacut,"hEfficiencyKaonITSCB0",2,1,20,false,true,0,4); | |
230 | for(int i=0;i<=4;i++) hadCorrectionEMCAL->SetEfficiencyKaonITS((TH1D*)efficiencyKaonITSCB0->Clone(Form("Test%i",i)),i); | |
231 | TH1D *efficiencyKaonITSCB5 = GetHistoEfficiency(etacut,"hEfficiencyKaonITSCB5",2,1,20,false,true,5,9); | |
232 | for(int i=5;i<=9;i++) hadCorrectionEMCAL->SetEfficiencyKaonITS((TH1D*)efficiencyKaonITSCB5->Clone(Form("Test%i",i)),i); | |
233 | TH1D *efficiencyKaonITSCB10 = GetHistoEfficiency(etacut,"hEfficiencyKaonITSCB10",2,1,20,false,true,10,15); | |
8663c99d | 234 | for(int i=10;i<=20;i++) hadCorrectionEMCAL->SetEfficiencyKaonITS((TH1D*)efficiencyKaonITSCB10->Clone(Form("Test%i",i)),i);//Kaon |
48a07264 | 235 | |
236 | TH1D *efficiencyProtonITSCB0 = GetHistoEfficiency(etacut,"hEfficiencyProtonITSCB0",3,1,20,false,true,0,4); | |
237 | for(int i=0;i<=4;i++) hadCorrectionEMCAL->SetEfficiencyProtonITS((TH1D*)efficiencyProtonITSCB0->Clone(Form("Test%i",i)),i); | |
238 | TH1D *efficiencyProtonITSCB5 = GetHistoEfficiency(etacut,"hEfficiencyProtonITSCB5",3,1,20,false,true,5,9); | |
239 | for(int i=5;i<=9;i++) hadCorrectionEMCAL->SetEfficiencyProtonITS((TH1D*)efficiencyProtonITSCB5->Clone(Form("Test%i",i)),i); | |
240 | TH1D *efficiencyProtonITSCB10 = GetHistoEfficiency(etacut,"hEfficiencyProtonITSCB10",3,1,20,false,true,10,15); | |
8663c99d | 241 | for(int i=10;i<=20;i++) hadCorrectionEMCAL->SetEfficiencyProtonITS((TH1D*)efficiencyProtonITSCB10->Clone(Form("Test%i",i)),i);//Proton |
48a07264 | 242 | |
243 | TH1D *efficiencyHadronITSCB0 = GetHistoEfficiency(etacut,"hEfficiencyHadronITSCB0",0,1,20,false,true,0,4); | |
244 | for(int i=0;i<=4;i++) hadCorrectionEMCAL->SetEfficiencyHadronITS((TH1D*)efficiencyHadronITSCB0->Clone(Form("Test%i",i)),i); | |
245 | TH1D *efficiencyHadronITSCB5 = GetHistoEfficiency(etacut,"hEfficiencyHadronITSCB5",0,1,20,false,true,5,9); | |
246 | for(int i=5;i<=9;i++) hadCorrectionEMCAL->SetEfficiencyHadronITS((TH1D*)efficiencyHadronITSCB5->Clone(Form("Test%i",i)),i); | |
247 | TH1D *efficiencyHadronITSCB10 = GetHistoEfficiency(etacut,"hEfficiencyHadronITSCB10",0,1,20,false,true,10,15); | |
8663c99d | 248 | for(int i=10;i<=20;i++) hadCorrectionEMCAL->SetEfficiencyHadronITS((TH1D*)efficiencyHadronITSCB10->Clone(Form("Test%i",i)),i);//Hadron |
48a07264 | 249 | }//EMCAL |
8663c99d | 250 | hadCorrectionEMCAL->SetEfficiencyErrorLowBound(0.99); |
251 | hadCorrectionEMCAL->SetEfficiencyErrorHighBound(1.01); | |
48a07264 | 252 | |
253 | //CorrEfficiencyPlots(true,prodname,shortprodname); | |
a02dfa56 | 254 | //CorrEfficiencyPlots(false,prodname,shortprodname,infilename); |
b64de20c | 255 | |
48a07264 | 256 | |
257 | //hadCorrectionEMCAL->GetEfficiencyHadronTPC()->Draw(); | |
8663c99d | 258 | TH1D *backgroundTPC; |
259 | TH1D *backgroundITS; | |
260 | if((dataset==20111 || dataset==20100) && !forSim){//2.76 TeV p+p or Pb+Pb | |
261 | if(dataset==20111){ | |
262 | cout<<"Fixing 2.76 TeV p+p background to be average of 900 GeV and 7 TeV scaling"<<endl; | |
263 | backgroundTPC = pp276TPCBkgd(); | |
264 | backgroundTPC->SetName("hBackgroundTPC"); | |
265 | backgroundITS = pp276ITSBkgd(); | |
266 | backgroundITS->SetName("hBackgroundITS"); | |
267 | } | |
268 | else{//PbPb | |
269 | cout<<"Fixing 2.76 TeV Pb+Pb background to be average of 900 GeV and 7 TeV scaling with baryon enhancement"<<endl; | |
270 | backgroundTPC = pp276TPCBkgd(); | |
271 | backgroundTPC->SetName("hBackgroundTPC"); | |
272 | //ITS background is currently a placeholder | |
273 | backgroundITS = GetHistoCorrBkgd(etacut,"hBackgroundITS",false,ispp,forSim); | |
274 | } | |
275 | } | |
276 | else{ | |
277 | backgroundTPC = GetHistoCorrBkgd(etacut,"hBackgroundTPC",true,ispp,forSim); | |
278 | backgroundITS = GetHistoCorrBkgd(etacut,"hBackgroundITS",false,ispp,forSim); | |
279 | } | |
280 | float bkgdpcterror = 0.0; | |
281 | switch(dataset){ | |
282 | case 2009: | |
283 | bkgdpcterror = 0.37; | |
284 | break; | |
285 | case 20111: | |
286 | bkgdpcterror = 0.38; | |
287 | break; | |
288 | case 2010: | |
289 | bkgdpcterror = 0.13; | |
290 | break; | |
291 | case 20100: | |
292 | bkgdpcterror = 0.76; | |
293 | break; | |
294 | } | |
b64de20c | 295 | hadCorrectionEMCAL->SetBackgroundCorrectionTPC(backgroundTPC); |
296 | hadCorrectionEMCAL->SetBackgroundCorrectionITS(backgroundITS); | |
8663c99d | 297 | hadCorrectionEMCAL->SetBackgroundErrorLowBound(1.0-bkgdpcterror/100.0); |
298 | hadCorrectionEMCAL->SetBackgroundErrorHighBound(1.0+bkgdpcterror/100.0); | |
48a07264 | 299 | //CorrBkgdPlots(prodname,shortprodname,true,ispp,forSim); |
300 | //CorrBkgdPlots(prodname,shortprodname,false,ispp,forSim); | |
301 | ||
302 | hadCorrectionEMCAL->Report(); | |
f427cbed | 303 | |
f427cbed | 304 | outfile->cd(); |
305 | hadCorrectionEMCAL->Write(); | |
306 | outfile->Write(); | |
a02dfa56 | 307 | delete hadCorrectionEMCAL; |
308 | ||
309 | AliAnalysisHadEtCorrections *hadCorrectionPHOS = new AliAnalysisHadEtCorrections(); | |
310 | hadCorrectionPHOS->SetName("hadCorrectionPHOS"); | |
311 | float etacut = 0.12; | |
312 | hadCorrectionPHOS->SetEtaCut(etacut); | |
48a07264 | 313 | hadCorrectionPHOS->IsData(!forSim); |
314 | hadCorrectionPHOS->IsEMCal(kTRUE); | |
315 | hadCorrectionPHOS->SetProduction(shortprodname); | |
316 | hadCorrectionPHOS->SetProductionDescription(prodname); | |
317 | hadCorrectionPHOS->SetDataSet(dataset); | |
a02dfa56 | 318 | //float etacut = hadCorrectionPHOS->GetEtaCut(); |
319 | //cout<<"eta cut is "<<etacut<<endl; | |
a02dfa56 | 320 | hadCorrectionPHOS->SetAcceptanceCorrectionFull(1.0); |
48a07264 | 321 | cout<<"Warning: Acceptance corrections will have to be updated to include real acceptance maps of the PHOS"<<endl; |
a02dfa56 | 322 | hadCorrectionPHOS->SetAcceptanceCorrectionPHOS(360.0/60.0); |
323 | hadCorrectionPHOS->SetAcceptanceCorrectionEMCAL(360.0/60.0); | |
324 | ||
325 | float ptcut = 0.1; | |
48a07264 | 326 | float neutralCorr = CorrNeutral(ptcut,prodname,shortprodname,ispp,forSim,TPC,false,etacut); |
a02dfa56 | 327 | hadCorrectionPHOS->SetNeutralCorrection(neutralCorr); |
48a07264 | 328 | //Using error from data, see analysis note for details |
329 | if(ispp){ | |
0add53f6 | 330 | hadCorrectionPHOS->SetNeutralCorrectionLowBound(neutralCorr*(1.0-.013)); |
331 | hadCorrectionPHOS->SetNeutralCorrectionHighBound(neutralCorr*(1.0+.013)); | |
48a07264 | 332 | } |
333 | else{ | |
0add53f6 | 334 | hadCorrectionPHOS->SetNeutralCorrectionLowBound(neutralCorr*(1.0-0.049)); |
335 | hadCorrectionPHOS->SetNeutralCorrectionHighBound(neutralCorr*(1.0+0.049)); | |
48a07264 | 336 | } |
337 | ||
338 | float hadronicCorr = CorrNeutral(ptcut,prodname,shortprodname,ispp,forSim,TPC,true,etacut); | |
a02dfa56 | 339 | hadCorrectionPHOS->SetNotHadronicCorrection(hadronicCorr); |
48a07264 | 340 | if(ispp){ |
0add53f6 | 341 | hadCorrectionPHOS->SetNotHadronicCorrectionLowBound(neutralCorr*(1.0-0.008)); |
342 | hadCorrectionPHOS->SetNotHadronicCorrectionHighBound(neutralCorr*(1.0+0.008)); | |
48a07264 | 343 | } |
344 | else{ | |
0add53f6 | 345 | hadCorrectionPHOS->SetNotHadronicCorrectionLowBound(neutralCorr*(1.0-0.023)); |
346 | hadCorrectionPHOS->SetNotHadronicCorrectionHighBound(neutralCorr*(1.0+0.023)); | |
48a07264 | 347 | } |
348 | ||
349 | float ptcutITS = CorrPtCut(0.1,prodname,shortprodname,ispp,forSim); | |
a02dfa56 | 350 | hadCorrectionPHOS->SetpTCutCorrectionITS(ptcutITS); |
48a07264 | 351 | float ptcutTPC = CorrPtCut(0.15,prodname,shortprodname,ispp,forSim); |
a02dfa56 | 352 | hadCorrectionPHOS->SetpTCutCorrectionTPC(ptcutTPC); |
48a07264 | 353 | |
354 | float ptcutITSLow = CorrPtCut(0.1,prodname,shortprodname,ispp,forSim,-1); | |
355 | float ptcutTPCLow = CorrPtCut(0.15,prodname,shortprodname,ispp,forSim,-1); | |
356 | hadCorrectionPHOS->SetpTCutCorrectionITSLowBound(ptcutITSLow); | |
357 | hadCorrectionPHOS->SetpTCutCorrectionTPCLowBound(ptcutTPCLow); | |
358 | float ptcutITSHigh = CorrPtCut(0.1,prodname,shortprodname,ispp,forSim,1); | |
359 | float ptcutTPCHigh = CorrPtCut(0.15,prodname,shortprodname,ispp,forSim,1); | |
360 | hadCorrectionPHOS->SetpTCutCorrectionITSHighBound(ptcutITSHigh); | |
361 | hadCorrectionPHOS->SetpTCutCorrectionTPCHighBound(ptcutTPCHigh); | |
362 | ||
363 | TH1D *NotIDTPC = CorrNotID(etacut,"CorrNotIDPHOSTPC",prodname,shortprodname,true,ispp,forSim); | |
364 | TH1D *NotIDITS = CorrNotID(etacut,"CorrNotIDPHOSITS",prodname,shortprodname,false,ispp,forSim); | |
a02dfa56 | 365 | hadCorrectionPHOS->SetNotIDCorrectionTPC(NotIDTPC); |
366 | hadCorrectionPHOS->SetNotIDCorrectionITS(NotIDITS); | |
367 | ||
48a07264 | 368 | Float_t NotIDConstTPC = CorrNotIDConst(0.15,etacut,"CorrNotIDPHOSTPC2",prodname,shortprodname,true,ispp,forSim); |
369 | Float_t NotIDConstITS = CorrNotIDConst(0.10,etacut,"CorrNotIDPHOSTPC2",prodname,shortprodname,true,ispp,forSim); | |
0e866ddc | 370 | hadCorrectionPHOS->SetNotIDConstCorrectionTPC(1./NotIDConstTPC); |
371 | hadCorrectionPHOS->SetNotIDConstCorrectionITS(1./NotIDConstITS); | |
48a07264 | 372 | if(ispp){ |
0add53f6 | 373 | hadCorrectionPHOS->SetNotIDConstCorrectionTPCLowBound(1./NotIDConstTPC*(1.0-0.010)); |
374 | hadCorrectionPHOS->SetNotIDConstCorrectionITSLowBound(1./NotIDConstITS*(1.0-0.010)); | |
375 | hadCorrectionPHOS->SetNotIDConstCorrectionTPCHighBound(1./NotIDConstTPC*(1.0+0.010)); | |
376 | hadCorrectionPHOS->SetNotIDConstCorrectionITSHighBound(1./NotIDConstITS*(1.0+0.010)); | |
48a07264 | 377 | } |
378 | else{ | |
0add53f6 | 379 | hadCorrectionPHOS->SetNotIDConstCorrectionTPCLowBound(1./NotIDConstTPC*(1.0-0.022)); |
380 | hadCorrectionPHOS->SetNotIDConstCorrectionITSLowBound(1./NotIDConstITS*(1.0-0.022)); | |
381 | hadCorrectionPHOS->SetNotIDConstCorrectionTPCHighBound(1./NotIDConstTPC*(1.0+0.022)); | |
382 | hadCorrectionPHOS->SetNotIDConstCorrectionITSHighBound(1./NotIDConstITS*(1.0+0.022)); | |
48a07264 | 383 | } |
384 | ||
385 | ||
386 | TH1D *NoID = CorrNoID(etacut,"CorrNoIDPHOS",prodname,shortprodname,ispp,forSim); | |
a02dfa56 | 387 | hadCorrectionPHOS->SetNotIDCorrectionNoPID(NoID); |
388 | ||
0e866ddc | 389 | |
48a07264 | 390 | Float_t NoIDTPC = CorrNoIDConst(etacut,0.15,"CorrNoIDPHOS2",prodname,shortprodname,ispp,forSim); |
391 | Float_t NoIDITS = CorrNoIDConst(etacut,0.1,"CorrNoIDPHOS2",prodname,shortprodname,ispp,forSim); | |
0e866ddc | 392 | hadCorrectionPHOS->SetNotIDConstCorrectionTPCNoID(1./NoIDTPC); |
393 | hadCorrectionPHOS->SetNotIDConstCorrectionITSNoID(1./NoIDITS); | |
48a07264 | 394 | hadCorrectionPHOS->SetNotIDConstCorrectionTPCNoIDLowBound(1./NoIDTPC*.98); |
395 | hadCorrectionPHOS->SetNotIDConstCorrectionITSNoIDLowBound(1./NoIDITS*.98); | |
396 | hadCorrectionPHOS->SetNotIDConstCorrectionTPCNoIDHighBound(1./NoIDTPC*1.02); | |
397 | hadCorrectionPHOS->SetNotIDConstCorrectionITSNoIDHighBound(1./NoIDITS*1.02); | |
398 | ||
8663c99d | 399 | TH1D *efficiencyPionTPC = GetHistoEfficiency(etacut,"hEfficiencyPionTPC",1,1,20,useITSStandalone,true); |
400 | TH1D *efficiencyKaonTPC = GetHistoEfficiency(etacut,"hEfficiencyKaonTPC",2,1,20,useITSStandalone,true); | |
401 | TH1D *efficiencyProtonTPC = GetHistoEfficiency(etacut,"hEfficiencyProtonTPC",3,1,20,useITSStandalone,true); | |
402 | TH1D *efficiencyHadronTPC = GetHistoEfficiency(etacut,"hEfficiencyHadronTPC",0,1,20,useITSStandalone,true); | |
48a07264 | 403 | TH1D *efficiencyPionITS = GetHistoEfficiency(etacut,"hEfficiencyPionITS",1,1,20,false,true); |
404 | TH1D *efficiencyKaonITS = GetHistoEfficiency(etacut,"hEfficiencyKaonITS",2,1,20,false,true); | |
405 | TH1D *efficiencyProtonITS = GetHistoEfficiency(etacut,"hEfficiencyProtonITS",3,1,20,false,true); | |
406 | TH1D *efficiencyHadronITS = GetHistoEfficiency(etacut,"hEfficiencyHadronITS",0,1,20,false,true); | |
407 | //CorrEfficiencyPlots(true,prodname,shortprodname); | |
408 | //CorrEfficiencyPlots(false,prodname,shortprodname); | |
a02dfa56 | 409 | hadCorrectionPHOS->SetEfficiencyPionTPC(efficiencyPionTPC); |
410 | hadCorrectionPHOS->SetEfficiencyKaonTPC(efficiencyKaonTPC); | |
411 | hadCorrectionPHOS->SetEfficiencyProtonTPC(efficiencyProtonTPC); | |
412 | hadCorrectionPHOS->SetEfficiencyHadronTPC(efficiencyHadronTPC); | |
413 | hadCorrectionPHOS->SetEfficiencyPionITS(efficiencyPionITS); | |
414 | hadCorrectionPHOS->SetEfficiencyKaonITS(efficiencyKaonITS); | |
415 | hadCorrectionPHOS->SetEfficiencyProtonITS(efficiencyProtonITS); | |
416 | hadCorrectionPHOS->SetEfficiencyHadronITS(efficiencyHadronITS); | |
417 | ||
48a07264 | 418 | |
419 | if(!ispp){ | |
8663c99d | 420 | TH1D *efficiencyPionTPCCB0 = GetHistoEfficiency(etacut,"hEfficiencyPionTPCCB0",1,1,20,useITSStandalone,true,0,4); |
48a07264 | 421 | for(int i=0;i<=4;i++) hadCorrectionPHOS->SetEfficiencyPionTPC((TH1D*)efficiencyPionTPCCB0->Clone(Form("Test%i",i)),i); |
8663c99d | 422 | TH1D *efficiencyPionTPCCB5 = GetHistoEfficiency(etacut,"hEfficiencyPionTPCCB5",1,1,20,useITSStandalone,true,5,9); |
48a07264 | 423 | for(int i=5;i<=9;i++) hadCorrectionPHOS->SetEfficiencyPionTPC((TH1D*)efficiencyPionTPCCB5->Clone(Form("Test%i",i)),i); |
8663c99d | 424 | TH1D *efficiencyPionTPCCB10 = GetHistoEfficiency(etacut,"hEfficiencyPionTPCCB10",1,1,20,useITSStandalone,true,10,15); |
425 | for(int i=10;i<=20;i++) hadCorrectionPHOS->SetEfficiencyPionTPC((TH1D*)efficiencyPionTPCCB10->Clone(Form("Test%i",i)),i); | |
48a07264 | 426 | |
8663c99d | 427 | TH1D *efficiencyKaonTPCCB0 = GetHistoEfficiency(etacut,"hEfficiencyKaonTPCCB0",2,1,20,useITSStandalone,true,0,4); |
48a07264 | 428 | for(int i=0;i<=4;i++) hadCorrectionPHOS->SetEfficiencyKaonTPC((TH1D*)efficiencyKaonTPCCB0->Clone(Form("Test%i",i)),i); |
8663c99d | 429 | TH1D *efficiencyKaonTPCCB5 = GetHistoEfficiency(etacut,"hEfficiencyKaonTPCCB5",2,1,20,useITSStandalone,true,5,9); |
48a07264 | 430 | for(int i=5;i<=9;i++) hadCorrectionPHOS->SetEfficiencyKaonTPC((TH1D*)efficiencyKaonTPCCB5->Clone(Form("Test%i",i)),i); |
8663c99d | 431 | TH1D *efficiencyKaonTPCCB10 = GetHistoEfficiency(etacut,"hEfficiencyKaonTPCCB10",2,1,20,useITSStandalone,true,10,15); |
432 | for(int i=10;i<=20;i++) hadCorrectionPHOS->SetEfficiencyKaonTPC((TH1D*)efficiencyKaonTPCCB10->Clone(Form("Test%i",i)),i);//Kaon | |
48a07264 | 433 | |
8663c99d | 434 | TH1D *efficiencyProtonTPCCB0 = GetHistoEfficiency(etacut,"hEfficiencyProtonTPCCB0",3,1,20,useITSStandalone,true,0,4); |
48a07264 | 435 | for(int i=0;i<=4;i++) hadCorrectionPHOS->SetEfficiencyProtonTPC((TH1D*)efficiencyProtonTPCCB0->Clone(Form("Test%i",i)),i); |
8663c99d | 436 | TH1D *efficiencyProtonTPCCB5 = GetHistoEfficiency(etacut,"hEfficiencyProtonTPCCB5",3,1,20,useITSStandalone,true,5,9); |
48a07264 | 437 | for(int i=5;i<=9;i++) hadCorrectionPHOS->SetEfficiencyProtonTPC((TH1D*)efficiencyProtonTPCCB5->Clone(Form("Test%i",i)),i); |
8663c99d | 438 | TH1D *efficiencyProtonTPCCB10 = GetHistoEfficiency(etacut,"hEfficiencyProtonTPCCB10",3,1,20,useITSStandalone,true,10,15); |
439 | for(int i=10;i<=20;i++) hadCorrectionPHOS->SetEfficiencyProtonTPC((TH1D*)efficiencyProtonTPCCB10->Clone(Form("Test%i",i)),i);//Proton | |
48a07264 | 440 | |
8663c99d | 441 | TH1D *efficiencyHadronTPCCB0 = GetHistoEfficiency(etacut,"hEfficiencyHadronTPCCB0",0,1,20,useITSStandalone,true,0,4); |
48a07264 | 442 | for(int i=0;i<=4;i++) hadCorrectionPHOS->SetEfficiencyHadronTPC((TH1D*)efficiencyHadronTPCCB0->Clone(Form("Test%i",i)),i); |
8663c99d | 443 | TH1D *efficiencyHadronTPCCB5 = GetHistoEfficiency(etacut,"hEfficiencyHadronTPCCB5",0,1,20,useITSStandalone,true,5,9); |
48a07264 | 444 | for(int i=5;i<=9;i++) hadCorrectionPHOS->SetEfficiencyHadronTPC((TH1D*)efficiencyHadronTPCCB5->Clone(Form("Test%i",i)),i); |
8663c99d | 445 | TH1D *efficiencyHadronTPCCB10 = GetHistoEfficiency(etacut,"hEfficiencyHadronTPCCB10",0,1,20,useITSStandalone,true,10,15); |
446 | for(int i=10;i<=20;i++) hadCorrectionPHOS->SetEfficiencyHadronTPC((TH1D*)efficiencyHadronTPCCB10->Clone(Form("Test%i",i)),i);//Hadron | |
48a07264 | 447 | |
448 | ||
449 | TH1D *efficiencyPionITSCB0 = GetHistoEfficiency(etacut,"hEfficiencyPionITSCB0",1,1,20,false,true,0,4); | |
450 | for(int i=0;i<=4;i++) hadCorrectionPHOS->SetEfficiencyPionITS((TH1D*)efficiencyPionITSCB0->Clone(Form("Test%i",i)),i); | |
451 | TH1D *efficiencyPionITSCB5 = GetHistoEfficiency(etacut,"hEfficiencyPionITSCB5",1,1,20,false,true,5,9); | |
452 | for(int i=5;i<=9;i++) hadCorrectionPHOS->SetEfficiencyPionITS((TH1D*)efficiencyPionITSCB5->Clone(Form("Test%i",i)),i); | |
453 | TH1D *efficiencyPionITSCB10 = GetHistoEfficiency(etacut,"hEfficiencyPionITSCB10",1,1,20,false,true,10,15); | |
8663c99d | 454 | for(int i=10;i<=20;i++) hadCorrectionPHOS->SetEfficiencyPionITS((TH1D*)efficiencyPionITSCB10->Clone(Form("Test%i",i)),i);//Pion |
48a07264 | 455 | |
456 | TH1D *efficiencyKaonITSCB0 = GetHistoEfficiency(etacut,"hEfficiencyKaonITSCB0",2,1,20,false,true,0,4); | |
457 | for(int i=0;i<=4;i++) hadCorrectionPHOS->SetEfficiencyKaonITS((TH1D*)efficiencyKaonITSCB0->Clone(Form("Test%i",i)),i); | |
458 | TH1D *efficiencyKaonITSCB5 = GetHistoEfficiency(etacut,"hEfficiencyKaonITSCB5",2,1,20,false,true,5,9); | |
459 | for(int i=5;i<=9;i++) hadCorrectionPHOS->SetEfficiencyKaonITS((TH1D*)efficiencyKaonITSCB5->Clone(Form("Test%i",i)),i); | |
460 | TH1D *efficiencyKaonITSCB10 = GetHistoEfficiency(etacut,"hEfficiencyKaonITSCB10",2,1,20,false,true,10,15); | |
8663c99d | 461 | for(int i=10;i<=20;i++) hadCorrectionPHOS->SetEfficiencyKaonITS((TH1D*)efficiencyKaonITSCB10->Clone(Form("Test%i",i)),i);//Kaon |
48a07264 | 462 | |
463 | TH1D *efficiencyProtonITSCB0 = GetHistoEfficiency(etacut,"hEfficiencyProtonITSCB0",3,1,20,false,true,0,4); | |
464 | for(int i=0;i<=4;i++) hadCorrectionPHOS->SetEfficiencyProtonITS((TH1D*)efficiencyProtonITSCB0->Clone(Form("Test%i",i)),i); | |
465 | TH1D *efficiencyProtonITSCB5 = GetHistoEfficiency(etacut,"hEfficiencyProtonITSCB5",3,1,20,false,true,5,9); | |
466 | for(int i=5;i<=9;i++) hadCorrectionPHOS->SetEfficiencyProtonITS((TH1D*)efficiencyProtonITSCB5->Clone(Form("Test%i",i)),i); | |
467 | TH1D *efficiencyProtonITSCB10 = GetHistoEfficiency(etacut,"hEfficiencyProtonITSCB10",3,1,20,false,true,10,15); | |
8663c99d | 468 | for(int i=10;i<=20;i++) hadCorrectionPHOS->SetEfficiencyProtonITS((TH1D*)efficiencyProtonITSCB10->Clone(Form("Test%i",i)),i);//Proton |
48a07264 | 469 | |
470 | TH1D *efficiencyHadronITSCB0 = GetHistoEfficiency(etacut,"hEfficiencyHadronITSCB0",0,1,20,false,true,0,4); | |
471 | for(int i=0;i<=4;i++) hadCorrectionPHOS->SetEfficiencyHadronITS((TH1D*)efficiencyHadronITSCB0->Clone(Form("Test%i",i)),i); | |
472 | TH1D *efficiencyHadronITSCB5 = GetHistoEfficiency(etacut,"hEfficiencyHadronITSCB5",0,1,20,false,true,5,9); | |
473 | for(int i=5;i<=9;i++) hadCorrectionPHOS->SetEfficiencyHadronITS((TH1D*)efficiencyHadronITSCB5->Clone(Form("Test%i",i)),i); | |
474 | TH1D *efficiencyHadronITSCB10 = GetHistoEfficiency(etacut,"hEfficiencyHadronITSCB10",0,1,20,false,true,10,15); | |
8663c99d | 475 | for(int i=10;i<=20;i++) hadCorrectionPHOS->SetEfficiencyHadronITS((TH1D*)efficiencyHadronITSCB10->Clone(Form("Test%i",i)),i);//Hadron |
48a07264 | 476 | }//EMCAL |
477 | ||
8663c99d | 478 | |
479 | TH1D *backgroundTPC; | |
480 | TH1D *backgroundITS; | |
481 | if((dataset==20111 || dataset==20100) && !forSim){//2.76 TeV p+p or Pb+Pb | |
482 | if(dataset==20111){ | |
483 | cout<<"Fixing 2.76 TeV p+p background to be average of 900 GeV and 7 TeV scaling"<<endl; | |
484 | backgroundTPC = pp276TPCBkgd(); | |
485 | backgroundTPC->SetName("hBackgroundTPCPHOS"); | |
486 | backgroundITS = pp276ITSBkgd(); | |
487 | backgroundITS->SetName("hBackgroundITSPHOS"); | |
488 | } | |
489 | else{//PbPb | |
490 | cout<<"Fixing 2.76 TeV Pb+Pb background to be average of 900 GeV and 7 TeV scaling with baryon enhancement"<<endl; | |
491 | backgroundTPC = pp276TPCBkgd(); | |
492 | backgroundTPC->SetName("hBackgroundTPCPHOS"); | |
493 | //ITS background is currently a placeholder | |
494 | backgroundITS = GetHistoCorrBkgd(etacut,"hBackgroundITS",false,ispp,forSim); | |
495 | } | |
496 | } | |
497 | else{ | |
498 | backgroundTPC = GetHistoCorrBkgd(etacut,"hBackgroundTPC",true,ispp,forSim); | |
499 | backgroundITS = GetHistoCorrBkgd(etacut,"hBackgroundITS",false,ispp,forSim); | |
500 | } | |
a02dfa56 | 501 | hadCorrectionPHOS->SetBackgroundCorrectionTPC(backgroundTPC); |
502 | hadCorrectionPHOS->SetBackgroundCorrectionITS(backgroundITS); | |
8663c99d | 503 | hadCorrectionPHOS->SetBackgroundErrorLowBound(1.0-0.001); |
504 | hadCorrectionPHOS->SetBackgroundErrorHighBound(1.0+0.001); | |
505 | //CorrBkgdPlots(prodname,shortprodname,true,ispp,forSim); | |
506 | //CorrBkgdPlots(prodname,shortprodname,false,ispp,forSim); | |
a02dfa56 | 507 | |
48a07264 | 508 | hadCorrectionPHOS->Report(); |
a02dfa56 | 509 | //Write the output |
510 | outfile->cd(); | |
511 | hadCorrectionPHOS->Write(); | |
512 | outfile->Write(); | |
f427cbed | 513 | outfile->Close(); |
514 | ||
f43fc416 | 515 | |
f427cbed | 516 | timer.Stop(); |
517 | timer.Print(); | |
518 | } | |
519 | ||
b64de20c | 520 | //==================================CorrNeutral============================================== |
48a07264 | 521 | Float_t CorrNeutral(float ptcut, char *prodname, char *shortprodname, bool ispp, bool forSim, bool TPC, bool hadronic, float etacut){ |
522 | if(!forSim){//for data we have evaluated the neutral correction from ALICE data | |
523 | if(hadronic){//for tot et from had et | |
524 | if(ispp){ | |
525 | return 1.0/0.571; | |
526 | } | |
527 | else{ | |
528 | return 1.0/0.549; | |
529 | } | |
530 | } | |
531 | else{//for had et only | |
532 | if(ispp){ | |
533 | return 1.0/0.736; | |
534 | } | |
535 | else{ | |
536 | return 1.0/0.689; | |
537 | } | |
538 | } | |
539 | } | |
f427cbed | 540 | gStyle->SetOptTitle(0); |
541 | gStyle->SetOptStat(0); | |
542 | gStyle->SetOptFit(0); | |
543 | TCanvas *c = new TCanvas("c","c",400,400); | |
544 | c->SetTopMargin(0.0); | |
545 | c->SetRightMargin(0.0); | |
546 | c->SetBorderSize(0); | |
547 | c->SetFillColor(0); | |
548 | c->SetFillColor(0); | |
549 | c->SetBorderMode(0); | |
550 | c->SetFrameFillColor(0); | |
551 | c->SetFrameBorderMode(0); | |
552 | ||
553 | TPad *ptpad = c->cd(1); | |
554 | ptpad->SetTopMargin(0.04); | |
555 | ptpad->SetRightMargin(0.04); | |
556 | ptpad->SetLeftMargin(0.149288); | |
557 | ptpad->SetBorderSize(0); | |
558 | ptpad->SetFillColor(0); | |
559 | ptpad->SetFillColor(0); | |
560 | ptpad->SetBorderMode(0); | |
561 | ptpad->SetFrameFillColor(0); | |
562 | ptpad->SetFrameBorderMode(0); | |
563 | ||
564 | int phosmarker = 20; | |
565 | ||
f427cbed | 566 | sprintf(prefix,"%s%2.1f",shortprodname,ptcut); |
567 | ||
f427cbed | 568 | sprintf(histoname,"%stotal",histoname); |
569 | int colortotal = 1; | |
b64de20c | 570 | int casetotal = 4; |
571 | if(hadronic) casetotal = 8; | |
48a07264 | 572 | TH1D *total = GetHistoCorrNeutral(ptcut,histoname,ispp,forSim,casetotal,false,colortotal,phosmarker,hadronic); |
f427cbed | 573 | |
574 | int colorallneutral = 2; | |
48a07264 | 575 | TH1D *allneutral = GetHistoCorrNeutral(ptcut,"allneutral",ispp,forSim,3,false,colorallneutral,phosmarker,hadronic); |
f427cbed | 576 | |
577 | int colorchargedsecondary = TColor::kViolet-3; | |
48a07264 | 578 | TH1D *chargedsecondary = GetHistoCorrNeutral(ptcut,"chargedsecondary",ispp,forSim,2,false,colorchargedsecondary,phosmarker,hadronic); |
f427cbed | 579 | |
580 | int colorneutralUndet = 4; | |
48a07264 | 581 | TH1D *neutralUndet = GetHistoCorrNeutral(ptcut,"neutralUndet",ispp,forSim,1,false,colorneutralUndet,phosmarker,hadronic); |
f427cbed | 582 | |
583 | int colorv0 = TColor::kGreen+2; | |
48a07264 | 584 | TH1D *v0 = GetHistoCorrNeutral(ptcut,"v0",ispp,forSim,0,false,colorv0,phosmarker,hadronic); |
b64de20c | 585 | |
586 | int colorem = TColor::kCyan; | |
48a07264 | 587 | TH1D *em = GetHistoCorrNeutral(ptcut,"em",ispp,forSim,9,false,colorem,phosmarker,hadronic); |
f427cbed | 588 | |
589 | TF1 *func = new TF1("func","[0]",-.7,.7); | |
590 | func->SetParameter(0,0.2); | |
0e866ddc | 591 | total->Fit(func,"","",-etacut,etacut); |
f427cbed | 592 | |
593 | //total->SetAxisRange(0.0,4); | |
594 | total->GetXaxis()->SetLabelSize(0.05); | |
595 | total->GetYaxis()->SetLabelSize(0.045); | |
596 | total->GetXaxis()->SetTitleSize(0.05); | |
597 | total->GetYaxis()->SetTitleSize(0.06); | |
b64de20c | 598 | if(hadronic){ |
599 | total->SetMaximum(0.6); | |
600 | total->SetMinimum(0.0); | |
601 | } | |
602 | else{ | |
603 | total->SetMaximum(0.3); | |
604 | total->SetMinimum(0.0); | |
605 | } | |
f427cbed | 606 | total->Draw(); |
607 | allneutral->Draw("same"); | |
608 | chargedsecondary->Draw("same"); | |
609 | neutralUndet->Draw("same"); | |
610 | v0->Draw("same"); | |
b64de20c | 611 | if(hadronic) em->Draw("same"); |
f427cbed | 612 | |
613 | TLatex *tex = new TLatex(0.161478,1.0835,prodname); | |
614 | tex->SetTextSize(0.0537634); | |
615 | tex->Draw(); | |
616 | TLegend *leg2 = new TLegend(0.518321,0.746873,0.774812,0.955343); | |
617 | leg2->AddEntry(total,"Total"); | |
618 | leg2->AddEntry(allneutral,"#Lambda,#bar{#Lambda},K^{0}_{S},K^{0}_{L},n,#bar{n}"); | |
619 | leg2->AddEntry(neutralUndet,"K^{0}_{L},n,#bar{n}"); | |
b64de20c | 620 | if(hadronic) leg2->AddEntry(em,"e^{#pm},#gamma,#eta,#pi^{0},#omega"); |
f427cbed | 621 | leg2->SetFillStyle(0); |
622 | leg2->SetFillColor(0); | |
623 | leg2->SetBorderSize(0); | |
624 | leg2->SetTextSize(0.0548607); | |
625 | leg2->Draw(); | |
b64de20c | 626 | if(hadronic){ |
627 | sprintf(epsname,"pics/%s/fhadronic.eps",shortprodname); | |
628 | sprintf(pngname,"pics/%s/fhadronic.png",shortprodname); | |
629 | } | |
630 | else{ | |
631 | sprintf(epsname,"pics/%s/fneutral.eps",shortprodname); | |
632 | sprintf(pngname,"pics/%s/fneutral.png",shortprodname); | |
633 | } | |
f427cbed | 634 | c->SaveAs(epsname); |
635 | c->SaveAs(pngname); | |
636 | ||
a02dfa56 | 637 | delete total; |
638 | delete allneutral; | |
639 | delete chargedsecondary; | |
640 | delete neutralUndet; | |
641 | delete v0; | |
642 | delete em; | |
643 | delete c; | |
f427cbed | 644 | float corr = func->GetParameter(0); |
a02dfa56 | 645 | delete func; |
48a07264 | 646 | delete tex; |
647 | delete leg2; | |
f427cbed | 648 | return 1.0/(1.0-corr); |
649 | ||
650 | } | |
48a07264 | 651 | TH1D *GetHistoCorrNeutral(float cut, char *name, bool ispp, bool forSim, int mycase, bool eta, int color, int marker, bool hadronic){ |
652 | file->cd(); | |
f43fc416 | 653 | char *reweightname = ""; |
654 | if(!forSim) reweightname = "Reweighted"; | |
f427cbed | 655 | TH2F *numeratorParent; |
656 | switch(mycase){ | |
657 | case 0: | |
f43fc416 | 658 | numeratorParent= (TH2F*)((TH2F*) out2->FindObject(Form("EtSimulatedLambda%s",reweightname)))->Clone("v0"); |
659 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtSimulatedAntiLambda%s",reweightname))); | |
660 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtSimulatedK0S%s",reweightname))); | |
f427cbed | 661 | break; |
662 | case 1: | |
f43fc416 | 663 | numeratorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtSimulatedK0L%s",reweightname)))->Clone("Knnbar"); |
f427cbed | 664 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedNeutron")); |
665 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiNeutron")); | |
666 | break; | |
667 | case 2: | |
668 | numeratorParent = (TH2F*)((TH2F*) out2->FindObject("EtSimulatedOmega"))->Clone("ch2ndary"); | |
669 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiOmega")); | |
670 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedXi")); | |
671 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiXi")); | |
672 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedXi0")); | |
673 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiXi0")); | |
674 | break; | |
675 | case 3: | |
f43fc416 | 676 | numeratorParent= (TH2F*)((TH2F*) out2->FindObject(Form("EtSimulatedLambda%s",reweightname)))->Clone("allneutral"); |
677 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtSimulatedAntiLambda%s",reweightname))); | |
678 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtSimulatedK0S%s",reweightname))); | |
679 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtSimulatedK0L%s",reweightname))); | |
f427cbed | 680 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedNeutron")); |
681 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiNeutron")); | |
682 | break; | |
683 | case 4: | |
f43fc416 | 684 | numeratorParent= (TH2F*)((TH2F*) out2->FindObject(Form("EtSimulatedLambda%s",reweightname)))->Clone("allneutral"); |
685 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtSimulatedAntiLambda%s",reweightname))); | |
686 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtSimulatedK0S%s",reweightname))); | |
687 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtSimulatedK0L%s",reweightname))); | |
f427cbed | 688 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedNeutron")); |
689 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiNeutron")); | |
690 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedOmega")); | |
691 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiOmega")); | |
692 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedXi")); | |
693 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiXi")); | |
694 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedXi0")); | |
695 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiXi0")); | |
696 | break; | |
697 | case 5: | |
698 | numeratorParent= (TH2F*)((TH2F*) out2->FindObject("EtSimulatedXi"))->Clone("allxi"); | |
699 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiXi")); | |
700 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedXi0")); | |
701 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiXi0")); | |
702 | break; | |
703 | case 6: | |
704 | numeratorParent = (TH2F*)((TH2F*) out2->FindObject("EtSimulatedOmega"))->Clone("allomega"); | |
705 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiOmega")); | |
706 | break; | |
707 | case 7: | |
708 | numeratorParent = (TH2F*)((TH2F*) out2->FindObject("EtSimulatedSigma"))->Clone("allsigma"); | |
709 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiSigma")); | |
710 | break; | |
b64de20c | 711 | case 8: |
f43fc416 | 712 | numeratorParent= (TH2F*)((TH2F*) out2->FindObject(Form("EtSimulatedLambda%s",reweightname)))->Clone("allneutral"); |
713 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtSimulatedAntiLambda%s",reweightname))); | |
714 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtSimulatedK0S%s",reweightname))); | |
715 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtSimulatedK0L%s",reweightname))); | |
b64de20c | 716 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedNeutron")); |
717 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiNeutron")); | |
718 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedOmega")); | |
719 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiOmega")); | |
720 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedXi")); | |
721 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiXi")); | |
722 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedXi0")); | |
723 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedAntiXi0")); | |
724 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedGamma")); | |
725 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedEta")); | |
726 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedPi0")); | |
727 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedOmega0")); | |
728 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedEPlus")); | |
729 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedEMinus")); | |
730 | break; | |
731 | case 9: | |
732 | numeratorParent= (TH2F*)((TH2F*) out2->FindObject("EtSimulatedGamma"))->Clone("allem"); | |
733 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedEta")); | |
734 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedPi0")); | |
735 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedOmega0")); | |
736 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedEPlus")); | |
737 | numeratorParent->Add((TH2F*) out2->FindObject("EtSimulatedEMinus")); | |
738 | break; | |
f427cbed | 739 | } |
740 | ||
741 | TH2F *allhad; | |
f43fc416 | 742 | //allhad=(TH2F*) ((TH2F*) out2->FindObject("EtSimulatedAllHadron"))->Clone("id"); |
743 | allhad=(TH2F*) ((TH2F*) out2->FindObject("EtSimulatedPiPlus"))->Clone("id"); | |
744 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedPiMinus")); | |
745 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedKMinus")); | |
746 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedKPlus")); | |
747 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedProton")); | |
748 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedAntiProton")); | |
749 | allhad->Add((TH2F*) out2->FindObject(Form("EtSimulatedLambda%s",reweightname))); | |
750 | allhad->Add((TH2F*) out2->FindObject(Form("EtSimulatedAntiLambda%s",reweightname))); | |
751 | allhad->Add((TH2F*) out2->FindObject(Form("EtSimulatedK0S%s",reweightname))); | |
752 | allhad->Add((TH2F*) out2->FindObject(Form("EtSimulatedK0L%s",reweightname))); | |
753 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedNeutron")); | |
754 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedAntiNeutron")); | |
755 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedEPlus")); | |
756 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedEMinus")); | |
757 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedOmega")); | |
758 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedAntiOmega")); | |
759 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedXi")); | |
760 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedAntiXi")); | |
761 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedSigma")); | |
762 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedAntiSigma")); | |
763 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedXi0")); | |
764 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedAntiXi0")); | |
765 | ||
b64de20c | 766 | if(hadronic){//if we are getting the correction for the hadronic only case... |
767 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedGamma")); | |
768 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedEta")); | |
769 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedPi0")); | |
770 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedOmega0")); | |
771 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedEPlus")); | |
772 | allhad->Add((TH2F*) out2->FindObject("EtSimulatedEMinus")); | |
773 | } | |
f427cbed | 774 | |
f427cbed | 775 | TH1D *denominator; |
776 | TH1D *numerator; | |
777 | if(eta){ | |
778 | int lowbin = numeratorParent->GetYaxis()->FindBin(-cut+.001);//make sure we don't accv0entally get the wrong bin | |
779 | int highbin = numeratorParent->GetYaxis()->FindBin(cut-.001); | |
a02dfa56 | 780 | //cout<<"Projecting from "<<numeratorParent->GetYaxis()->GetBinLowEdge(lowbin)<<" to "<<numeratorParent->GetYaxis()->GetBinLowEdge(highbin+1)<<endl; |
f427cbed | 781 | denominator = allhad->ProjectionX("name",lowbin,highbin); |
782 | numerator = numeratorParent->ProjectionX("numerator",lowbin,highbin); | |
783 | } | |
784 | else{ | |
785 | int lowbin = allhad->GetXaxis()->FindBin(cut);//make sure we don't accidentally get the wrong bin | |
786 | int highbin = allhad->GetXaxis()->GetNbins(); | |
a02dfa56 | 787 | //cout<<"Projecting from "<<allhad->GetXaxis()->GetBinLowEdge(lowbin)<<" to "<<allhad->GetXaxis()->GetBinLowEdge(highbin+1)<<endl; |
f427cbed | 788 | numerator = numeratorParent->ProjectionY("name",lowbin,highbin); |
789 | denominator = allhad->ProjectionY("denominator",lowbin,highbin); | |
790 | } | |
791 | numerator->Divide(denominator); | |
0e866ddc | 792 | //numerator->Rebin(2); |
793 | //numerator->Scale(0.5); | |
f427cbed | 794 | numerator->SetYTitle("E_{T}^{had,sample}/E_{T}^{had,total}"); |
795 | numerator->GetYaxis()->SetTitleOffset(1.2); | |
796 | numerator->SetMarkerColor(color); | |
797 | numerator->SetLineColor(color); | |
798 | numerator->SetMarkerStyle(marker); | |
a02dfa56 | 799 | delete denominator; |
800 | delete numeratorParent; | |
801 | delete allhad; | |
802 | //file->Close(); | |
48a07264 | 803 | numerator->SetName(name); |
f427cbed | 804 | return numerator; |
805 | ||
806 | } | |
807 | ||
b64de20c | 808 | //===============================CorrPtCut========================================= |
48a07264 | 809 | TH1D *GetHistoCorrPtCut(float ptcut, char *name, bool ispp, bool forSim, int mycase){ |
810 | file->cd(); | |
f427cbed | 811 | TH2F *allhad = ((TH2F*) out2->FindObject("EtSimulatedAllHadron"))->Clone("allhad"); |
48a07264 | 812 | TH2F *ptlow = ((TH2F*) out2->FindObject("EtSimulatedChargedHadronAssumingNoPt"))->Clone("ptlow"); |
813 | TH2F *pthigh; | |
814 | if(ptcut>0.14){//TPC cut off | |
815 | (TH2F*)pthigh =(TH2F*) ((TH2F*) out2->FindObject("EtSimulatedChargedHadronAssumingPtTPCCut"))->Clone("pthigh"); | |
816 | } | |
817 | else{ | |
818 | (TH2F*)pthigh =(TH2F*) ((TH2F*) out2->FindObject("EtSimulatedChargedHadronAssumingPtITSCut"))->Clone("pthigh"); | |
819 | } | |
f427cbed | 820 | |
821 | int lowbin = allhad->GetXaxis()->FindBin(0.0);//make sure we don't accidentally get the wrong bin | |
822 | int highbin = allhad->GetXaxis()->FindBin(ptcut); | |
823 | int nbins = allhad->GetXaxis()->GetNbins(); | |
a02dfa56 | 824 | //cout<<"Projecting from "<<allhad->GetXaxis()->GetBinLowEdge(lowbin)<<" to "<<allhad->GetXaxis()->GetBinLowEdge(highbin+1)<<endl; |
825 | //cout<<"Projecting from "<<allhad->GetXaxis()->GetBinLowEdge(lowbin)<<" to "<<allhad->GetXaxis()->GetBinLowEdge(nbins)<<endl; | |
f427cbed | 826 | |
a02dfa56 | 827 | //allhad->Sumw2(); |
48a07264 | 828 | TH1D *numerator; |
829 | TH1D *denominator; | |
830 | switch(mycase){ | |
831 | case -1: | |
832 | numerator = ptlow->ProjectionY("nameLow",lowbin,highbin); | |
833 | denominator = allhad->ProjectionY("denominatorLow",highbin,nbins); | |
834 | denominator->Add(ptlow); | |
835 | break; | |
836 | case 1: | |
837 | numerator = pthigh->ProjectionY("nameHigh",lowbin,highbin); | |
838 | denominator = allhad->ProjectionY("denominatorHigh",highbin,nbins); | |
839 | denominator->Add(pthigh); | |
840 | break; | |
841 | default: | |
842 | numerator = allhad->ProjectionY("name",lowbin,highbin); | |
843 | denominator = allhad->ProjectionY("denominator",lowbin,nbins); | |
844 | } | |
f427cbed | 845 | numerator->Divide(denominator); |
846 | numerator->SetYTitle("E_{T}^{had, p_{T}<cut-off}/E_{T}^{had, all p_{T}}"); | |
847 | numerator->GetYaxis()->SetTitleOffset(1.); | |
848 | numerator->GetYaxis()->SetTitleSize(0.08); | |
849 | numerator->GetYaxis()->SetLabelSize(0.05); | |
850 | numerator->GetXaxis()->SetTitleSize(0.08); | |
851 | numerator->GetXaxis()->SetLabelSize(0.05); | |
852 | numerator->GetXaxis()->SetTitleOffset(.6); | |
853 | //numerator->Rebin(2); | |
854 | //numerator->Scale(0.5); | |
855 | //numerator->Draw("e"); | |
a02dfa56 | 856 | delete allhad; |
857 | delete denominator; | |
48a07264 | 858 | delete ptlow; |
859 | delete pthigh; | |
860 | numerator->SetName(name); | |
f427cbed | 861 | return numerator; |
862 | ||
863 | } | |
864 | ||
48a07264 | 865 | Float_t CorrPtCut(float ptcut, char *prodname, char *shortprodname, bool ispp, bool forSim, int mycase){ |
f427cbed | 866 | |
867 | gStyle->SetOptTitle(0); | |
868 | gStyle->SetOptStat(0); | |
869 | gStyle->SetOptFit(0); | |
870 | TCanvas *c = new TCanvas("c","c",500,400); | |
871 | c->SetTopMargin(0.04); | |
872 | c->SetRightMargin(0.04); | |
873 | c->SetLeftMargin(0.181452); | |
874 | c->SetBottomMargin(0.134409); | |
875 | c->SetBorderSize(0); | |
876 | c->SetFillColor(0); | |
877 | c->SetFillColor(0); | |
878 | c->SetBorderMode(0); | |
879 | c->SetFrameFillColor(0); | |
880 | c->SetFrameBorderMode(0); | |
881 | ||
882 | ||
883 | ||
48a07264 | 884 | TH1D *High = GetHistoCorrPtCut(0.15-.001,"High",ispp,forSim,mycase); |
885 | TH1D *Low = GetHistoCorrPtCut(0.1-.001,"Low",ispp,forSim,mycase); | |
886 | TH1D *Lowest = GetHistoCorrPtCut(0.05-.001,"Lowest",ispp,forSim,mycase); | |
f427cbed | 887 | |
888 | TF1 *func = new TF1("func","[0]",-.7,.7); | |
889 | func->SetParameter(0,0.2); | |
890 | if(ptcut<.125){//its cuts | |
891 | Low->Fit(func); | |
892 | } | |
893 | else{//tpc cuts | |
894 | High->Fit(func); | |
895 | } | |
896 | ||
897 | High->SetMaximum(0.04); | |
898 | High->SetMinimum(0.0); | |
899 | High->SetMarkerColor(2); | |
900 | Low->SetMarkerColor(4); | |
901 | High->SetLineColor(2); | |
902 | Low->SetLineColor(4); | |
903 | High->SetMinimum(0.0); | |
904 | High->SetMarkerStyle(20); | |
905 | Low->SetMarkerStyle(21); | |
906 | Lowest->SetMarkerStyle(22); | |
907 | High->Draw(); | |
908 | Low->Draw("same"); | |
909 | Lowest->Draw("same"); | |
910 | ||
911 | ||
912 | ||
913 | TLatex *tex = new TLatex(-0.723444,0.0373593,prodname); | |
914 | tex->SetTextSize(0.0537634); | |
915 | tex->Draw(); | |
916 | TLegend *leg = new TLegend(0.217742,0.66129,0.477823,0.873656); | |
917 | leg->AddEntry(High,"p_{T} cut-off = 0.15 GeV/c"); | |
918 | leg->AddEntry(Low,"p_{T} cut-off = 0.1 GeV/c"); | |
919 | leg->AddEntry(Lowest,"p_{T} cut-off = 0.05 GeV/c"); | |
920 | leg->SetFillStyle(0); | |
921 | leg->SetFillColor(0); | |
922 | leg->SetBorderSize(0); | |
923 | leg->SetTextSize(0.0537634); | |
924 | leg->Draw(); | |
925 | ||
926 | if(ptcut<.125){//its cuts | |
927 | c->SaveAs(Form("pics/%s/fptcutITS.eps",shortprodname)); | |
928 | c->SaveAs(Form("pics/%s/fptcutITS.png",shortprodname)); | |
929 | } | |
930 | else{//tpc cuts | |
931 | c->SaveAs(Form("pics/%s/fptcutTPC.eps",shortprodname)); | |
932 | c->SaveAs(Form("pics/%s/fptcutTPC.png",shortprodname)); | |
933 | } | |
934 | ||
935 | float corr = func->GetParameter(0); | |
a02dfa56 | 936 | //cout<<"Pt cut correction: "<<1.0/(1.0-corr)<<endl; |
937 | delete High; | |
938 | delete Low; | |
939 | delete Lowest; | |
940 | delete func; | |
941 | delete c; | |
48a07264 | 942 | delete tex; |
943 | delete leg; | |
f427cbed | 944 | return 1.0/(1.0-corr); |
945 | } | |
b64de20c | 946 | |
947 | ||
948 | ||
949 | //==================================CorrNotID================================================= | |
48a07264 | 950 | TH1D *GetHistoCorrNotID(float etacut,char *name, bool TPC, bool eta, bool ispp, bool forSim){ |
951 | file->cd(); | |
952 | char *myname = mynameITS; | |
8663c99d | 953 | if(TPC) myname = mynameTPCITS; |
b64de20c | 954 | TH2F *notid = ((TH2F*) out2->FindObject(Form("EtReconstructed%sUnidentifiedAssumingPion",myname)))->Clone("notid"); |
955 | TH2F *nNotid = ((TH2F*) out2->FindObject(Form("EtNReconstructed%sUnidentified",myname)))->Clone("nNotid"); | |
0e866ddc | 956 | if(!eta){ |
48a07264 | 957 | //cout<<"Correction determined for all charged hadrons"<<endl; |
0e866ddc | 958 | notid->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedPiPlus",myname))); |
959 | notid->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedPiMinus",myname))); | |
960 | notid->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedKPlus",myname))); | |
961 | notid->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedKMinus",myname))); | |
962 | notid->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedProton",myname))); | |
963 | notid->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedAntiProton",myname))); | |
964 | nNotid->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%sPiPlus",myname))); | |
965 | nNotid->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%sPiMinus",myname))); | |
966 | nNotid->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%sKPlus",myname))); | |
967 | nNotid->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%sKMinus",myname))); | |
968 | nNotid->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%sProton",myname))); | |
969 | nNotid->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%sAntiProton",myname))); | |
970 | } | |
b64de20c | 971 | |
b64de20c | 972 | TH2F *id = ((TH2F*) out2->FindObject(Form("EtReconstructed%sUnidentified",myname)))->Clone("id"); |
0e866ddc | 973 | if(!eta){ |
974 | id->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedPiPlus",myname))); | |
975 | id->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedPiMinus",myname))); | |
976 | id->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedKPlus",myname))); | |
977 | id->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedKMinus",myname))); | |
978 | id->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedProton",myname))); | |
979 | id->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedAntiProton",myname))); | |
980 | } | |
b64de20c | 981 | |
0e866ddc | 982 | TH1D *nNotidProj; |
983 | TH1D *denominator; | |
984 | TH1D *numerator; | |
985 | if(eta){ | |
986 | int lowbin = notid->GetYaxis()->FindBin(-etacut+.001);//make sure we don't accv0entally get the wrong bin | |
987 | int highbin = notid->GetYaxis()->FindBin(etacut-.001); | |
48a07264 | 988 | //cout<<"Projecting from "<<notid->GetYaxis()->GetBinLowEdge(lowbin)<<" to "<<notid->GetYaxis()->GetBinLowEdge(highbin+1)<<endl; |
0e866ddc | 989 | denominator = id->ProjectionX("name",lowbin,highbin); |
990 | numerator = notid->ProjectionX("numerator",lowbin,highbin); | |
991 | nNotidProj = nNotid->ProjectionX("nNotidProj",lowbin,highbin); | |
992 | } | |
993 | else{ | |
48a07264 | 994 | //cout<<"Getting eta dependence"<<endl; |
0e866ddc | 995 | int lowbin = id->GetXaxis()->FindBin(etacut);//make sure we don't accidentally get the wrong bin |
996 | int highbin; | |
997 | if(etacut<0.15){//then we actually have ITS standalone tracks and we only want this to run from 0.1 to 0.15 because this will be used only for ITS standalone tracks | |
998 | highbin = id->GetXaxis()->FindBin(0.15); | |
999 | } | |
1000 | else{ | |
1001 | highbin = id->GetXaxis()->GetNbins(); | |
1002 | } | |
48a07264 | 1003 | //cout<<"Projecting from "<<id->GetXaxis()->GetBinLowEdge(lowbin)<<" to "<<id->GetXaxis()->GetBinLowEdge(highbin+1)<<endl; |
0e866ddc | 1004 | numerator = notid->ProjectionY("name",lowbin,highbin); |
1005 | denominator = id->ProjectionY("denominator",lowbin,highbin); | |
1006 | nNotidProj = nNotid->ProjectionY("nNotidProj",lowbin,highbin); | |
1007 | } | |
b64de20c | 1008 | TH1D *result = numerator; |
1009 | if(!denominator){ | |
1010 | cerr<<"Uh-oh! Can't find denominator!!"; | |
1011 | return numerator; | |
1012 | } | |
1013 | else{result->Divide(denominator);} | |
1014 | if(result->GetNbinsX() != nNotidProj->GetNbinsX()){ | |
1015 | cerr<<"Uh-oh! Can't rescale errors! "<<result->GetNbinsX()<<"!="<<nNotidProj->GetNbinsX()<<endl; | |
1016 | return result; | |
1017 | } | |
b64de20c | 1018 | if(!nNotidProj){ |
1019 | cerr<<"Uh-oh! Can't find histogram!!"; | |
1020 | return numerator; | |
1021 | } | |
0e866ddc | 1022 | //fixing the errors |
1023 | for(int i=1;i<=result->GetNbinsX();i++){ | |
1024 | Float_t value = result->GetBinContent(i); | |
1025 | Float_t valueerr = result->GetBinError(i); | |
1026 | Float_t n = nNotidProj->GetBinContent(i); | |
1027 | Float_t err; | |
1028 | if(n<=0) err = 0.0; | |
1029 | else{err= value/TMath::Power(n,0.5);} | |
1030 | result->SetBinError(i,err); | |
1031 | //cout<<"Was "<<valueerr<<", setting to "<<err<<endl; | |
b64de20c | 1032 | } |
1033 | result->SetYTitle("Ratio of E_{T}^{assuming pion}/E_{T}^{real}"); | |
1034 | result->GetYaxis()->SetTitleOffset(1.2); | |
a02dfa56 | 1035 | delete denominator; |
1036 | delete nNotidProj; | |
48a07264 | 1037 | delete notid; |
1038 | delete nNotid; | |
1039 | delete id; | |
1040 | result->SetName(name); | |
b64de20c | 1041 | return result; |
1042 | ||
1043 | } | |
1044 | ||
48a07264 | 1045 | TH1D *CorrNotID(float etacut,char *name, char *prodname, char *shortprodname, bool TPC, bool ispp, bool forSim){ |
b64de20c | 1046 | gStyle->SetOptTitle(0); |
1047 | gStyle->SetOptStat(0); | |
1048 | gStyle->SetOptFit(0); | |
1049 | TCanvas *c = new TCanvas("c","c",500,400); | |
1050 | c->SetTopMargin(0.04); | |
1051 | c->SetRightMargin(0.04); | |
1052 | c->SetBorderSize(0); | |
1053 | c->SetFillColor(0); | |
1054 | c->SetFillColor(0); | |
1055 | c->SetBorderMode(0); | |
1056 | c->SetFrameFillColor(0); | |
1057 | c->SetFrameBorderMode(0); | |
1058 | ||
48a07264 | 1059 | TH1D *PHOS = GetHistoCorrNotID(etacut,name,TPC,true,ispp,forSim); |
b64de20c | 1060 | PHOS->SetMarkerColor(2); |
1061 | PHOS->SetLineColor(2); | |
b64de20c | 1062 | PHOS->SetAxisRange(0.0,4); |
1063 | if(TPC){ | |
1064 | PHOS->SetMaximum(1.1); | |
1065 | PHOS->SetMinimum(0.85); | |
1066 | } | |
1067 | else{ | |
b64de20c | 1068 | PHOS->SetAxisRange(0.0,0.5); |
1069 | } | |
a02dfa56 | 1070 | PHOS->SetMarkerStyle(20); |
b64de20c | 1071 | PHOS->Draw(); |
1072 | TLatex *tex = new TLatex(0.161478,1.0835,prodname); | |
1073 | tex->SetTextSize(0.0537634); | |
1074 | tex->Draw(); | |
48a07264 | 1075 | char *detector = detectorEMCAL; |
1076 | if(etacut<0.2) detector = detectorPHOS; | |
b64de20c | 1077 | if(TPC){ |
1078 | sprintf(epsname,"pics/%s/fnotidTPC%s.eps",shortprodname,detector); | |
1079 | sprintf(pngname,"pics/%s/fnotidTPC%s.png",shortprodname,detector); | |
1080 | } | |
1081 | else{ | |
1082 | sprintf(epsname,"pics/%s/fnotidITS%s.eps",shortprodname,detector); | |
1083 | sprintf(pngname,"pics/%s/fnotidITS%s.png",shortprodname,detector); | |
1084 | } | |
1085 | ||
1086 | c->SaveAs(epsname); | |
1087 | c->SaveAs(pngname); | |
a02dfa56 | 1088 | delete c; |
48a07264 | 1089 | delete tex; |
1090 | PHOS->SetName(name); | |
b64de20c | 1091 | return PHOS; |
1092 | } | |
1093 | ||
48a07264 | 1094 | Float_t CorrNotIDConst(float ptcut, float etacut,char *name, char *prodname, char *shortprodname, bool TPC, bool ispp, bool forSim){ |
1095 | if(!forSim){ | |
1096 | if(ispp){ | |
1097 | return 0.996; | |
1098 | } | |
1099 | else{ | |
1100 | return 0.976; | |
1101 | } | |
1102 | } | |
0e866ddc | 1103 | gStyle->SetOptTitle(0); |
1104 | gStyle->SetOptStat(0); | |
1105 | gStyle->SetOptFit(0); | |
1106 | TCanvas *c = new TCanvas("c","c",500,400); | |
1107 | c->SetTopMargin(0.04); | |
1108 | c->SetRightMargin(0.04); | |
1109 | c->SetBorderSize(0); | |
1110 | c->SetFillColor(0); | |
1111 | c->SetFillColor(0); | |
1112 | c->SetBorderMode(0); | |
1113 | c->SetFrameFillColor(0); | |
1114 | c->SetFrameBorderMode(0); | |
1115 | ||
48a07264 | 1116 | TH1D *PHOS = GetHistoCorrNotID(ptcut,name,TPC,false,ispp,forSim); |
0e866ddc | 1117 | PHOS->SetMarkerColor(2); |
1118 | PHOS->SetLineColor(2); | |
1119 | PHOS->SetMaximum(1.01); | |
1120 | PHOS->SetMinimum(0.98); | |
1121 | TF1 *func = new TF1("func","[0]",-etacut,etacut); | |
1122 | PHOS->Fit(func,"","",-etacut,etacut); | |
1123 | PHOS->SetMarkerStyle(20); | |
1124 | PHOS->Draw(); | |
1125 | TLatex *tex = new TLatex(0.161478,1.0835,prodname); | |
1126 | tex->SetTextSize(0.0537634); | |
1127 | tex->Draw(); | |
48a07264 | 1128 | char *detector = detectorEMCAL; |
1129 | if(etacut<0.2) detector = detectorPHOS; | |
0e866ddc | 1130 | if(TPC){ |
1131 | sprintf(epsname,"pics/%s/fnotidConstTPC%s.eps",shortprodname,detector); | |
1132 | sprintf(pngname,"pics/%s/fnotidConstTPC%s.png",shortprodname,detector); | |
1133 | } | |
1134 | else{ | |
1135 | sprintf(epsname,"pics/%s/fnotidConstITS%s.eps",shortprodname,detector); | |
1136 | sprintf(pngname,"pics/%s/fnotidConstITS%s.png",shortprodname,detector); | |
1137 | } | |
1138 | ||
1139 | c->SaveAs(epsname); | |
1140 | c->SaveAs(pngname); | |
1141 | delete c; | |
48a07264 | 1142 | delete PHOS; |
1143 | float value = func->GetParameter(0); | |
1144 | delete func; | |
1145 | delete tex; | |
1146 | return value; | |
0e866ddc | 1147 | } |
1148 | ||
b64de20c | 1149 | //==================================CorrNoID================================================= |
48a07264 | 1150 | TH1D *GetHistoNoID(float etacut, char *name, bool eta, bool TPC, bool ispp, bool forSim){ |
1151 | file->cd(); | |
1152 | char *myname = mynameITS; | |
8663c99d | 1153 | if(TPC) myname = mynameTPCITS; |
0e866ddc | 1154 | TH2F *notid = ((TH2F*) out2->FindObject(Form("EtReconstructed%sChargedHadronAssumingPion",myname)))->Clone("notid"); |
1155 | TH2F *nNotid = ((TH2F*) out2->FindObject(Form("EtNReconstructed%sChargedHadron",myname)))->Clone("nNotid"); | |
b64de20c | 1156 | |
0e866ddc | 1157 | TH2F *id = ((TH2F*) out2->FindObject(Form("EtReconstructed%sChargedHadron",myname)))->Clone("id"); |
b64de20c | 1158 | int lowbin = id->GetYaxis()->FindBin(-etacut+.001);//make sure we don't accidentally get the wrong bin |
1159 | int highbin = id->GetYaxis()->FindBin(etacut-.001); | |
b64de20c | 1160 | |
0e866ddc | 1161 | TH1D *nNotidProj; |
1162 | TH1D *denominator; | |
1163 | TH1D *numerator; | |
1164 | if(eta){ | |
1165 | int lowbin = notid->GetYaxis()->FindBin(-etacut+.001);//make sure we don't accv0entally get the wrong bin | |
1166 | int highbin = notid->GetYaxis()->FindBin(etacut-.001); | |
48a07264 | 1167 | //cout<<"Projecting from "<<notid->GetYaxis()->GetBinLowEdge(lowbin)<<" to "<<notid->GetYaxis()->GetBinLowEdge(highbin+1)<<endl; |
0e866ddc | 1168 | denominator = id->ProjectionX("name",lowbin,highbin); |
1169 | numerator = notid->ProjectionX("numerator",lowbin,highbin); | |
1170 | nNotidProj = nNotid->ProjectionX("nNotidProj",lowbin,highbin); | |
1171 | } | |
1172 | else{ | |
48a07264 | 1173 | //cout<<"Getting eta dependence"<<endl; |
0e866ddc | 1174 | int lowbin = id->GetXaxis()->FindBin(etacut);//make sure we don't accidentally get the wrong bin |
1175 | int highbin; | |
1176 | if(etacut<0.15){//then we actually have ITS standalone tracks and we only want this to run from 0.1 to 0.15 because this will be used only for ITS standalone tracks | |
1177 | highbin = id->GetXaxis()->FindBin(0.15); | |
1178 | } | |
1179 | else{ | |
1180 | highbin = id->GetXaxis()->GetNbins(); | |
1181 | } | |
48a07264 | 1182 | //cout<<"Projecting from "<<id->GetXaxis()->GetBinLowEdge(lowbin)<<" to "<<id->GetXaxis()->GetBinLowEdge(highbin+1)<<endl; |
0e866ddc | 1183 | numerator = notid->ProjectionY("name",lowbin,highbin); |
1184 | denominator = id->ProjectionY("denominator",lowbin,highbin); | |
1185 | nNotidProj = nNotid->ProjectionY("nNotidProj",lowbin,highbin); | |
1186 | } | |
a02dfa56 | 1187 | if(denominator) numerator->Divide(denominator); |
b64de20c | 1188 | |
1189 | if(numerator->GetNbinsX() != nNotidProj->GetNbinsX()){ | |
1190 | cerr<<"Uh-oh! Can't rescale errors! "<<numerator->GetNbinsX()<<"!="<<nNotidProj->GetNbinsX()<<endl; | |
1191 | return numerator; | |
1192 | } | |
1193 | //fixing the errors | |
1194 | for(int i=1;i<=numerator->GetNbinsX();i++){ | |
1195 | Float_t value = numerator->GetBinContent(i); | |
1196 | Float_t valueerr = numerator->GetBinError(i); | |
1197 | Float_t n = nNotidProj->GetBinContent(i); | |
a02dfa56 | 1198 | Float_t err=0.; |
1199 | if(n>0.0){ | |
1200 | err = value/TMath::Power(n,0.5); | |
1201 | } | |
1202 | numerator->SetBinError(i,err);; | |
b64de20c | 1203 | } |
1204 | numerator->SetYTitle("Ratio of E_{T}^{assuming pion}/E_{T}^{real}"); | |
1205 | numerator->GetYaxis()->SetTitleOffset(1.2); | |
a02dfa56 | 1206 | delete denominator; |
1207 | delete nNotidProj; | |
48a07264 | 1208 | delete notid; |
1209 | delete nNotid; | |
1210 | delete id; | |
1211 | numerator->SetName(name); | |
b64de20c | 1212 | return numerator; |
1213 | ||
1214 | } | |
1215 | ||
48a07264 | 1216 | TH1D *CorrNoID(float etacut,char *name, char *prodname, char *shortprodname, bool ispp, bool forSim){ |
b64de20c | 1217 | gStyle->SetOptTitle(0); |
1218 | gStyle->SetOptStat(0); | |
1219 | gStyle->SetOptFit(0); | |
1220 | TCanvas *c = new TCanvas("c","c",500,400); | |
1221 | c->SetTopMargin(0.04); | |
1222 | c->SetRightMargin(0.04); | |
1223 | c->SetBorderSize(0); | |
1224 | c->SetFillColor(0); | |
1225 | c->SetFillColor(0); | |
1226 | c->SetBorderMode(0); | |
1227 | c->SetFrameFillColor(0); | |
1228 | c->SetFrameBorderMode(0); | |
1229 | ||
48a07264 | 1230 | TH1D *PHOS = GetHistoNoID(etacut,name,true,true,ispp,forSim); |
b64de20c | 1231 | PHOS->SetMarkerColor(2); |
1232 | PHOS->SetLineColor(2); | |
1233 | PHOS->SetAxisRange(0.0,4); | |
1234 | PHOS->SetMaximum(1.1); | |
1235 | PHOS->SetMinimum(0.85); | |
1236 | PHOS->SetMarkerStyle(20);; | |
1237 | PHOS->Draw(); | |
1238 | TLatex *tex = new TLatex(0.161478,1.0835,prodname); | |
1239 | tex->SetTextSize(0.0537634); | |
1240 | tex->Draw(); | |
1241 | ||
1242 | ||
48a07264 | 1243 | char *detector = detectorEMCAL; |
1244 | if(etacut<0.2) detector = detectorPHOS; | |
b64de20c | 1245 | sprintf(epsname,"pics/%s/fnoid%s.eps",shortprodname,detector); |
1246 | sprintf(pngname,"pics/%s/fnoid%s.png",shortprodname,detector); | |
1247 | ||
1248 | c->SaveAs(epsname); | |
1249 | c->SaveAs(pngname); | |
a02dfa56 | 1250 | delete c; |
48a07264 | 1251 | delete tex; |
1252 | PHOS->SetName(name); | |
b64de20c | 1253 | return PHOS; |
1254 | ||
0e866ddc | 1255 | } |
1256 | ||
48a07264 | 1257 | Float_t CorrNoIDConst(float etacut, float ptcut,char *name, char *prodname, char *shortprodname, bool ispp, bool forSim){ |
0e866ddc | 1258 | gStyle->SetOptTitle(0); |
1259 | gStyle->SetOptStat(0); | |
1260 | gStyle->SetOptFit(0); | |
1261 | TCanvas *c = new TCanvas("c","c",500,400); | |
1262 | c->SetTopMargin(0.04); | |
1263 | c->SetRightMargin(0.04); | |
1264 | c->SetBorderSize(0); | |
1265 | c->SetFillColor(0); | |
1266 | c->SetFillColor(0); | |
1267 | c->SetBorderMode(0); | |
1268 | c->SetFrameFillColor(0); | |
1269 | c->SetFrameBorderMode(0); | |
1270 | ||
1271 | bool TPC = true; | |
1272 | if(ptcut<.15) TPC = false; | |
48a07264 | 1273 | TH1D *PHOS = GetHistoNoID(ptcut,name,false,TPC,ispp,forSim); |
0e866ddc | 1274 | TF1 *func = new TF1("func","[0]",-etacut,etacut); |
1275 | PHOS->Fit(func,"","",-etacut,etacut); | |
1276 | PHOS->SetMarkerColor(2); | |
1277 | PHOS->SetLineColor(2); | |
1278 | PHOS->SetMaximum(1.1); | |
1279 | PHOS->SetMinimum(0.85); | |
1280 | PHOS->SetMarkerStyle(20);; | |
1281 | PHOS->Draw(); | |
1282 | TLatex *tex = new TLatex(0.161478,1.0835,prodname); | |
1283 | tex->SetTextSize(0.0537634); | |
1284 | tex->Draw(); | |
1285 | ||
1286 | ||
48a07264 | 1287 | char *detector = detectorEMCAL; |
1288 | if(etacut<0.2) detector = detectorPHOS; | |
0e866ddc | 1289 | if(TPC){ |
1290 | sprintf(epsname,"pics/%s/fnoid%sTPC.eps",shortprodname,detector); | |
1291 | sprintf(pngname,"pics/%s/fnoid%sTPC.png",shortprodname,detector); | |
1292 | } | |
1293 | else{ | |
1294 | sprintf(epsname,"pics/%s/fnoid%sITS.eps",shortprodname,detector); | |
1295 | sprintf(pngname,"pics/%s/fnoid%sITS.png",shortprodname,detector); | |
1296 | } | |
1297 | ||
1298 | c->SaveAs(epsname); | |
1299 | c->SaveAs(pngname); | |
1300 | delete c; | |
48a07264 | 1301 | delete PHOS; |
1302 | float value = func->GetParameter(0); | |
1303 | delete func; | |
1304 | delete tex; | |
1305 | return value; | |
0e866ddc | 1306 | |
b64de20c | 1307 | } |
1308 | //==================================Efficiency================================================= | |
1309 | TH1D* bayneseffdiv(TH1D* numerator, TH1D* denominator,Char_t* name) | |
1310 | { | |
1311 | if(!numerator){ | |
1312 | cerr<<"Error: numerator does not exist!"<<endl; | |
1313 | return NULL; | |
1314 | } | |
1315 | if(!denominator){ | |
1316 | cerr<<"Error: denominator does not exist!"<<endl; | |
1317 | return NULL; | |
1318 | } | |
1319 | TH1D* result = (TH1D*)numerator->Clone(name); | |
1320 | Int_t nbins = numerator->GetNbinsX(); | |
1321 | for (Int_t ibin=0; ibin<= nbins+1; ++ibin) { | |
1322 | Double_t numeratorVal = numerator->GetBinContent(ibin); | |
1323 | Double_t denominatorVal = denominator->GetBinContent(ibin); | |
1324 | // Check if the errors are right or the thing is scaled | |
1325 | Double_t numeratorValErr = numerator->GetBinError(ibin); | |
1326 | if (!(numeratorValErr==0. || numeratorVal ==0.) ) { | |
1327 | Double_t rescale = numeratorValErr*numeratorValErr/numeratorVal; | |
1328 | numeratorVal /= rescale; | |
1329 | } | |
1330 | Double_t denominatorValErr = denominator->GetBinError(ibin); | |
1331 | if (!(denominatorValErr==0. || denominatorVal==0. )) { | |
1332 | Double_t rescale = denominatorValErr*denominatorValErr/denominatorVal; | |
1333 | denominatorVal /= rescale; | |
1334 | } | |
1335 | Double_t quotient = 0.; | |
1336 | if (denominatorVal!=0.) { | |
1337 | quotient = numeratorVal/denominatorVal; | |
1338 | } | |
1339 | Double_t quotientErr=0; | |
1340 | if(numeratorVal>0.0 && denominatorVal>0.0 && (denominatorVal+2.0)>0.0 && (denominatorVal+3.0) >0.0){ | |
1341 | double argument = (numeratorVal+1.0)/(denominatorVal+2.0)* | |
1342 | ((numeratorVal+2.0)/(denominatorVal+3.0)-(numeratorVal+1.0)/(denominatorVal+2.0)); | |
1343 | double test = TMath::Power(TMath::Abs(argument),0.5); | |
1344 | quotientErr = TMath::Sqrt( TMath::Abs( | |
1345 | (numeratorVal+1.0)/(denominatorVal+2.0)* | |
1346 | ((numeratorVal+2.0)/(denominatorVal+3.0)-(numeratorVal+1.0)/(denominatorVal+2.0)))); | |
1347 | } | |
1348 | result->SetBinContent(ibin,quotient); | |
1349 | result->SetBinError(ibin,quotientErr); | |
1350 | //cout<<"Setting bin "<<ibin<<" to "<<quotient<<" "<<numeratorVal<<"/"<<denominatorVal<<endl; | |
1351 | } | |
1352 | return result; | |
1353 | } | |
1354 | ||
1355 | ||
1356 | ||
48a07264 | 1357 | TH1D *GetHistoEfficiency(float cut, char *name, int mycase, int color, int marker,bool TPC,bool ITS, int cb, int cblast){ |
b64de20c | 1358 | bool eta = true; |
48a07264 | 1359 | file->cd(); |
1360 | char *myname = mynameITS; | |
8663c99d | 1361 | if(TPC && !ITS){ myname = mynameTPCITS;cout<<"I was here I should not be called"<<endl;} |
48a07264 | 1362 | if(TPC&&ITS) myname = mynameTPCITS; |
8663c99d | 1363 | char *mynamealt = mynameTPCITS; |
b64de20c | 1364 | TH2F *numeratorParent; |
1365 | switch(mycase){ | |
1366 | case 0: | |
48a07264 | 1367 | if(cblast != -1){//add more centrality bins |
1368 | for(int i=cb;i<=cblast;i++){ | |
1369 | if(i==cb) numeratorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"PiPlus",i)))->Clone("RecoHadron"); | |
1370 | else{numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"PiPlus",i)));} | |
1371 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"PiMinus",i))); | |
1372 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"KMinus",i))); | |
1373 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"KPlus",i))); | |
1374 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"Proton",i))); | |
1375 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"AntiProton",i))); | |
8663c99d | 1376 | if(!TPC&&ITS){//ITS Standalone tracks - from leftover hits, don't want to double count |
1377 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"PiPlus",i))); | |
1378 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"PiMinus",i))); | |
1379 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"KMinus",i))); | |
1380 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"KPlus",i))); | |
1381 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"Proton",i))); | |
1382 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"AntiProton",i))); | |
1383 | } | |
48a07264 | 1384 | } |
1385 | } | |
1386 | else{ | |
1387 | numeratorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"PiPlus")))->Clone("RecoHadron"); | |
1388 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"PiMinus"))); | |
1389 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"KMinus"))); | |
1390 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"KPlus"))); | |
1391 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"Proton"))); | |
1392 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"AntiProton"))); | |
8663c99d | 1393 | if(!TPC&&ITS){//ITS Standalone tracks - from leftover hits, don't want to double count |
1394 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"PiPlus"))); | |
1395 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"PiMinus"))); | |
1396 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"KMinus"))); | |
1397 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"KPlus"))); | |
1398 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"Proton"))); | |
1399 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"AntiProton"))); | |
1400 | } | |
48a07264 | 1401 | } |
b64de20c | 1402 | break; |
1403 | case 1://pion | |
48a07264 | 1404 | if(cblast != -1){//add more centrality bins |
1405 | for(int i=cb;i<=cblast;i++){ | |
1406 | if(i==cb) numeratorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"PiPlus",i)))->Clone("RecoPion"); | |
1407 | else{numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"PiPlus",i)));} | |
1408 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"PiMinus",i))); | |
8663c99d | 1409 | if(!TPC&&ITS){//ITS Standalone tracks - from leftover hits, don't want to double count |
1410 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"PiMinus",i))); | |
1411 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"PiPlus",i))); | |
1412 | } | |
48a07264 | 1413 | } |
1414 | } | |
1415 | else{ | |
1416 | numeratorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"PiPlus")))->Clone("RecoPion"); | |
1417 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"PiMinus"))); | |
8663c99d | 1418 | if(!TPC&&ITS){//ITS Standalone tracks - from leftover hits, don't want to double count |
1419 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"PiPlus"))); | |
1420 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"PiMinus"))); | |
1421 | } | |
48a07264 | 1422 | } |
b64de20c | 1423 | break; |
1424 | case 2://kaon | |
48a07264 | 1425 | if(cblast != -1){//add more centrality bins |
1426 | for(int i=cb;i<=cblast;i++){ | |
1427 | if(i==cb) numeratorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"KPlus",i)))->Clone("RecoKaon"); | |
1428 | else{numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"KPlus",i)));} | |
1429 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"KMinus",i))); | |
8663c99d | 1430 | if(!TPC&&ITS){//ITS Standalone tracks - from leftover hits, don't want to double count |
1431 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"KPlus",i))); | |
1432 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"KMinus",i))); | |
1433 | } | |
48a07264 | 1434 | } |
1435 | } | |
1436 | else{ | |
8663c99d | 1437 | // cout<<"I am kaoning here !"<<endl; |
48a07264 | 1438 | numeratorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"KPlus")))->Clone("RecoKaon"); |
1439 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"KMinus"))); | |
8663c99d | 1440 | if(!TPC&&ITS){//ITS Standalone tracks - from leftover hits, don't want to double count |
1441 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"KPlus"))); | |
1442 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"KMinus"))); | |
1443 | } | |
1444 | //cout<<"Numerator "<<numeratorParent->GetEntries()<<endl; | |
48a07264 | 1445 | } |
b64de20c | 1446 | break; |
1447 | case 3://proton | |
48a07264 | 1448 | if(cblast != -1){//add more centrality bins |
1449 | for(int i=cb;i<=cblast;i++){ | |
1450 | if(i==cb) numeratorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"Proton",i)))->Clone("RecoProton"); | |
1451 | else{numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"Proton",i)));} | |
1452 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",myname,"AntiProton",i))); | |
8663c99d | 1453 | if(!TPC&&ITS){//ITS Standalone tracks - from leftover hits, don't want to double count |
1454 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"Proton",i))); | |
1455 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%sCB%i",mynamealt,"AntiProton",i))); | |
1456 | } | |
48a07264 | 1457 | } |
1458 | } | |
1459 | else{ | |
8663c99d | 1460 | //cout<<"I am protoning here !"<<endl; |
48a07264 | 1461 | numeratorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"Proton")))->Clone("RecoProton"); |
1462 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",myname,"AntiProton"))); | |
8663c99d | 1463 | if(!TPC&&ITS){//ITS Standalone tracks - from leftover hits, don't want to double count |
1464 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"Proton"))); | |
1465 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s",mynamealt,"AntiProton"))); | |
1466 | } | |
1467 | //cout<<"Numerator "<<numeratorParent->GetEntries()<<endl; | |
48a07264 | 1468 | } |
b64de20c | 1469 | break; |
1470 | case 4://electron | |
48a07264 | 1471 | numeratorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s%s",myname,"EPlus",cbname)))->Clone("RecoElectron"); |
1472 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s%s",myname,"EMinus",cbname))); | |
8663c99d | 1473 | if(!TPC&&ITS){//ITS Standalone tracks - from leftover hits, don't want to double count |
1474 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s%s",mynamealt,"EPlus",cbname))); | |
1475 | numeratorParent->Add((TH2F*) out2->FindObject(Form("EtNReconstructed%s%s%s",mynamealt,"EMinus",cbname))); | |
1476 | } | |
b64de20c | 1477 | break; |
1478 | } | |
1479 | TH2F *denominatorParent; | |
1480 | switch(mycase){ | |
1481 | case 0: | |
48a07264 | 1482 | if(cblast != -1){//add more centrality bins |
1483 | denominatorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNSimulatedChargedHadronCB%i",cb)))->Clone("RecoHadron"); | |
1484 | for(int i=cb+1;i<=cblast;i++){ | |
1485 | denominatorParent->Add((TH2F*) out2->FindObject(Form("EtNSimulatedChargedHadronCB%i",i))); | |
1486 | } | |
1487 | } | |
1488 | else{ | |
1489 | denominatorParent = (TH2F*)((TH2F*) out2->FindObject("EtNSimulatedChargedHadron"))->Clone("RecoHadron"); | |
1490 | } | |
b64de20c | 1491 | break; |
1492 | case 1://pion | |
48a07264 | 1493 | if(cblast != -1){//add more centrality bins |
1494 | denominatorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNSimulatedPiPlusCB%i",cb)))->Clone("RecoPion"); | |
1495 | denominatorParent->Add((TH2F*) out2->FindObject(Form("EtNSimulatedPiMinusCB%i",cb))); | |
1496 | for(int i=cb+1;i<=cblast;i++){ | |
1497 | denominatorParent->Add((TH2F*) out2->FindObject(Form("EtNSimulatedPiPlusCB%i",i))); | |
1498 | denominatorParent->Add((TH2F*) out2->FindObject(Form("EtNSimulatedPiMinusCB%i",i))); | |
1499 | } | |
1500 | } | |
1501 | else{ | |
1502 | denominatorParent = (TH2F*)((TH2F*) out2->FindObject("EtNSimulatedPiPlus"))->Clone("RecoPion"); | |
1503 | denominatorParent->Add((TH2F*) out2->FindObject("EtNSimulatedPiMinus")); | |
1504 | } | |
b64de20c | 1505 | break; |
1506 | case 2://kaon | |
48a07264 | 1507 | if(cblast != -1){//add more centrality bins |
1508 | denominatorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNSimulatedKPlusCB%i",cb)))->Clone("RecoKaon"); | |
1509 | denominatorParent->Add((TH2F*) out2->FindObject(Form("EtNSimulatedKMinusCB%i",cb))); | |
1510 | for(int i=cb+1;i<=cblast;i++){ | |
1511 | denominatorParent->Add((TH2F*) out2->FindObject(Form("EtNSimulatedKPlusCB%i",i))); | |
1512 | denominatorParent->Add((TH2F*) out2->FindObject(Form("EtNSimulatedKMinusCB%i",i))); | |
1513 | } | |
1514 | } | |
1515 | else{ | |
1516 | denominatorParent = (TH2F*)((TH2F*) out2->FindObject("EtNSimulatedKPlus"))->Clone("RecoKaon"); | |
1517 | denominatorParent->Add((TH2F*) out2->FindObject("EtNSimulatedKMinus")); | |
1518 | } | |
b64de20c | 1519 | break; |
1520 | case 3://proton | |
48a07264 | 1521 | if(cblast != -1){//add more centrality bins |
1522 | for(int i=cb;i<=cblast;i++){ | |
1523 | if(cb==i)denominatorParent = (TH2F*)((TH2F*) out2->FindObject(Form("EtNSimulatedProtonCB%i",i)))->Clone("RecoProton"); | |
1524 | else{denominatorParent->Add((TH2F*) out2->FindObject(Form("EtNSimulatedProtonCB%i",i)));} | |
1525 | denominatorParent->Add((TH2F*) out2->FindObject(Form("EtNSimulatedAntiProtonCB%i",i))); | |
1526 | } | |
1527 | } | |
1528 | else{ | |
1529 | denominatorParent = (TH2F*)((TH2F*) out2->FindObject("EtNSimulatedProton"))->Clone("RecoProton"); | |
1530 | denominatorParent->Add((TH2F*) out2->FindObject("EtNSimulatedAntiProton")); | |
1531 | } | |
b64de20c | 1532 | break; |
1533 | case 4://electron | |
1534 | denominatorParent = (TH2F*)((TH2F*) out2->FindObject("EtNSimulatedEPlus"))->Clone("RecoElectron"); | |
1535 | denominatorParent->Add((TH2F*) out2->FindObject("EtNSimulatedEMinus")); | |
1536 | break; | |
1537 | } | |
b64de20c | 1538 | TH1D *denominator; |
1539 | TH1D *numerator; | |
1540 | if(eta){ | |
1541 | int lowbin = numeratorParent->GetYaxis()->FindBin(-cut+.001);//make sure we don't accv0entally get the wrong bin | |
1542 | int highbin = numeratorParent->GetYaxis()->FindBin(cut-.001); | |
a02dfa56 | 1543 | //cout<<"Projecting from "<<numeratorParent->GetYaxis()->GetBinLowEdge(lowbin)<<" to "<<numeratorParent->GetYaxis()->GetBinLowEdge(highbin+1)<<endl; |
b64de20c | 1544 | denominator = denominatorParent->ProjectionX(Form("garbage%s",name),lowbin,highbin); |
1545 | numerator = numeratorParent->ProjectionX(name,lowbin,highbin); | |
1546 | } | |
1547 | else{ | |
1548 | int lowbin = denominatorParent->GetXaxis()->FindBin(cut);//make sure we don't accidentally get the wrong bin | |
1549 | int highbin = denominatorParent->GetXaxis()->GetNbins(); | |
a02dfa56 | 1550 | //cout<<"Projecting from "<<denominatorParent->GetXaxis()->GetBinLowEdge(lowbin)<<" to "<<denominatorParent->GetXaxis()->GetBinLowEdge(highbin+1)<<endl; |
b64de20c | 1551 | numerator = numeratorParent->ProjectionY(name,lowbin,highbin); |
1552 | denominator = denominatorParent->ProjectionY(Form("denominator%s",name),lowbin,highbin); | |
1553 | } | |
1554 | delete numeratorParent; | |
1555 | delete denominatorParent; | |
1556 | //numerator->Divide(denominator); | |
1557 | TH1D *result = bayneseffdiv((TH1D*) numerator,(TH1D*)denominator,name); | |
1558 | //result->Rebin(2); | |
1559 | //result->Scale(0.5); | |
1560 | result->SetYTitle("Efficiency"); | |
1561 | result->GetYaxis()->SetTitleOffset(0.8); | |
1562 | result->GetXaxis()->SetTitleOffset(0.8); | |
1563 | result->GetYaxis()->SetLabelSize(0.05); | |
1564 | result->GetXaxis()->SetLabelSize(0.05); | |
1565 | result->GetYaxis()->SetTitleSize(0.05); | |
1566 | result->GetXaxis()->SetTitleSize(0.05); | |
1567 | result->SetMarkerColor(color); | |
1568 | result->SetLineColor(color); | |
1569 | result->SetMarkerStyle(marker); | |
a02dfa56 | 1570 | //result->SetName(name); |
b64de20c | 1571 | //result->Draw("e"); |
a02dfa56 | 1572 | delete denominator; |
1573 | delete numerator; | |
48a07264 | 1574 | delete numeratorParent; |
1575 | delete denominatorParent; | |
1576 | result->SetName(name); | |
b64de20c | 1577 | return result; |
1578 | ||
1579 | } | |
1580 | ||
48a07264 | 1581 | void CorrEfficiencyPlots(bool TPC, char *prodname, char *shortprodname){ |
f43fc416 | 1582 | bool ITS = true; |
b64de20c | 1583 | gStyle->SetOptTitle(0); |
1584 | gStyle->SetOptStat(0); | |
1585 | gStyle->SetOptFit(0); | |
1586 | TCanvas *c = new TCanvas("c","c",600,400); | |
1587 | c->SetTopMargin(0.02); | |
1588 | c->SetRightMargin(0.02); | |
1589 | c->SetBorderSize(0); | |
1590 | c->SetFillColor(0); | |
1591 | c->SetFillColor(0); | |
1592 | c->SetBorderMode(0); | |
1593 | c->SetFrameFillColor(0); | |
1594 | c->SetFrameBorderMode(0); | |
1595 | //c->SetLogx(); | |
1596 | ||
1597 | int colortotal = 1; | |
1598 | int colorpi = 2; | |
1599 | int colork = 3; | |
1600 | int colorp = 4; | |
1601 | int phosmarker = 20; | |
1602 | int emcalmarker = 24; | |
1603 | float ptcut1 = 0.05; | |
1604 | float ptcut2 = 0.1; | |
48a07264 | 1605 | TH1D *PHOStotal = GetHistoEfficiency(0.12,"PHOStotal",0,colortotal,phosmarker,TPC,ITS); |
1606 | TH1D *PHOSpi = GetHistoEfficiency(0.12,"PHOSpi",1,colorpi,phosmarker,TPC,ITS); | |
1607 | TH1D *PHOSp = GetHistoEfficiency(0.12,"PHOSp",2,colork,phosmarker,TPC,ITS); | |
1608 | TH1D *PHOSk = GetHistoEfficiency(0.12,"PHOSk",3,colorp,phosmarker,TPC,ITS); | |
b64de20c | 1609 | if(!TPC){PHOStotal->GetXaxis()->SetRange(PHOStotal->GetXaxis()->FindBin(0.05),PHOStotal->GetXaxis()->FindBin(1.0));} |
1610 | else{PHOStotal->GetXaxis()->SetRange(PHOStotal->GetXaxis()->FindBin(0.15),PHOStotal->GetXaxis()->FindBin(3.0));} | |
1611 | PHOStotal->SetMinimum(0.0); | |
1612 | PHOStotal->SetMaximum(1.0); | |
1613 | PHOStotal->Draw(); | |
1614 | PHOSpi->Draw("same"); | |
1615 | PHOSp->Draw("same"); | |
1616 | PHOSk->Draw("same"); | |
48a07264 | 1617 | TH1D *EMCALtotal = GetHistoEfficiency(0.7,"EMCALtotal",0,colortotal,emcalmarker,TPC,ITS); |
1618 | TH1D *EMCALpi = GetHistoEfficiency(0.7,"EMCALpi",1,colorpi,emcalmarker,TPC,ITS); | |
1619 | TH1D *EMCALp = GetHistoEfficiency(0.7,"EMCALp",2,colork,emcalmarker,TPC,ITS); | |
1620 | TH1D *EMCALk = GetHistoEfficiency(0.7,"EMCALk",3,colorp,emcalmarker,TPC,ITS); | |
b64de20c | 1621 | EMCALtotal->Draw("same"); |
1622 | EMCALpi->Draw("same"); | |
1623 | EMCALp->Draw("same"); | |
1624 | EMCALk->Draw("same"); | |
1625 | ||
1626 | ||
1627 | TLegend *leg = new TLegend(0.22651,0.247312,0.370805,0.438172); | |
1628 | leg->AddEntry(PHOStotal,"#pi,K,p"); | |
1629 | leg->AddEntry(PHOSpi,"#pi^{#pm}"); | |
1630 | leg->AddEntry(PHOSk,"K^{#pm}"); | |
1631 | leg->AddEntry(PHOSp,"p,#bar{p}"); | |
1632 | leg->SetFillStyle(0); | |
1633 | leg->SetFillColor(0); | |
1634 | leg->SetBorderSize(0); | |
1635 | leg->SetTextSize(0.06); | |
1636 | leg->Draw(); | |
1637 | ||
1638 | TLine *line = new TLine(0.2,0.0,0.2,1.0); | |
1639 | line->Draw(); | |
1640 | line->SetLineWidth(3.0); | |
1641 | //line->SetLineColor(TColor::kYellow); | |
1642 | line->SetLineStyle(2); | |
1643 | TLatex *tex = new TLatex(0.497269,0.0513196,prodname); | |
1644 | tex->SetTextSize(0.0537634); | |
1645 | tex->Draw(); | |
1646 | TLatex *tex3 = new TLatex(1.16186,0.28348,"Closed symbols |#eta|<0.12 (PHOS)"); | |
1647 | tex3->SetTextSize(0.0537634); | |
1648 | tex3->Draw(); | |
1649 | TLatex *tex4 = new TLatex(1.16186,0.213221,"Open symbols |#eta|<0.70 (EMCal)"); | |
1650 | tex4->SetTextSize(0.0537634); | |
1651 | tex4->Draw(); | |
1652 | TLatex *tex2 = new TLatex(0.241937,0.448436,"Likely TPC cut-off 200 MeV/c"); | |
1653 | tex2->SetTextSize(0.0537634); | |
1654 | tex2->Draw(); | |
b64de20c | 1655 | if(TPC){ |
f43fc416 | 1656 | if(ITS){ |
1657 | sprintf(epsname,"pics/%s/CorrEfficiencyITSTPC.eps",shortprodname); | |
1658 | sprintf(pngname,"pics/%s/CorrEfficiencyITSTPC.png",shortprodname); | |
1659 | } | |
1660 | else{ | |
1661 | sprintf(epsname,"pics/%s/CorrEfficiencyTPC.eps",shortprodname); | |
1662 | sprintf(pngname,"pics/%s/CorrEfficiencyTPC.png",shortprodname); | |
1663 | } | |
b64de20c | 1664 | } |
1665 | else{ | |
1666 | sprintf(epsname,"pics/%s/CorrEfficiencyITS.eps",shortprodname); | |
1667 | sprintf(pngname,"pics/%s/CorrEfficiencyITS.png",shortprodname); | |
1668 | } | |
a02dfa56 | 1669 | delete PHOStotal; |
1670 | delete PHOSpi; | |
1671 | delete PHOSp; | |
1672 | delete PHOSk; | |
1673 | delete EMCALtotal; | |
1674 | delete EMCALpi; | |
1675 | delete EMCALp; | |
1676 | delete EMCALk; | |
1677 | delete leg; | |
b64de20c | 1678 | c->SaveAs(epsname); |
1679 | c->SaveAs(pngname); | |
a02dfa56 | 1680 | delete c; |
48a07264 | 1681 | delete line; |
1682 | delete tex; | |
1683 | delete tex3; | |
b64de20c | 1684 | } |
1685 | ||
1686 | //==================================CorrBkgd================================================= | |
48a07264 | 1687 | TH1D *GetHistoCorrBkgd(float etacut,char *name, bool TPC,bool ispp,bool forSim){ |
1688 | file->cd(); | |
1689 | char *reweightname = reweightedNo; | |
1690 | if(!forSim) reweightname = reweightedYes; | |
1691 | char *myname = mynameITS; | |
8663c99d | 1692 | if(TPC) myname = mynameTPCITS; |
b64de20c | 1693 | TH2F *signal = ((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedPiPlus",myname)))->Clone("signal"); |
1694 | signal->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedPiMinus",myname))); | |
1695 | signal->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedKMinus",myname))); | |
1696 | signal->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedKPlus",myname))); | |
1697 | signal->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedProton",myname))); | |
1698 | signal->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sIdentifiedAntiProton",myname))); | |
1699 | signal->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sUnidentifiedAssumingPion",myname))); | |
1700 | ||
1701 | //Et of all unidentified hadrons (plus hadrons identified as pions) calculated assuming their true mass | |
1702 | TH2F *bkgd = ((TH2F*) out2->FindObject(Form("EtReconstructed%sMisidentifiedElectrons",myname)))->Clone("bkgd"); | |
f43fc416 | 1703 | bkgd->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sLambdaDaughters%s",myname,reweightname))); |
1704 | bkgd->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sAntiLambdaDaughters%s",myname,reweightname))); | |
1705 | bkgd->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sK0SDaughters%s",myname,reweightname))); | |
b64de20c | 1706 | bkgd->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sXiDaughters",myname))); |
1707 | bkgd->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sAntiXiDaughters",myname))); | |
1708 | bkgd->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sOmegaDaughters",myname))); | |
1709 | bkgd->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sAntiOmegaDaughters",myname))); | |
8663c99d | 1710 | bkgd->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sConversionElectrons",myname)) ); |
1711 | bkgd->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sSecondaryMuons",myname)) ); | |
1712 | bkgd->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sSecondaryPions",myname)) ); | |
1713 | bkgd->Add((TH2F*) out2->FindObject(Form("EtReconstructed%sSecondaryProtons",myname)) ); | |
b64de20c | 1714 | int lowbin = bkgd->GetYaxis()->FindBin(-etacut+.001);//make sure we don't accidentally get the wrong bin |
1715 | int highbin = bkgd->GetYaxis()->FindBin(etacut-.001); | |
a02dfa56 | 1716 | //cout<<"Projecting from "<<bkgd->GetYaxis()->GetBinLowEdge(lowbin)<<" to "<<bkgd->GetYaxis()->GetBinLowEdge(highbin+1)<<endl; |
b64de20c | 1717 | |
1718 | ||
1719 | TH1D *denominator = signal->ProjectionX(name,lowbin,highbin); | |
1720 | TH1D *numerator = bkgd->ProjectionX("numerator",lowbin,highbin); | |
8663c99d | 1721 | denominator->Add(numerator); |
b64de20c | 1722 | numerator->Divide(denominator); |
1723 | numerator->SetYTitle("Ratio of E_{T}^{background}/E_{T}^{real}"); | |
1724 | numerator->GetYaxis()->SetTitleOffset(1.2); | |
a02dfa56 | 1725 | delete signal; |
1726 | delete bkgd; | |
1727 | delete denominator; | |
48a07264 | 1728 | numerator->SetName(name); |
b64de20c | 1729 | return numerator; |
1730 | ||
1731 | } | |
1732 | ||
48a07264 | 1733 | void CorrBkgdPlots(char *prodname, char *shortprodname, bool TPC,bool ispp,bool forSim){ |
b64de20c | 1734 | gStyle->SetOptTitle(0); |
1735 | gStyle->SetOptStat(0); | |
1736 | gStyle->SetOptFit(0); | |
1737 | TCanvas *c = new TCanvas("c","c",500,400); | |
1738 | c->SetTopMargin(0.04); | |
1739 | c->SetRightMargin(0.04); | |
1740 | c->SetBorderSize(0); | |
1741 | c->SetFillColor(0); | |
1742 | c->SetFillColor(0); | |
1743 | c->SetBorderMode(0); | |
1744 | c->SetFrameFillColor(0); | |
1745 | c->SetFrameBorderMode(0); | |
1746 | ||
48a07264 | 1747 | TH1D *PHOS = GetHistoCorrBkgd(0.12,"PHOS2",TPC,ispp,forSim); |
1748 | TH1D *EMCAL = GetHistoCorrBkgd(0.7,"EMCAL2",TPC,ispp,forSim); | |
b64de20c | 1749 | PHOS->SetMarkerColor(2); |
1750 | EMCAL->SetMarkerColor(4); | |
1751 | PHOS->SetLineColor(2); | |
1752 | EMCAL->SetLineColor(4); | |
1753 | //EMCAL->SetLineWidth(2); | |
1754 | //PHOS->SetAxisRange(0.0,4); | |
1755 | PHOS->SetMaximum(0.2); | |
1756 | PHOS->SetMinimum(0.0); | |
1757 | PHOS->SetMarkerStyle(20);; | |
1758 | EMCAL->SetMarkerStyle(21); | |
1759 | // TF1 *funcEMCAL = new TF1("funcEMCAL","[0]+0.0*x",0.05,4); | |
1760 | // funcEMCAL->SetParameter(0,0.95); | |
1761 | // funcEMCAL->SetParLimits(0,0.9,1.1); | |
1762 | //EMCAL->Fit(funcEMCAL);//,"","",0.05,3.0); | |
1763 | // TF1 *funcPHOS = new TF1("funcPHOS","[0]+0.0*x",0.05,4); | |
1764 | // funcPHOS->SetParameter(0,1.0); | |
1765 | //PHOS->Fit(funcPHOS); | |
1766 | if(TPC) PHOS->GetXaxis()->SetRange(PHOS->GetXaxis()->FindBin(0.0),PHOS->GetXaxis()->FindBin(4.)); | |
1767 | else{ PHOS->GetXaxis()->SetRange(PHOS->GetXaxis()->FindBin(0.0),PHOS->GetXaxis()->FindBin(1.));} | |
1768 | PHOS->Draw(); | |
1769 | EMCAL->Draw("same"); | |
1770 | TLatex *tex = new TLatex(0.161478,1.0835,prodname); | |
1771 | tex->SetTextSize(0.0537634); | |
1772 | tex->Draw(); | |
1773 | TLegend *leg = new TLegend(0.145161,0.604839,0.40121,0.860215); | |
1774 | leg->AddEntry(PHOS,"|#eta|<0.12"); | |
1775 | leg->AddEntry(EMCAL,"|#eta|<0.70"); | |
1776 | leg->SetFillStyle(0); | |
1777 | leg->SetFillColor(0); | |
1778 | leg->SetBorderSize(0); | |
1779 | leg->Draw(); | |
1780 | if(TPC){ | |
1781 | c->SaveAs(Form("pics/%s/bkgdTPC.eps",shortprodname)); | |
1782 | c->SaveAs(Form("pics/%s/bkgdTPC.png",shortprodname)); | |
1783 | } | |
1784 | else{ | |
1785 | c->SaveAs(Form("pics/%s/bkgdITS.eps",shortprodname)); | |
1786 | c->SaveAs(Form("pics/%s/bkgdITS.png",shortprodname)); | |
1787 | } | |
a02dfa56 | 1788 | delete c; |
1789 | delete PHOS; | |
1790 | delete EMCAL; | |
48a07264 | 1791 | delete tex; |
1792 | delete leg; | |
b64de20c | 1793 | |
1794 | } | |
8663c99d | 1795 | |
1796 | //TH1D *ppBkgd() | |
1797 | TH1D *pp276TPCBkgd(){ | |
1798 | //=========Macro generated from canvas: c4/c4 | |
1799 | //========= (Thu May 5 23:07:14 2011) by ROOT version5.28/00c | |
1800 | TH1D *Allpt7TeVScaling = new TH1D("Allpt7TeVScaling","Reconstructed E_{T} from misidentified electrons",111, xAxis1); | |
1801 | Allpt7TeVScaling->SetBinContent(13,0.1673787); | |
1802 | Allpt7TeVScaling->SetBinContent(14,0.1548408); | |
1803 | Allpt7TeVScaling->SetBinContent(15,0.1328529); | |
1804 | Allpt7TeVScaling->SetBinContent(16,0.1220669); | |
1805 | Allpt7TeVScaling->SetBinContent(17,0.1109226); | |
1806 | Allpt7TeVScaling->SetBinContent(18,0.0981996); | |
1807 | Allpt7TeVScaling->SetBinContent(19,0.09152354); | |
1808 | Allpt7TeVScaling->SetBinContent(20,0.07937801); | |
1809 | Allpt7TeVScaling->SetBinContent(21,0.07163593); | |
1810 | Allpt7TeVScaling->SetBinContent(22,0.0562236); | |
1811 | Allpt7TeVScaling->SetBinContent(23,0.04398756); | |
1812 | Allpt7TeVScaling->SetBinContent(24,0.039459); | |
1813 | Allpt7TeVScaling->SetBinContent(25,0.03618901); | |
1814 | Allpt7TeVScaling->SetBinContent(26,0.0322147); | |
1815 | Allpt7TeVScaling->SetBinContent(27,0.03294796); | |
1816 | Allpt7TeVScaling->SetBinContent(28,0.03114461); | |
1817 | Allpt7TeVScaling->SetBinContent(29,0.03039579); | |
1818 | Allpt7TeVScaling->SetBinContent(30,0.03261539); | |
1819 | Allpt7TeVScaling->SetBinContent(31,0.03239832); | |
1820 | Allpt7TeVScaling->SetBinContent(32,0.03055859); | |
1821 | Allpt7TeVScaling->SetBinContent(33,0.03181271); | |
1822 | Allpt7TeVScaling->SetBinContent(34,0.02882665); | |
1823 | Allpt7TeVScaling->SetBinContent(35,0.03102149); | |
1824 | Allpt7TeVScaling->SetBinContent(36,0.0272696); | |
1825 | Allpt7TeVScaling->SetBinContent(37,0.02783727); | |
1826 | Allpt7TeVScaling->SetBinContent(38,0.02334413); | |
1827 | Allpt7TeVScaling->SetBinContent(39,0.02357657); | |
1828 | Allpt7TeVScaling->SetBinContent(40,0.02630686); | |
1829 | Allpt7TeVScaling->SetBinContent(41,0.02372341); | |
1830 | Allpt7TeVScaling->SetBinContent(42,0.02279457); | |
1831 | Allpt7TeVScaling->SetBinContent(43,0.01999143); | |
1832 | Allpt7TeVScaling->SetBinContent(44,0.02019579); | |
1833 | Allpt7TeVScaling->SetBinContent(45,0.02029719); | |
1834 | Allpt7TeVScaling->SetBinContent(46,0.0166231); | |
1835 | Allpt7TeVScaling->SetBinContent(47,0.01824842); | |
1836 | Allpt7TeVScaling->SetBinContent(48,0.0188995); | |
1837 | Allpt7TeVScaling->SetBinContent(49,0.01836067); | |
1838 | Allpt7TeVScaling->SetBinContent(50,0.02113978); | |
1839 | Allpt7TeVScaling->SetBinContent(51,0.02236854); | |
1840 | Allpt7TeVScaling->SetBinContent(52,0.0204874); | |
1841 | Allpt7TeVScaling->SetBinContent(53,0.02236788); | |
1842 | Allpt7TeVScaling->SetBinContent(54,0.01862457); | |
1843 | Allpt7TeVScaling->SetBinContent(55,0.0215448); | |
1844 | Allpt7TeVScaling->SetBinContent(56,0.01757402); | |
1845 | Allpt7TeVScaling->SetBinContent(57,0.01899477); | |
1846 | Allpt7TeVScaling->SetBinContent(58,0.01766989); | |
1847 | Allpt7TeVScaling->SetBinContent(59,0.01984435); | |
1848 | Allpt7TeVScaling->SetBinContent(60,0.01842092); | |
1849 | Allpt7TeVScaling->SetBinContent(61,0.01668053); | |
1850 | Allpt7TeVScaling->SetBinContent(62,0.01708603); | |
1851 | Allpt7TeVScaling->SetBinContent(63,0.01557306); | |
1852 | Allpt7TeVScaling->SetBinContent(64,0.01878942); | |
1853 | Allpt7TeVScaling->SetBinContent(65,0.01458043); | |
1854 | Allpt7TeVScaling->SetBinContent(66,0.0151346); | |
1855 | Allpt7TeVScaling->SetBinContent(67,0.01565407); | |
1856 | Allpt7TeVScaling->SetBinContent(68,0.01327014); | |
1857 | Allpt7TeVScaling->SetBinContent(69,0.01284378); | |
1858 | Allpt7TeVScaling->SetBinContent(70,0.01046102); | |
1859 | Allpt7TeVScaling->SetBinContent(71,0.009963117); | |
1860 | Allpt7TeVScaling->SetBinContent(72,0.01359609); | |
1861 | Allpt7TeVScaling->SetBinContent(73,0.01088263); | |
1862 | Allpt7TeVScaling->SetBinContent(74,0.01317689); | |
1863 | Allpt7TeVScaling->SetBinContent(75,0.01433201); | |
1864 | Allpt7TeVScaling->SetBinContent(76,0.01215939); | |
1865 | Allpt7TeVScaling->SetBinContent(77,0.01380766); | |
1866 | Allpt7TeVScaling->SetBinContent(78,0.01499505); | |
1867 | Allpt7TeVScaling->SetBinContent(79,0.015013); | |
1868 | Allpt7TeVScaling->SetBinContent(80,0.01140629); | |
1869 | Allpt7TeVScaling->SetBinContent(81,0.009461979); | |
1870 | Allpt7TeVScaling->SetBinContent(82,0.007775343); | |
1871 | Allpt7TeVScaling->SetBinContent(83,0.01092198); | |
1872 | Allpt7TeVScaling->SetBinContent(84,0.009924767); | |
1873 | Allpt7TeVScaling->SetBinContent(85,0.006399066); | |
1874 | Allpt7TeVScaling->SetBinContent(86,0.008370865); | |
1875 | Allpt7TeVScaling->SetBinContent(87,0.01115192); | |
1876 | Allpt7TeVScaling->SetBinContent(88,0.003781796); | |
1877 | Allpt7TeVScaling->SetBinContent(89,0.01596916); | |
1878 | Allpt7TeVScaling->SetBinContent(90,0.005959723); | |
1879 | Allpt7TeVScaling->SetBinContent(91,0.006885685); | |
1880 | Allpt7TeVScaling->SetBinContent(93,0.006011974); | |
1881 | Allpt7TeVScaling->SetBinContent(94,0.008862645); | |
1882 | Allpt7TeVScaling->SetBinContent(95,0.009963223); | |
1883 | Allpt7TeVScaling->SetBinContent(96,0.01457121); | |
1884 | Allpt7TeVScaling->SetBinContent(97,0.007500135); | |
1885 | Allpt7TeVScaling->SetBinContent(98,0.02636933); | |
1886 | Allpt7TeVScaling->SetBinContent(103,0.06353767); | |
1887 | Allpt7TeVScaling->SetBinError(13,0.02859277); | |
1888 | Allpt7TeVScaling->SetBinError(14,0.006796474); | |
1889 | Allpt7TeVScaling->SetBinError(15,0.004234415); | |
1890 | Allpt7TeVScaling->SetBinError(16,0.0036414); | |
1891 | Allpt7TeVScaling->SetBinError(17,0.003333835); | |
1892 | Allpt7TeVScaling->SetBinError(18,0.003009034); | |
1893 | Allpt7TeVScaling->SetBinError(19,0.002839933); | |
1894 | Allpt7TeVScaling->SetBinError(20,0.002588262); | |
1895 | Allpt7TeVScaling->SetBinError(21,0.001703954); | |
1896 | Allpt7TeVScaling->SetBinError(22,0.001495734); | |
1897 | Allpt7TeVScaling->SetBinError(23,0.001297475); | |
1898 | Allpt7TeVScaling->SetBinError(24,0.001213434); | |
1899 | Allpt7TeVScaling->SetBinError(25,0.001162398); | |
1900 | Allpt7TeVScaling->SetBinError(26,0.001137158); | |
1901 | Allpt7TeVScaling->SetBinError(27,0.001208358); | |
1902 | Allpt7TeVScaling->SetBinError(28,0.001183675); | |
1903 | Allpt7TeVScaling->SetBinError(29,0.001263691); | |
1904 | Allpt7TeVScaling->SetBinError(30,0.001320041); | |
1905 | Allpt7TeVScaling->SetBinError(31,0.001362399); | |
1906 | Allpt7TeVScaling->SetBinError(32,0.001338259); | |
1907 | Allpt7TeVScaling->SetBinError(33,0.001369813); | |
1908 | Allpt7TeVScaling->SetBinError(34,0.001358652); | |
1909 | Allpt7TeVScaling->SetBinError(35,0.00142864); | |
1910 | Allpt7TeVScaling->SetBinError(36,0.001378454); | |
1911 | Allpt7TeVScaling->SetBinError(37,0.001384729); | |
1912 | Allpt7TeVScaling->SetBinError(38,0.001257903); | |
1913 | Allpt7TeVScaling->SetBinError(39,0.001295459); | |
1914 | Allpt7TeVScaling->SetBinError(40,0.001546992); | |
1915 | Allpt7TeVScaling->SetBinError(41,0.001496938); | |
1916 | Allpt7TeVScaling->SetBinError(42,0.001486813); | |
1917 | Allpt7TeVScaling->SetBinError(43,0.00140119); | |
1918 | Allpt7TeVScaling->SetBinError(44,0.001478331); | |
1919 | Allpt7TeVScaling->SetBinError(45,0.001566594); | |
1920 | Allpt7TeVScaling->SetBinError(46,0.001407568); | |
1921 | Allpt7TeVScaling->SetBinError(47,0.001509742); | |
1922 | Allpt7TeVScaling->SetBinError(48,0.001583129); | |
1923 | Allpt7TeVScaling->SetBinError(49,0.001668789); | |
1924 | Allpt7TeVScaling->SetBinError(50,0.001915902); | |
1925 | Allpt7TeVScaling->SetBinError(51,0.001968585); | |
1926 | Allpt7TeVScaling->SetBinError(52,0.00195473); | |
1927 | Allpt7TeVScaling->SetBinError(53,0.00207896); | |
1928 | Allpt7TeVScaling->SetBinError(54,0.001937327); | |
1929 | Allpt7TeVScaling->SetBinError(55,0.002108783); | |
1930 | Allpt7TeVScaling->SetBinError(56,0.001816997); | |
1931 | Allpt7TeVScaling->SetBinError(57,0.001892795); | |
1932 | Allpt7TeVScaling->SetBinError(58,0.001803616); | |
1933 | Allpt7TeVScaling->SetBinError(59,0.001994761); | |
1934 | Allpt7TeVScaling->SetBinError(60,0.001964909); | |
1935 | Allpt7TeVScaling->SetBinError(61,0.001255034); | |
1936 | Allpt7TeVScaling->SetBinError(62,0.001312232); | |
1937 | Allpt7TeVScaling->SetBinError(63,0.001358296); | |
1938 | Allpt7TeVScaling->SetBinError(64,0.001569736); | |
1939 | Allpt7TeVScaling->SetBinError(65,0.001469072); | |
1940 | Allpt7TeVScaling->SetBinError(66,0.001588803); | |
1941 | Allpt7TeVScaling->SetBinError(67,0.001683862); | |
1942 | Allpt7TeVScaling->SetBinError(68,0.00164699); | |
1943 | Allpt7TeVScaling->SetBinError(69,0.001760645); | |
1944 | Allpt7TeVScaling->SetBinError(70,0.00160423); | |
1945 | Allpt7TeVScaling->SetBinError(71,0.001693146); | |
1946 | Allpt7TeVScaling->SetBinError(72,0.002042705); | |
1947 | Allpt7TeVScaling->SetBinError(73,0.001965856); | |
1948 | Allpt7TeVScaling->SetBinError(74,0.002245841); | |
1949 | Allpt7TeVScaling->SetBinError(75,0.002520926); | |
1950 | Allpt7TeVScaling->SetBinError(76,0.002402524); | |
1951 | Allpt7TeVScaling->SetBinError(77,0.002627656); | |
1952 | Allpt7TeVScaling->SetBinError(78,0.002963027); | |
1953 | Allpt7TeVScaling->SetBinError(79,0.003088673); | |
1954 | Allpt7TeVScaling->SetBinError(80,0.002958055); | |
1955 | Allpt7TeVScaling->SetBinError(81,0.001434729); | |
1956 | Allpt7TeVScaling->SetBinError(82,0.001531537); | |
1957 | Allpt7TeVScaling->SetBinError(83,0.002200666); | |
1958 | Allpt7TeVScaling->SetBinError(84,0.00242244); | |
1959 | Allpt7TeVScaling->SetBinError(85,0.002270338); | |
1960 | Allpt7TeVScaling->SetBinError(86,0.002972849); | |
1961 | Allpt7TeVScaling->SetBinError(87,0.003966084); | |
1962 | Allpt7TeVScaling->SetBinError(88,0.002679263); | |
1963 | Allpt7TeVScaling->SetBinError(89,0.006083804); | |
1964 | Allpt7TeVScaling->SetBinError(90,0.004227019); | |
1965 | Allpt7TeVScaling->SetBinError(91,0.004886052); | |
1966 | Allpt7TeVScaling->SetBinError(93,0.006030514); | |
1967 | Allpt7TeVScaling->SetBinError(94,0.008892003); | |
1968 | Allpt7TeVScaling->SetBinError(95,0.01001297); | |
1969 | Allpt7TeVScaling->SetBinError(96,0.008480241); | |
1970 | Allpt7TeVScaling->SetBinError(97,0.007527505); | |
1971 | Allpt7TeVScaling->SetBinError(98,0.01889477); | |
1972 | Allpt7TeVScaling->SetBinError(103,0.065502); | |
1973 | Allpt7TeVScaling->SetMinimum(0); | |
1974 | Allpt7TeVScaling->SetMaximum(0.04); | |
1975 | Allpt7TeVScaling->SetEntries(1049.145); | |
1976 | Allpt7TeVScaling->SetStats(0); | |
1977 | Allpt7TeVScaling->SetMarkerStyle(20); | |
1978 | Allpt7TeVScaling->GetXaxis()->SetTitle("p_{T}"); | |
1979 | Allpt7TeVScaling->GetXaxis()->SetRange(1,91); | |
1980 | Allpt7TeVScaling->GetYaxis()->SetTitle("Ratio of E_{T}^{background}/E_{T}^{had, meas.}"); | |
1981 | Allpt7TeVScaling->GetYaxis()->SetTitleOffset(1.2); | |
1982 | TH1D *Allpt900GeVScaling = new TH1D("Allpt900GeVScaling","Reconstructed E_{T} from misidentified electrons",111, xAxis1); | |
1983 | Allpt900GeVScaling->SetBinContent(13,0.1950247); | |
1984 | Allpt900GeVScaling->SetBinContent(14,0.147561); | |
1985 | Allpt900GeVScaling->SetBinContent(15,0.136378); | |
1986 | Allpt900GeVScaling->SetBinContent(16,0.1233744); | |
1987 | Allpt900GeVScaling->SetBinContent(17,0.1126807); | |
1988 | Allpt900GeVScaling->SetBinContent(18,0.09909555); | |
1989 | Allpt900GeVScaling->SetBinContent(19,0.09191239); | |
1990 | Allpt900GeVScaling->SetBinContent(20,0.08438053); | |
1991 | Allpt900GeVScaling->SetBinContent(21,0.07119319); | |
1992 | Allpt900GeVScaling->SetBinContent(22,0.05773434); | |
1993 | Allpt900GeVScaling->SetBinContent(23,0.04292845); | |
1994 | Allpt900GeVScaling->SetBinContent(24,0.0396127); | |
1995 | Allpt900GeVScaling->SetBinContent(25,0.03395077); | |
1996 | Allpt900GeVScaling->SetBinContent(26,0.03305251); | |
1997 | Allpt900GeVScaling->SetBinContent(27,0.03297093); | |
1998 | Allpt900GeVScaling->SetBinContent(28,0.031215); | |
1999 | Allpt900GeVScaling->SetBinContent(29,0.03178372); | |
2000 | Allpt900GeVScaling->SetBinContent(30,0.03236985); | |
2001 | Allpt900GeVScaling->SetBinContent(31,0.03271276); | |
2002 | Allpt900GeVScaling->SetBinContent(32,0.02993124); | |
2003 | Allpt900GeVScaling->SetBinContent(33,0.03004746); | |
2004 | Allpt900GeVScaling->SetBinContent(34,0.03077143); | |
2005 | Allpt900GeVScaling->SetBinContent(35,0.03211214); | |
2006 | Allpt900GeVScaling->SetBinContent(36,0.02807512); | |
2007 | Allpt900GeVScaling->SetBinContent(37,0.02651954); | |
2008 | Allpt900GeVScaling->SetBinContent(38,0.02503885); | |
2009 | Allpt900GeVScaling->SetBinContent(39,0.02325777); | |
2010 | Allpt900GeVScaling->SetBinContent(40,0.02773712); | |
2011 | Allpt900GeVScaling->SetBinContent(41,0.02491155); | |
2012 | Allpt900GeVScaling->SetBinContent(42,0.02389028); | |
2013 | Allpt900GeVScaling->SetBinContent(43,0.02085532); | |
2014 | Allpt900GeVScaling->SetBinContent(44,0.01959721); | |
2015 | Allpt900GeVScaling->SetBinContent(45,0.01937255); | |
2016 | Allpt900GeVScaling->SetBinContent(46,0.01745646); | |
2017 | Allpt900GeVScaling->SetBinContent(47,0.01890853); | |
2018 | Allpt900GeVScaling->SetBinContent(48,0.02053692); | |
2019 | Allpt900GeVScaling->SetBinContent(49,0.01813791); | |
2020 | Allpt900GeVScaling->SetBinContent(50,0.02187495); | |
2021 | Allpt900GeVScaling->SetBinContent(51,0.02409687); | |
2022 | Allpt900GeVScaling->SetBinContent(52,0.0206565); | |
2023 | Allpt900GeVScaling->SetBinContent(53,0.02269165); | |
2024 | Allpt900GeVScaling->SetBinContent(54,0.01850795); | |
2025 | Allpt900GeVScaling->SetBinContent(55,0.02115427); | |
2026 | Allpt900GeVScaling->SetBinContent(56,0.01543302); | |
2027 | Allpt900GeVScaling->SetBinContent(57,0.01642095); | |
2028 | Allpt900GeVScaling->SetBinContent(58,0.01542331); | |
2029 | Allpt900GeVScaling->SetBinContent(59,0.01931254); | |
2030 | Allpt900GeVScaling->SetBinContent(60,0.01650654); | |
2031 | Allpt900GeVScaling->SetBinContent(61,0.01827512); | |
2032 | Allpt900GeVScaling->SetBinContent(62,0.01700125); | |
2033 | Allpt900GeVScaling->SetBinContent(63,0.01544321); | |
2034 | Allpt900GeVScaling->SetBinContent(64,0.01830588); | |
2035 | Allpt900GeVScaling->SetBinContent(65,0.01584369); | |
2036 | Allpt900GeVScaling->SetBinContent(66,0.0145421); | |
2037 | Allpt900GeVScaling->SetBinContent(67,0.01382206); | |
2038 | Allpt900GeVScaling->SetBinContent(68,0.01358825); | |
2039 | Allpt900GeVScaling->SetBinContent(69,0.01294888); | |
2040 | Allpt900GeVScaling->SetBinContent(70,0.009346655); | |
2041 | Allpt900GeVScaling->SetBinContent(71,0.01235781); | |
2042 | Allpt900GeVScaling->SetBinContent(72,0.0127376); | |
2043 | Allpt900GeVScaling->SetBinContent(73,0.008968166); | |
2044 | Allpt900GeVScaling->SetBinContent(74,0.01467765); | |
2045 | Allpt900GeVScaling->SetBinContent(75,0.01432309); | |
2046 | Allpt900GeVScaling->SetBinContent(76,0.01204856); | |
2047 | Allpt900GeVScaling->SetBinContent(77,0.01436071); | |
2048 | Allpt900GeVScaling->SetBinContent(78,0.01451222); | |
2049 | Allpt900GeVScaling->SetBinContent(79,0.01378967); | |
2050 | Allpt900GeVScaling->SetBinContent(80,0.01040148); | |
2051 | Allpt900GeVScaling->SetBinContent(81,0.01041213); | |
2052 | Allpt900GeVScaling->SetBinContent(82,0.009971816); | |
2053 | Allpt900GeVScaling->SetBinContent(83,0.01417668); | |
2054 | Allpt900GeVScaling->SetBinContent(84,0.008713292); | |
2055 | Allpt900GeVScaling->SetBinContent(85,0.005425386); | |
2056 | Allpt900GeVScaling->SetBinContent(86,0.005303683); | |
2057 | Allpt900GeVScaling->SetBinContent(87,0.006759432); | |
2058 | Allpt900GeVScaling->SetBinContent(88,0.004445477); | |
2059 | Allpt900GeVScaling->SetBinContent(89,0.01810702); | |
2060 | Allpt900GeVScaling->SetBinContent(90,0.0108909); | |
2061 | Allpt900GeVScaling->SetBinContent(91,0.01186746); | |
2062 | Allpt900GeVScaling->SetBinContent(92,0.006128581); | |
2063 | Allpt900GeVScaling->SetBinContent(93,0.007452721); | |
2064 | Allpt900GeVScaling->SetBinContent(94,0.0259471); | |
2065 | Allpt900GeVScaling->SetBinContent(95,0.0114321); | |
2066 | Allpt900GeVScaling->SetBinContent(98,0.03264295); | |
2067 | Allpt900GeVScaling->SetBinContent(103,0.07829265); | |
2068 | Allpt900GeVScaling->SetBinError(13,0.03504783); | |
2069 | Allpt900GeVScaling->SetBinError(14,0.007336667); | |
2070 | Allpt900GeVScaling->SetBinError(15,0.004765958); | |
2071 | Allpt900GeVScaling->SetBinError(16,0.004028143); | |
2072 | Allpt900GeVScaling->SetBinError(17,0.003760166); | |
2073 | Allpt900GeVScaling->SetBinError(18,0.003357858); | |
2074 | Allpt900GeVScaling->SetBinError(19,0.003156502); | |
2075 | Allpt900GeVScaling->SetBinError(20,0.002970822); | |
2076 | Allpt900GeVScaling->SetBinError(21,0.001886555); | |
2077 | Allpt900GeVScaling->SetBinError(22,0.001676045); | |
2078 | Allpt900GeVScaling->SetBinError(23,0.001411794); | |
2079 | Allpt900GeVScaling->SetBinError(24,0.001346425); | |
2080 | Allpt900GeVScaling->SetBinError(25,0.001254258); | |
2081 | Allpt900GeVScaling->SetBinError(26,0.001299384); | |
2082 | Allpt900GeVScaling->SetBinError(27,0.001328066); | |
2083 | Allpt900GeVScaling->SetBinError(28,0.001330088); | |
2084 | Allpt900GeVScaling->SetBinError(29,0.001446767); | |
2085 | Allpt900GeVScaling->SetBinError(30,0.00145402); | |
2086 | Allpt900GeVScaling->SetBinError(31,0.001463994); | |
2087 | Allpt900GeVScaling->SetBinError(32,0.001449209); | |
2088 | Allpt900GeVScaling->SetBinError(33,0.001414847); | |
2089 | Allpt900GeVScaling->SetBinError(34,0.001598429); | |
2090 | Allpt900GeVScaling->SetBinError(35,0.001590854); | |
2091 | Allpt900GeVScaling->SetBinError(36,0.001526798); | |
2092 | Allpt900GeVScaling->SetBinError(37,0.001486126); | |
2093 | Allpt900GeVScaling->SetBinError(38,0.001457142); | |
2094 | Allpt900GeVScaling->SetBinError(39,0.001474238); | |
2095 | Allpt900GeVScaling->SetBinError(40,0.001757902); | |
2096 | Allpt900GeVScaling->SetBinError(41,0.001712601); | |
2097 | Allpt900GeVScaling->SetBinError(42,0.001671385); | |
2098 | Allpt900GeVScaling->SetBinError(43,0.001570556); | |
2099 | Allpt900GeVScaling->SetBinError(44,0.001627725); | |
2100 | Allpt900GeVScaling->SetBinError(45,0.001637262); | |
2101 | Allpt900GeVScaling->SetBinError(46,0.001641227); | |
2102 | Allpt900GeVScaling->SetBinError(47,0.001716345); | |
2103 | Allpt900GeVScaling->SetBinError(48,0.001907778); | |
2104 | Allpt900GeVScaling->SetBinError(49,0.001842589); | |
2105 | Allpt900GeVScaling->SetBinError(50,0.00215445); | |
2106 | Allpt900GeVScaling->SetBinError(51,0.002310602); | |
2107 | Allpt900GeVScaling->SetBinError(52,0.002171046); | |
2108 | Allpt900GeVScaling->SetBinError(53,0.002386521); | |
2109 | Allpt900GeVScaling->SetBinError(54,0.002149237); | |
2110 | Allpt900GeVScaling->SetBinError(55,0.002233898); | |
2111 | Allpt900GeVScaling->SetBinError(56,0.001856697); | |
2112 | Allpt900GeVScaling->SetBinError(57,0.001891742); | |
2113 | Allpt900GeVScaling->SetBinError(58,0.001840334); | |
2114 | Allpt900GeVScaling->SetBinError(59,0.002168741); | |
2115 | Allpt900GeVScaling->SetBinError(60,0.002044863); | |
2116 | Allpt900GeVScaling->SetBinError(61,0.001431972); | |
2117 | Allpt900GeVScaling->SetBinError(62,0.001452706); | |
2118 | Allpt900GeVScaling->SetBinError(63,0.001477499); | |
2119 | Allpt900GeVScaling->SetBinError(64,0.001722091); | |
2120 | Allpt900GeVScaling->SetBinError(65,0.001674803); | |
2121 | Allpt900GeVScaling->SetBinError(66,0.001737491); | |
2122 | Allpt900GeVScaling->SetBinError(67,0.001783912); | |
2123 | Allpt900GeVScaling->SetBinError(68,0.00186443); | |
2124 | Allpt900GeVScaling->SetBinError(69,0.001965873); | |
2125 | Allpt900GeVScaling->SetBinError(70,0.001687347); | |
2126 | Allpt900GeVScaling->SetBinError(71,0.002072538); | |
2127 | Allpt900GeVScaling->SetBinError(72,0.002233273); | |
2128 | Allpt900GeVScaling->SetBinError(73,0.001965905); | |
2129 | Allpt900GeVScaling->SetBinError(74,0.002669571); | |
2130 | Allpt900GeVScaling->SetBinError(75,0.00278613); | |
2131 | Allpt900GeVScaling->SetBinError(76,0.002661412); | |
2132 | Allpt900GeVScaling->SetBinError(77,0.002952605); | |
2133 | Allpt900GeVScaling->SetBinError(78,0.003268721); | |
2134 | Allpt900GeVScaling->SetBinError(79,0.003273694); | |
2135 | Allpt900GeVScaling->SetBinError(80,0.002900898); | |
2136 | Allpt900GeVScaling->SetBinError(81,0.001677933); | |
2137 | Allpt900GeVScaling->SetBinError(82,0.001933408); | |
2138 | Allpt900GeVScaling->SetBinError(83,0.002759328); | |
2139 | Allpt900GeVScaling->SetBinError(84,0.002526604); | |
2140 | Allpt900GeVScaling->SetBinError(85,0.002297818); | |
2141 | Allpt900GeVScaling->SetBinError(86,0.002659213); | |
2142 | Allpt900GeVScaling->SetBinError(87,0.003392141); | |
2143 | Allpt900GeVScaling->SetBinError(88,0.003150511); | |
2144 | Allpt900GeVScaling->SetBinError(89,0.007499872); | |
2145 | Allpt900GeVScaling->SetBinError(90,0.006322856); | |
2146 | Allpt900GeVScaling->SetBinError(91,0.00689283); | |
2147 | Allpt900GeVScaling->SetBinError(92,0.006146806); | |
2148 | Allpt900GeVScaling->SetBinError(93,0.007481131); | |
2149 | Allpt900GeVScaling->SetBinError(94,0.01853139); | |
2150 | Allpt900GeVScaling->SetBinError(95,0.01149767); | |
2151 | Allpt900GeVScaling->SetBinError(98,0.02345991); | |
2152 | Allpt900GeVScaling->SetBinError(103,0.08126059); | |
2153 | Allpt900GeVScaling->SetMinimum(0); | |
2154 | Allpt900GeVScaling->SetMaximum(0.04); | |
2155 | Allpt900GeVScaling->SetEntries(724.3671); | |
2156 | Allpt900GeVScaling->SetStats(0); | |
2157 | Allpt900GeVScaling->SetMarkerStyle(20); | |
2158 | Allpt900GeVScaling->GetXaxis()->SetTitle("p_{T}"); | |
2159 | Allpt900GeVScaling->GetXaxis()->SetRange(1,91); | |
2160 | Allpt900GeVScaling->GetYaxis()->SetTitle("Ratio of E_{T}^{background}/E_{T}^{had, meas.}"); | |
2161 | Allpt900GeVScaling->GetYaxis()->SetTitleOffset(1.2); | |
2162 | Allpt7TeVScaling->Add(Allpt900GeVScaling); | |
2163 | Allpt7TeVScaling->Scale(0.5); | |
2164 | delete Allpt900GeVScaling; | |
2165 | return Allpt7TeVScaling; | |
2166 | } | |
2167 | ||
2168 | TH1D *PbPb276TPCBkgd(){ | |
2169 | TH1D *Allpt7TeVScaling = new TH1D("Allpt7TeVScaling","Reconstructed E_{T} from misidentified electrons",111, xAxis1); | |
2170 | Allpt7TeVScaling->SetBinContent(13,0.1745755); | |
2171 | Allpt7TeVScaling->SetBinContent(14,0.1624186); | |
2172 | Allpt7TeVScaling->SetBinContent(15,0.1431048); | |
2173 | Allpt7TeVScaling->SetBinContent(16,0.1331614); | |
2174 | Allpt7TeVScaling->SetBinContent(17,0.121262); | |
2175 | Allpt7TeVScaling->SetBinContent(18,0.1082923); | |
2176 | Allpt7TeVScaling->SetBinContent(19,0.1011451); | |
2177 | Allpt7TeVScaling->SetBinContent(20,0.08875923); | |
2178 | Allpt7TeVScaling->SetBinContent(21,0.08100933); | |
2179 | Allpt7TeVScaling->SetBinContent(22,0.06527292); | |
2180 | Allpt7TeVScaling->SetBinContent(23,0.05220065); | |
2181 | Allpt7TeVScaling->SetBinContent(24,0.04752904); | |
2182 | Allpt7TeVScaling->SetBinContent(25,0.04421568); | |
2183 | Allpt7TeVScaling->SetBinContent(26,0.03879551); | |
2184 | Allpt7TeVScaling->SetBinContent(27,0.03944679); | |
2185 | Allpt7TeVScaling->SetBinContent(28,0.03707215); | |
2186 | Allpt7TeVScaling->SetBinContent(29,0.03663599); | |
2187 | Allpt7TeVScaling->SetBinContent(30,0.03937437); | |
2188 | Allpt7TeVScaling->SetBinContent(31,0.03888919); | |
2189 | Allpt7TeVScaling->SetBinContent(32,0.03646502); | |
2190 | Allpt7TeVScaling->SetBinContent(33,0.03784992); | |
2191 | Allpt7TeVScaling->SetBinContent(34,0.03360079); | |
2192 | Allpt7TeVScaling->SetBinContent(35,0.03761566); | |
2193 | Allpt7TeVScaling->SetBinContent(36,0.03276653); | |
2194 | Allpt7TeVScaling->SetBinContent(37,0.03401566); | |
2195 | Allpt7TeVScaling->SetBinContent(38,0.02803893); | |
2196 | Allpt7TeVScaling->SetBinContent(39,0.0290018); | |
2197 | Allpt7TeVScaling->SetBinContent(40,0.03323201); | |
2198 | Allpt7TeVScaling->SetBinContent(41,0.03006077); | |
2199 | Allpt7TeVScaling->SetBinContent(42,0.02867674); | |
2200 | Allpt7TeVScaling->SetBinContent(43,0.02471421); | |
2201 | Allpt7TeVScaling->SetBinContent(44,0.02610375); | |
2202 | Allpt7TeVScaling->SetBinContent(45,0.02601621); | |
2203 | Allpt7TeVScaling->SetBinContent(46,0.02184781); | |
2204 | Allpt7TeVScaling->SetBinContent(47,0.02479646); | |
2205 | Allpt7TeVScaling->SetBinContent(48,0.02519956); | |
2206 | Allpt7TeVScaling->SetBinContent(49,0.02376095); | |
2207 | Allpt7TeVScaling->SetBinContent(50,0.02836189); | |
2208 | Allpt7TeVScaling->SetBinContent(51,0.0339595); | |
2209 | Allpt7TeVScaling->SetBinContent(52,0.03057126); | |
2210 | Allpt7TeVScaling->SetBinContent(53,0.03238621); | |
2211 | Allpt7TeVScaling->SetBinContent(54,0.0264272); | |
2212 | Allpt7TeVScaling->SetBinContent(55,0.03203146); | |
2213 | Allpt7TeVScaling->SetBinContent(56,0.02554187); | |
2214 | Allpt7TeVScaling->SetBinContent(57,0.02901947); | |
2215 | Allpt7TeVScaling->SetBinContent(58,0.02584016); | |
2216 | Allpt7TeVScaling->SetBinContent(59,0.03055042); | |
2217 | Allpt7TeVScaling->SetBinContent(60,0.02658193); | |
2218 | Allpt7TeVScaling->SetBinContent(61,0.02553988); | |
2219 | Allpt7TeVScaling->SetBinContent(62,0.02787508); | |
2220 | Allpt7TeVScaling->SetBinContent(63,0.02836785); | |
2221 | Allpt7TeVScaling->SetBinContent(64,0.03449766); | |
2222 | Allpt7TeVScaling->SetBinContent(65,0.02710397); | |
2223 | Allpt7TeVScaling->SetBinContent(66,0.02741966); | |
2224 | Allpt7TeVScaling->SetBinContent(67,0.03184318); | |
2225 | Allpt7TeVScaling->SetBinContent(68,0.02993716); | |
2226 | Allpt7TeVScaling->SetBinContent(69,0.03113033); | |
2227 | Allpt7TeVScaling->SetBinContent(70,0.01946293); | |
2228 | Allpt7TeVScaling->SetBinContent(71,0.02890383); | |
2229 | Allpt7TeVScaling->SetBinContent(72,0.02602078); | |
2230 | Allpt7TeVScaling->SetBinContent(73,0.02063028); | |
2231 | Allpt7TeVScaling->SetBinContent(74,0.03186679); | |
2232 | Allpt7TeVScaling->SetBinContent(75,0.0399062); | |
2233 | Allpt7TeVScaling->SetBinContent(76,0.02051914); | |
2234 | Allpt7TeVScaling->SetBinContent(77,0.04454688); | |
2235 | Allpt7TeVScaling->SetBinContent(78,0.04798449); | |
2236 | Allpt7TeVScaling->SetBinContent(79,0.0311417); | |
2237 | Allpt7TeVScaling->SetBinContent(80,0.03774521); | |
2238 | Allpt7TeVScaling->SetBinContent(81,0.0219128); | |
2239 | Allpt7TeVScaling->SetBinContent(82,0.02323492); | |
2240 | Allpt7TeVScaling->SetBinContent(83,0.02412182); | |
2241 | Allpt7TeVScaling->SetBinContent(84,0.03636555); | |
2242 | Allpt7TeVScaling->SetBinContent(85,0.007488934); | |
2243 | Allpt7TeVScaling->SetBinContent(86,0.01676086); | |
2244 | Allpt7TeVScaling->SetBinContent(87,0.02427021); | |
2245 | Allpt7TeVScaling->SetBinContent(88,0.02482882); | |
2246 | Allpt7TeVScaling->SetBinContent(89,0.03680926); | |
2247 | Allpt7TeVScaling->SetBinContent(90,0.01600685); | |
2248 | Allpt7TeVScaling->SetBinContent(91,0.006885685); | |
2249 | Allpt7TeVScaling->SetBinContent(93,0.0195411); | |
2250 | Allpt7TeVScaling->SetBinContent(94,0.008862645); | |
2251 | Allpt7TeVScaling->SetBinContent(95,0.009963223); | |
2252 | Allpt7TeVScaling->SetBinContent(96,0.01399091); | |
2253 | Allpt7TeVScaling->SetBinContent(97,0.007500135); | |
2254 | Allpt7TeVScaling->SetBinContent(98,0.01922651); | |
2255 | Allpt7TeVScaling->SetBinContent(103,0.03511665); | |
2256 | Allpt7TeVScaling->SetBinError(13,0.03042345); | |
2257 | Allpt7TeVScaling->SetBinError(14,0.007201474); | |
2258 | Allpt7TeVScaling->SetBinError(15,0.004623859); | |
2259 | Allpt7TeVScaling->SetBinError(16,0.004039713); | |
2260 | Allpt7TeVScaling->SetBinError(17,0.003694238); | |
2261 | Allpt7TeVScaling->SetBinError(18,0.003377785); | |
2262 | Allpt7TeVScaling->SetBinError(19,0.00319956); | |
2263 | Allpt7TeVScaling->SetBinError(20,0.00294949); | |
2264 | Allpt7TeVScaling->SetBinError(21,0.001965652); | |
2265 | Allpt7TeVScaling->SetBinError(22,0.001771706); | |
2266 | Allpt7TeVScaling->SetBinError(23,0.0015726); | |
2267 | Allpt7TeVScaling->SetBinError(24,0.001495611); | |
2268 | Allpt7TeVScaling->SetBinError(25,0.00145454); | |
2269 | Allpt7TeVScaling->SetBinError(26,0.001398941); | |
2270 | Allpt7TeVScaling->SetBinError(27,0.001495129); | |
2271 | Allpt7TeVScaling->SetBinError(28,0.001474393); | |
2272 | Allpt7TeVScaling->SetBinError(29,0.001608602); | |
2273 | Allpt7TeVScaling->SetBinError(30,0.001684714); | |
2274 | Allpt7TeVScaling->SetBinError(31,0.001755251); | |
2275 | Allpt7TeVScaling->SetBinError(32,0.001658064); | |
2276 | Allpt7TeVScaling->SetBinError(33,0.001734642); | |
2277 | Allpt7TeVScaling->SetBinError(34,0.001624169); | |
2278 | Allpt7TeVScaling->SetBinError(35,0.001893747); | |
2279 | Allpt7TeVScaling->SetBinError(36,0.001748243); | |
2280 | Allpt7TeVScaling->SetBinError(37,0.001824646); | |
2281 | Allpt7TeVScaling->SetBinError(38,0.001587514); | |
2282 | Allpt7TeVScaling->SetBinError(39,0.001697203); | |
2283 | Allpt7TeVScaling->SetBinError(40,0.002112545); | |
2284 | Allpt7TeVScaling->SetBinError(41,0.002060819); | |
2285 | Allpt7TeVScaling->SetBinError(42,0.002026571); | |
2286 | Allpt7TeVScaling->SetBinError(43,0.001821759); | |
2287 | Allpt7TeVScaling->SetBinError(44,0.002051793); | |
2288 | Allpt7TeVScaling->SetBinError(45,0.002193957); | |
2289 | Allpt7TeVScaling->SetBinError(46,0.001991362); | |
2290 | Allpt7TeVScaling->SetBinError(47,0.002242771); | |
2291 | Allpt7TeVScaling->SetBinError(48,0.002305595); | |
2292 | Allpt7TeVScaling->SetBinError(49,0.002335076); | |
2293 | Allpt7TeVScaling->SetBinError(50,0.002798601); | |
2294 | Allpt7TeVScaling->SetBinError(51,0.003536788); | |
2295 | Allpt7TeVScaling->SetBinError(52,0.003440952); | |
2296 | Allpt7TeVScaling->SetBinError(53,0.003495971); | |
2297 | Allpt7TeVScaling->SetBinError(54,0.003067046); | |
2298 | Allpt7TeVScaling->SetBinError(55,0.003553133); | |
2299 | Allpt7TeVScaling->SetBinError(56,0.003084681); | |
2300 | Allpt7TeVScaling->SetBinError(57,0.003207651); | |
2301 | Allpt7TeVScaling->SetBinError(58,0.002958898); | |
2302 | Allpt7TeVScaling->SetBinError(59,0.003486212); | |
2303 | Allpt7TeVScaling->SetBinError(60,0.003160784); | |
2304 | Allpt7TeVScaling->SetBinError(61,0.00221753); | |
2305 | Allpt7TeVScaling->SetBinError(62,0.002573063); | |
2306 | Allpt7TeVScaling->SetBinError(63,0.003014171); | |
2307 | Allpt7TeVScaling->SetBinError(64,0.003535776); | |
2308 | Allpt7TeVScaling->SetBinError(65,0.003472028); | |
2309 | Allpt7TeVScaling->SetBinError(66,0.003649103); | |
2310 | Allpt7TeVScaling->SetBinError(67,0.004547596); | |
2311 | Allpt7TeVScaling->SetBinError(68,0.004987629); | |
2312 | Allpt7TeVScaling->SetBinError(69,0.005726305); | |
2313 | Allpt7TeVScaling->SetBinError(70,0.003978767); | |
2314 | Allpt7TeVScaling->SetBinError(71,0.00668463); | |
2315 | Allpt7TeVScaling->SetBinError(72,0.005573138); | |
2316 | Allpt7TeVScaling->SetBinError(73,0.005310436); | |
2317 | Allpt7TeVScaling->SetBinError(74,0.007698246); | |
2318 | Allpt7TeVScaling->SetBinError(75,0.01002912); | |
2319 | Allpt7TeVScaling->SetBinError(76,0.006029285); | |
2320 | Allpt7TeVScaling->SetBinError(77,0.0117225); | |
2321 | Allpt7TeVScaling->SetBinError(78,0.01333887); | |
2322 | Allpt7TeVScaling->SetBinError(79,0.009949805); | |
2323 | Allpt7TeVScaling->SetBinError(80,0.01335105); | |
2324 | Allpt7TeVScaling->SetBinError(81,0.004966615); | |
2325 | Allpt7TeVScaling->SetBinError(82,0.006669427); | |
2326 | Allpt7TeVScaling->SetBinError(83,0.007591192); | |
2327 | Allpt7TeVScaling->SetBinError(84,0.01217267); | |
2328 | Allpt7TeVScaling->SetBinError(85,0.002708538); | |
2329 | Allpt7TeVScaling->SetBinError(86,0.008143581); | |
2330 | Allpt7TeVScaling->SetBinError(87,0.01149673); | |
2331 | Allpt7TeVScaling->SetBinError(88,0.01759547); | |
2332 | Allpt7TeVScaling->SetBinError(89,0.01766708); | |
2333 | Allpt7TeVScaling->SetBinError(90,0.01339557); | |
2334 | Allpt7TeVScaling->SetBinError(91,0.004886052); | |
2335 | Allpt7TeVScaling->SetBinError(93,0.01960311); | |
2336 | Allpt7TeVScaling->SetBinError(94,0.008892003); | |
2337 | Allpt7TeVScaling->SetBinError(95,0.01001297); | |
2338 | Allpt7TeVScaling->SetBinError(96,0.008178781); | |
2339 | Allpt7TeVScaling->SetBinError(97,0.007527505); | |
2340 | Allpt7TeVScaling->SetBinError(98,0.01463862); | |
2341 | Allpt7TeVScaling->SetBinError(103,0.03621621); | |
2342 | Allpt7TeVScaling->SetMinimum(0); | |
2343 | Allpt7TeVScaling->SetMaximum(0.04); | |
2344 | Allpt7TeVScaling->SetEntries(1949.423); | |
2345 | Allpt7TeVScaling->SetStats(0); | |
2346 | Allpt7TeVScaling->SetMarkerStyle(20); | |
2347 | Allpt7TeVScaling->GetXaxis()->SetTitle("p_{T}"); | |
2348 | Allpt7TeVScaling->GetXaxis()->SetRange(1,91); | |
2349 | Allpt7TeVScaling->GetYaxis()->SetTitle("Ratio of E_{T}^{background}/E_{T}^{had, meas.}"); | |
2350 | Allpt7TeVScaling->GetYaxis()->SetTitleOffset(1.2); | |
2351 | ||
2352 | TH1D *Allpt900GeVScaling = new TH1D("Allpt900GeVScaling","Reconstructed E_{T} from misidentified electrons",111, xAxis1); | |
2353 | Allpt900GeVScaling->SetBinContent(13,0.2098361); | |
2354 | Allpt900GeVScaling->SetBinContent(14,0.1557776); | |
2355 | Allpt900GeVScaling->SetBinContent(15,0.1480364); | |
2356 | Allpt900GeVScaling->SetBinContent(16,0.1368096); | |
2357 | Allpt900GeVScaling->SetBinContent(17,0.1244875); | |
2358 | Allpt900GeVScaling->SetBinContent(18,0.1119436); | |
2359 | Allpt900GeVScaling->SetBinContent(19,0.104192); | |
2360 | Allpt900GeVScaling->SetBinContent(20,0.0938359); | |
2361 | Allpt900GeVScaling->SetBinContent(21,0.08228509); | |
2362 | Allpt900GeVScaling->SetBinContent(22,0.06783117); | |
2363 | Allpt900GeVScaling->SetBinContent(23,0.05079209); | |
2364 | Allpt900GeVScaling->SetBinContent(24,0.04795673); | |
2365 | Allpt900GeVScaling->SetBinContent(25,0.04181242); | |
2366 | Allpt900GeVScaling->SetBinContent(26,0.03994469); | |
2367 | Allpt900GeVScaling->SetBinContent(27,0.03981588); | |
2368 | Allpt900GeVScaling->SetBinContent(28,0.0377358); | |
2369 | Allpt900GeVScaling->SetBinContent(29,0.0399667); | |
2370 | Allpt900GeVScaling->SetBinContent(30,0.04095473); | |
2371 | Allpt900GeVScaling->SetBinContent(31,0.04058456); | |
2372 | Allpt900GeVScaling->SetBinContent(32,0.03641218); | |
2373 | Allpt900GeVScaling->SetBinContent(33,0.03599966); | |
2374 | Allpt900GeVScaling->SetBinContent(34,0.03853838); | |
2375 | Allpt900GeVScaling->SetBinContent(35,0.04105409); | |
2376 | Allpt900GeVScaling->SetBinContent(36,0.03461075); | |
2377 | Allpt900GeVScaling->SetBinContent(37,0.03478729); | |
2378 | Allpt900GeVScaling->SetBinContent(38,0.03150168); | |
2379 | Allpt900GeVScaling->SetBinContent(39,0.03121329); | |
2380 | Allpt900GeVScaling->SetBinContent(40,0.0370806); | |
2381 | Allpt900GeVScaling->SetBinContent(41,0.03322445); | |
2382 | Allpt900GeVScaling->SetBinContent(42,0.03200198); | |
2383 | Allpt900GeVScaling->SetBinContent(43,0.02753292); | |
2384 | Allpt900GeVScaling->SetBinContent(44,0.02776155); | |
2385 | Allpt900GeVScaling->SetBinContent(45,0.02671865); | |
2386 | Allpt900GeVScaling->SetBinContent(46,0.02612601); | |
2387 | Allpt900GeVScaling->SetBinContent(47,0.02779079); | |
2388 | Allpt900GeVScaling->SetBinContent(48,0.02762603); | |
2389 | Allpt900GeVScaling->SetBinContent(49,0.0288977); | |
2390 | Allpt900GeVScaling->SetBinContent(50,0.03181282); | |
2391 | Allpt900GeVScaling->SetBinContent(51,0.04194707); | |
2392 | Allpt900GeVScaling->SetBinContent(52,0.03287613); | |
2393 | Allpt900GeVScaling->SetBinContent(53,0.04363778); | |
2394 | Allpt900GeVScaling->SetBinContent(54,0.03003709); | |
2395 | Allpt900GeVScaling->SetBinContent(55,0.03286254); | |
2396 | Allpt900GeVScaling->SetBinContent(56,0.02585759); | |
2397 | Allpt900GeVScaling->SetBinContent(57,0.03390592); | |
2398 | Allpt900GeVScaling->SetBinContent(58,0.03212414); | |
2399 | Allpt900GeVScaling->SetBinContent(59,0.03559123); | |
2400 | Allpt900GeVScaling->SetBinContent(60,0.02464371); | |
2401 | Allpt900GeVScaling->SetBinContent(61,0.03680997); | |
2402 | Allpt900GeVScaling->SetBinContent(62,0.03569024); | |
2403 | Allpt900GeVScaling->SetBinContent(63,0.03662885); | |
2404 | Allpt900GeVScaling->SetBinContent(64,0.04690057); | |
2405 | Allpt900GeVScaling->SetBinContent(65,0.04036927); | |
2406 | Allpt900GeVScaling->SetBinContent(66,0.03237555); | |
2407 | Allpt900GeVScaling->SetBinContent(67,0.04285642); | |
2408 | Allpt900GeVScaling->SetBinContent(68,0.04778185); | |
2409 | Allpt900GeVScaling->SetBinContent(69,0.0411135); | |
2410 | Allpt900GeVScaling->SetBinContent(70,0.02465524); | |
2411 | Allpt900GeVScaling->SetBinContent(71,0.03686565); | |
2412 | Allpt900GeVScaling->SetBinContent(72,0.03694553); | |
2413 | Allpt900GeVScaling->SetBinContent(73,0.02206743); | |
2414 | Allpt900GeVScaling->SetBinContent(74,0.04854334); | |
2415 | Allpt900GeVScaling->SetBinContent(75,0.04190287); | |
2416 | Allpt900GeVScaling->SetBinContent(76,0.03255752); | |
2417 | Allpt900GeVScaling->SetBinContent(77,0.0715847); | |
2418 | Allpt900GeVScaling->SetBinContent(78,0.07329647); | |
2419 | Allpt900GeVScaling->SetBinContent(79,0.02727783); | |
2420 | Allpt900GeVScaling->SetBinContent(80,0.041527); | |
2421 | Allpt900GeVScaling->SetBinContent(81,0.0400001); | |
2422 | Allpt900GeVScaling->SetBinContent(82,0.0246785); | |
2423 | Allpt900GeVScaling->SetBinContent(83,0.03546198); | |
2424 | Allpt900GeVScaling->SetBinContent(84,0.0244789); | |
2425 | Allpt900GeVScaling->SetBinContent(85,0.01692187); | |
2426 | Allpt900GeVScaling->SetBinContent(86,0.01669025); | |
2427 | Allpt900GeVScaling->SetBinContent(87,0.01506698); | |
2428 | Allpt900GeVScaling->SetBinContent(88,0.02896953); | |
2429 | Allpt900GeVScaling->SetBinContent(89,0.04019321); | |
2430 | Allpt900GeVScaling->SetBinContent(90,0.0108909); | |
2431 | Allpt900GeVScaling->SetBinContent(91,0.02059646); | |
2432 | Allpt900GeVScaling->SetBinContent(92,0.01781294); | |
2433 | Allpt900GeVScaling->SetBinContent(93,0.01930956); | |
2434 | Allpt900GeVScaling->SetBinContent(94,0.0259471); | |
2435 | Allpt900GeVScaling->SetBinContent(95,0.0114321); | |
2436 | Allpt900GeVScaling->SetBinContent(98,0.04961994); | |
2437 | Allpt900GeVScaling->SetBinContent(103,0.1436233); | |
2438 | Allpt900GeVScaling->SetBinError(13,0.04135227); | |
2439 | Allpt900GeVScaling->SetBinError(14,0.007955716); | |
2440 | Allpt900GeVScaling->SetBinError(15,0.005353158); | |
2441 | Allpt900GeVScaling->SetBinError(16,0.00465994); | |
2442 | Allpt900GeVScaling->SetBinError(17,0.004317818); | |
2443 | Allpt900GeVScaling->SetBinError(18,0.003992759); | |
2444 | Allpt900GeVScaling->SetBinError(19,0.003794229); | |
2445 | Allpt900GeVScaling->SetBinError(20,0.003428406); | |
2446 | Allpt900GeVScaling->SetBinError(21,0.002309662); | |
2447 | Allpt900GeVScaling->SetBinError(22,0.002082593); | |
2448 | Allpt900GeVScaling->SetBinError(23,0.001768867); | |
2449 | Allpt900GeVScaling->SetBinError(24,0.001734781); | |
2450 | Allpt900GeVScaling->SetBinError(25,0.001668325); | |
2451 | Allpt900GeVScaling->SetBinError(26,0.001736728); | |
2452 | Allpt900GeVScaling->SetBinError(27,0.001793642); | |
2453 | Allpt900GeVScaling->SetBinError(28,0.001824914); | |
2454 | Allpt900GeVScaling->SetBinError(29,0.002216558); | |
2455 | Allpt900GeVScaling->SetBinError(30,0.00224095); | |
2456 | Allpt900GeVScaling->SetBinError(31,0.002244602); | |
2457 | Allpt900GeVScaling->SetBinError(32,0.002073202); | |
2458 | Allpt900GeVScaling->SetBinError(33,0.001913981); | |
2459 | Allpt900GeVScaling->SetBinError(34,0.002456659); | |
2460 | Allpt900GeVScaling->SetBinError(35,0.002596584); | |
2461 | Allpt900GeVScaling->SetBinError(36,0.002232065); | |
2462 | Allpt900GeVScaling->SetBinError(37,0.00251725); | |
2463 | Allpt900GeVScaling->SetBinError(38,0.002196274); | |
2464 | Allpt900GeVScaling->SetBinError(39,0.002513529); | |
2465 | Allpt900GeVScaling->SetBinError(40,0.002973807); | |
2466 | Allpt900GeVScaling->SetBinError(41,0.002807704); | |
2467 | Allpt900GeVScaling->SetBinError(42,0.002773487); | |
2468 | Allpt900GeVScaling->SetBinError(43,0.002527062); | |
2469 | Allpt900GeVScaling->SetBinError(44,0.002921618); | |
2470 | Allpt900GeVScaling->SetBinError(45,0.002907984); | |
2471 | Allpt900GeVScaling->SetBinError(46,0.003115439); | |
2472 | Allpt900GeVScaling->SetBinError(47,0.003224686); | |
2473 | Allpt900GeVScaling->SetBinError(48,0.00312276); | |
2474 | Allpt900GeVScaling->SetBinError(49,0.00393121); | |
2475 | Allpt900GeVScaling->SetBinError(50,0.003948797); | |
2476 | Allpt900GeVScaling->SetBinError(51,0.005565144); | |
2477 | Allpt900GeVScaling->SetBinError(52,0.004615559); | |
2478 | Allpt900GeVScaling->SetBinError(53,0.006431509); | |
2479 | Allpt900GeVScaling->SetBinError(54,0.004787345); | |
2480 | Allpt900GeVScaling->SetBinError(55,0.004506561); | |
2481 | Allpt900GeVScaling->SetBinError(56,0.004277351); | |
2482 | Allpt900GeVScaling->SetBinError(57,0.005084143); | |
2483 | Allpt900GeVScaling->SetBinError(58,0.005085463); | |
2484 | Allpt900GeVScaling->SetBinError(59,0.005312616); | |
2485 | Allpt900GeVScaling->SetBinError(60,0.003899113); | |
2486 | Allpt900GeVScaling->SetBinError(61,0.003977416); | |
2487 | Allpt900GeVScaling->SetBinError(62,0.004292332); | |
2488 | Allpt900GeVScaling->SetBinError(63,0.005072534); | |
2489 | Allpt900GeVScaling->SetBinError(64,0.006271891); | |
2490 | Allpt900GeVScaling->SetBinError(65,0.006463988); | |
2491 | Allpt900GeVScaling->SetBinError(66,0.005869634); | |
2492 | Allpt900GeVScaling->SetBinError(67,0.008405251); | |
2493 | Allpt900GeVScaling->SetBinError(68,0.009847454); | |
2494 | Allpt900GeVScaling->SetBinError(69,0.009749354); | |
2495 | Allpt900GeVScaling->SetBinError(70,0.007179523); | |
2496 | Allpt900GeVScaling->SetBinError(71,0.01004867); | |
2497 | Allpt900GeVScaling->SetBinError(72,0.01065873); | |
2498 | Allpt900GeVScaling->SetBinError(73,0.007849093); | |
2499 | Allpt900GeVScaling->SetBinError(74,0.01402708); | |
2500 | Allpt900GeVScaling->SetBinError(75,0.01330162); | |
2501 | Allpt900GeVScaling->SetBinError(76,0.01245402); | |
2502 | Allpt900GeVScaling->SetBinError(77,0.02130282); | |
2503 | Allpt900GeVScaling->SetBinError(78,0.02296044); | |
2504 | Allpt900GeVScaling->SetBinError(79,0.01175655); | |
2505 | Allpt900GeVScaling->SetBinError(80,0.0187519); | |
2506 | Allpt900GeVScaling->SetBinError(81,0.009932965); | |
2507 | Allpt900GeVScaling->SetBinError(82,0.007798875); | |
2508 | Allpt900GeVScaling->SetBinError(83,0.01126926); | |
2509 | Allpt900GeVScaling->SetBinError(84,0.01123177); | |
2510 | Allpt900GeVScaling->SetBinError(85,0.01013651); | |
2511 | Allpt900GeVScaling->SetBinError(86,0.01187595); | |
2512 | Allpt900GeVScaling->SetBinError(87,0.009213867); | |
2513 | Allpt900GeVScaling->SetBinError(88,0.02054123); | |
2514 | Allpt900GeVScaling->SetBinError(89,0.01976358); | |
2515 | Allpt900GeVScaling->SetBinError(90,0.006322856); | |
2516 | Allpt900GeVScaling->SetBinError(91,0.01400211); | |
2517 | Allpt900GeVScaling->SetBinError(92,0.01786717); | |
2518 | Allpt900GeVScaling->SetBinError(93,0.01938449); | |
2519 | Allpt900GeVScaling->SetBinError(94,0.01853139); | |
2520 | Allpt900GeVScaling->SetBinError(95,0.01149767); | |
2521 | Allpt900GeVScaling->SetBinError(98,0.03786105); | |
2522 | Allpt900GeVScaling->SetBinError(103,0.1493976); | |
2523 | Allpt900GeVScaling->SetMinimum(0); | |
2524 | Allpt900GeVScaling->SetMaximum(0.04); | |
2525 | Allpt900GeVScaling->SetEntries(482.6447); | |
2526 | Allpt900GeVScaling->SetStats(0); | |
2527 | Allpt900GeVScaling->SetMarkerStyle(20); | |
2528 | Allpt900GeVScaling->GetXaxis()->SetTitle("p_{T}"); | |
2529 | Allpt900GeVScaling->GetXaxis()->SetRange(1,91); | |
2530 | Allpt900GeVScaling->GetYaxis()->SetTitle("Ratio of E_{T}^{background}/E_{T}^{had, meas.}"); | |
2531 | Allpt900GeVScaling->GetYaxis()->SetTitleOffset(1.2); | |
2532 | Allpt7TeVScaling->Add(Allpt900GeVScaling); | |
2533 | Allpt7TeVScaling->Scale(0.5); | |
2534 | delete Allpt900GeVScaling; | |
2535 | return Allpt7TeVScaling; | |
2536 | } | |
2537 | ||
2538 | TH1D *pp276ITSBkgd(){ | |
2539 | TH1D *Allpt7TeVScaling = new TH1D("Allpt7TeVScaling","Reconstructed E_{T} from misidentified electrons",111, xAxis1); | |
2540 | Allpt7TeVScaling->SetBinContent(11,0.2557976); | |
2541 | Allpt7TeVScaling->SetBinContent(12,0.1130502); | |
2542 | Allpt7TeVScaling->SetBinContent(13,0.07504393); | |
2543 | Allpt7TeVScaling->SetBinContent(14,0.05774832); | |
2544 | Allpt7TeVScaling->SetBinContent(15,0.06389806); | |
2545 | Allpt7TeVScaling->SetBinContent(16,0.0468956); | |
2546 | Allpt7TeVScaling->SetBinContent(17,0.04355167); | |
2547 | Allpt7TeVScaling->SetBinContent(18,0.04035013); | |
2548 | Allpt7TeVScaling->SetBinContent(19,0.04359472); | |
2549 | Allpt7TeVScaling->SetBinContent(20,0.03392261); | |
2550 | Allpt7TeVScaling->SetBinContent(21,0.0327676); | |
2551 | Allpt7TeVScaling->SetBinContent(22,0.02916985); | |
2552 | Allpt7TeVScaling->SetBinContent(23,0.02603138); | |
2553 | Allpt7TeVScaling->SetBinContent(24,0.02298032); | |
2554 | Allpt7TeVScaling->SetBinContent(25,0.02366939); | |
2555 | Allpt7TeVScaling->SetBinContent(26,0.01941947); | |
2556 | Allpt7TeVScaling->SetBinContent(27,0.02077003); | |
2557 | Allpt7TeVScaling->SetBinContent(28,0.01985847); | |
2558 | Allpt7TeVScaling->SetBinContent(29,0.0177459); | |
2559 | Allpt7TeVScaling->SetBinContent(30,0.01889314); | |
2560 | Allpt7TeVScaling->SetBinContent(31,0.01783637); | |
2561 | Allpt7TeVScaling->SetBinContent(32,0.01742894); | |
2562 | Allpt7TeVScaling->SetBinContent(33,0.01400672); | |
2563 | Allpt7TeVScaling->SetBinContent(34,0.01509014); | |
2564 | Allpt7TeVScaling->SetBinContent(35,0.01473409); | |
2565 | Allpt7TeVScaling->SetBinContent(36,0.01337399); | |
2566 | Allpt7TeVScaling->SetBinContent(37,0.01458302); | |
2567 | Allpt7TeVScaling->SetBinContent(38,0.01103552); | |
2568 | Allpt7TeVScaling->SetBinContent(39,0.01440217); | |
2569 | Allpt7TeVScaling->SetBinContent(40,0.0147644); | |
2570 | Allpt7TeVScaling->SetBinContent(41,0.01459072); | |
2571 | Allpt7TeVScaling->SetBinContent(42,0.01318416); | |
2572 | Allpt7TeVScaling->SetBinContent(43,0.01364365); | |
2573 | Allpt7TeVScaling->SetBinContent(44,0.01186023); | |
2574 | Allpt7TeVScaling->SetBinContent(45,0.01218222); | |
2575 | Allpt7TeVScaling->SetBinContent(46,0.01015807); | |
2576 | Allpt7TeVScaling->SetBinContent(47,0.01158454); | |
2577 | Allpt7TeVScaling->SetBinContent(48,0.009338749); | |
2578 | Allpt7TeVScaling->SetBinContent(49,0.01320016); | |
2579 | Allpt7TeVScaling->SetBinContent(50,0.01029357); | |
2580 | Allpt7TeVScaling->SetBinContent(51,0.01238829); | |
2581 | Allpt7TeVScaling->SetBinContent(52,0.008714745); | |
2582 | Allpt7TeVScaling->SetBinContent(53,0.01300408); | |
2583 | Allpt7TeVScaling->SetBinContent(54,0.009445714); | |
2584 | Allpt7TeVScaling->SetBinContent(55,0.01301231); | |
2585 | Allpt7TeVScaling->SetBinContent(56,0.01010809); | |
2586 | Allpt7TeVScaling->SetBinContent(57,0.01181843); | |
2587 | Allpt7TeVScaling->SetBinContent(58,0.01037317); | |
2588 | Allpt7TeVScaling->SetBinContent(59,0.01172911); | |
2589 | Allpt7TeVScaling->SetBinContent(60,0.007576451); | |
2590 | Allpt7TeVScaling->SetBinContent(61,0.011185); | |
2591 | Allpt7TeVScaling->SetBinContent(62,0.01009882); | |
2592 | Allpt7TeVScaling->SetBinContent(63,0.01042078); | |
2593 | Allpt7TeVScaling->SetBinContent(64,0.01079128); | |
2594 | Allpt7TeVScaling->SetBinContent(65,0.008657009); | |
2595 | Allpt7TeVScaling->SetBinContent(66,0.009641373); | |
2596 | Allpt7TeVScaling->SetBinContent(67,0.01201938); | |
2597 | Allpt7TeVScaling->SetBinContent(68,0.01031088); | |
2598 | Allpt7TeVScaling->SetBinContent(69,0.009905995); | |
2599 | Allpt7TeVScaling->SetBinContent(70,0.009569216); | |
2600 | Allpt7TeVScaling->SetBinContent(71,0.009473246); | |
2601 | Allpt7TeVScaling->SetBinContent(72,0.00825013); | |
2602 | Allpt7TeVScaling->SetBinContent(73,0.008405926); | |
2603 | Allpt7TeVScaling->SetBinContent(74,0.006479467); | |
2604 | Allpt7TeVScaling->SetBinContent(75,0.01135131); | |
2605 | Allpt7TeVScaling->SetBinContent(76,0.007318432); | |
2606 | Allpt7TeVScaling->SetBinContent(77,0.01145386); | |
2607 | Allpt7TeVScaling->SetBinContent(78,0.01425465); | |
2608 | Allpt7TeVScaling->SetBinContent(79,0.01205772); | |
2609 | Allpt7TeVScaling->SetBinContent(80,0.009454997); | |
2610 | Allpt7TeVScaling->SetBinContent(81,0.006863416); | |
2611 | Allpt7TeVScaling->SetBinContent(82,0.006285407); | |
2612 | Allpt7TeVScaling->SetBinContent(83,0.004974776); | |
2613 | Allpt7TeVScaling->SetBinContent(84,0.00748478); | |
2614 | Allpt7TeVScaling->SetBinContent(85,0.002485323); | |
2615 | Allpt7TeVScaling->SetBinContent(86,0.009973802); | |
2616 | Allpt7TeVScaling->SetBinContent(87,0.00543998); | |
2617 | Allpt7TeVScaling->SetBinContent(89,0.01703395); | |
2618 | Allpt7TeVScaling->SetBinContent(90,0.004394557); | |
2619 | Allpt7TeVScaling->SetBinContent(96,0.01833441); | |
2620 | Allpt7TeVScaling->SetBinContent(98,0.02964621); | |
2621 | Allpt7TeVScaling->SetBinContent(101,0.0574538); | |
2622 | Allpt7TeVScaling->SetBinError(11,0.07407797); | |
2623 | Allpt7TeVScaling->SetBinError(12,0.01275005); | |
2624 | Allpt7TeVScaling->SetBinError(13,0.00608927); | |
2625 | Allpt7TeVScaling->SetBinError(14,0.00428747); | |
2626 | Allpt7TeVScaling->SetBinError(15,0.004071853); | |
2627 | Allpt7TeVScaling->SetBinError(16,0.003225169); | |
2628 | Allpt7TeVScaling->SetBinError(17,0.002968269); | |
2629 | Allpt7TeVScaling->SetBinError(18,0.002761875); | |
2630 | Allpt7TeVScaling->SetBinError(19,0.002800096); | |
2631 | Allpt7TeVScaling->SetBinError(20,0.002386005); | |
2632 | Allpt7TeVScaling->SetBinError(21,0.001589813); | |
2633 | Allpt7TeVScaling->SetBinError(22,0.001475329); | |
2634 | Allpt7TeVScaling->SetBinError(23,0.001364666); | |
2635 | Allpt7TeVScaling->SetBinError(24,0.00126007); | |
2636 | Allpt7TeVScaling->SetBinError(25,0.001265789); | |
2637 | Allpt7TeVScaling->SetBinError(26,0.001156208); | |
2638 | Allpt7TeVScaling->SetBinError(27,0.001182566); | |
2639 | Allpt7TeVScaling->SetBinError(28,0.001171098); | |
2640 | Allpt7TeVScaling->SetBinError(29,0.001122203); | |
2641 | Allpt7TeVScaling->SetBinError(30,0.001173633); | |
2642 | Allpt7TeVScaling->SetBinError(31,0.001154546); | |
2643 | Allpt7TeVScaling->SetBinError(32,0.001162445); | |
2644 | Allpt7TeVScaling->SetBinError(33,0.001067574); | |
2645 | Allpt7TeVScaling->SetBinError(34,0.001116243); | |
2646 | Allpt7TeVScaling->SetBinError(35,0.001144851); | |
2647 | Allpt7TeVScaling->SetBinError(36,0.001110251); | |
2648 | Allpt7TeVScaling->SetBinError(37,0.001192711); | |
2649 | Allpt7TeVScaling->SetBinError(38,0.001062774); | |
2650 | Allpt7TeVScaling->SetBinError(39,0.001255752); | |
2651 | Allpt7TeVScaling->SetBinError(40,0.001319021); | |
2652 | Allpt7TeVScaling->SetBinError(41,0.001323284); | |
2653 | Allpt7TeVScaling->SetBinError(42,0.001303463); | |
2654 | Allpt7TeVScaling->SetBinError(43,0.001388458); | |
2655 | Allpt7TeVScaling->SetBinError(44,0.001312344); | |
2656 | Allpt7TeVScaling->SetBinError(45,0.001383885); | |
2657 | Allpt7TeVScaling->SetBinError(46,0.001289152); | |
2658 | Allpt7TeVScaling->SetBinError(47,0.001430287); | |
2659 | Allpt7TeVScaling->SetBinError(48,0.001302716); | |
2660 | Allpt7TeVScaling->SetBinError(49,0.001578988); | |
2661 | Allpt7TeVScaling->SetBinError(50,0.0014581); | |
2662 | Allpt7TeVScaling->SetBinError(51,0.00165325); | |
2663 | Allpt7TeVScaling->SetBinError(52,0.001404793); | |
2664 | Allpt7TeVScaling->SetBinError(53,0.001757303); | |
2665 | Allpt7TeVScaling->SetBinError(54,0.001562987); | |
2666 | Allpt7TeVScaling->SetBinError(55,0.001911932); | |
2667 | Allpt7TeVScaling->SetBinError(56,0.001695077); | |
2668 | Allpt7TeVScaling->SetBinError(57,0.001932989); | |
2669 | Allpt7TeVScaling->SetBinError(58,0.001844963); | |
2670 | Allpt7TeVScaling->SetBinError(59,0.002000117); | |
2671 | Allpt7TeVScaling->SetBinError(60,0.001689391); | |
2672 | Allpt7TeVScaling->SetBinError(61,0.001386339); | |
2673 | Allpt7TeVScaling->SetBinError(62,0.001349763); | |
2674 | Allpt7TeVScaling->SetBinError(63,0.001454327); | |
2675 | Allpt7TeVScaling->SetBinError(64,0.001584791); | |
2676 | Allpt7TeVScaling->SetBinError(65,0.00151686); | |
2677 | Allpt7TeVScaling->SetBinError(66,0.001668507); | |
2678 | Allpt7TeVScaling->SetBinError(67,0.001963962); | |
2679 | Allpt7TeVScaling->SetBinError(68,0.001970941); | |
2680 | Allpt7TeVScaling->SetBinError(69,0.001992913); | |
2681 | Allpt7TeVScaling->SetBinError(70,0.002006771); | |
2682 | Allpt7TeVScaling->SetBinError(71,0.002187254); | |
2683 | Allpt7TeVScaling->SetBinError(72,0.002140473); | |
2684 | Allpt7TeVScaling->SetBinError(73,0.002256925); | |
2685 | Allpt7TeVScaling->SetBinError(74,0.002056219); | |
2686 | Allpt7TeVScaling->SetBinError(75,0.002854892); | |
2687 | Allpt7TeVScaling->SetBinError(76,0.002450159); | |
2688 | Allpt7TeVScaling->SetBinError(77,0.003197387); | |
2689 | Allpt7TeVScaling->SetBinError(78,0.003840947); | |
2690 | Allpt7TeVScaling->SetBinError(79,0.003660464); | |
2691 | Allpt7TeVScaling->SetBinError(80,0.003363956); | |
2692 | Allpt7TeVScaling->SetBinError(81,0.001624793); | |
2693 | Allpt7TeVScaling->SetBinError(82,0.00181065); | |
2694 | Allpt7TeVScaling->SetBinError(83,0.001888966); | |
2695 | Allpt7TeVScaling->SetBinError(84,0.002671173); | |
2696 | Allpt7TeVScaling->SetBinError(85,0.001759843); | |
2697 | Allpt7TeVScaling->SetBinError(86,0.004094911); | |
2698 | Allpt7TeVScaling->SetBinError(87,0.003871198); | |
2699 | Allpt7TeVScaling->SetBinError(89,0.008630108); | |
2700 | Allpt7TeVScaling->SetBinError(90,0.004405367); | |
2701 | Allpt7TeVScaling->SetBinError(96,0.01308755); | |
2702 | Allpt7TeVScaling->SetBinError(98,0.02127892); | |
2703 | Allpt7TeVScaling->SetBinError(101,0.05904744); | |
2704 | Allpt7TeVScaling->SetMinimum(0); | |
2705 | Allpt7TeVScaling->SetMaximum(0.04); | |
2706 | Allpt7TeVScaling->SetEntries(300.6659); | |
2707 | Allpt7TeVScaling->SetStats(0); | |
2708 | Allpt7TeVScaling->SetMarkerStyle(20); | |
2709 | Allpt7TeVScaling->GetXaxis()->SetTitle("p_{T}"); | |
2710 | Allpt7TeVScaling->GetXaxis()->SetRange(1,61); | |
2711 | Allpt7TeVScaling->GetYaxis()->SetTitle("Ratio of E_{T}^{background}/E_{T}^{had, meas.}"); | |
2712 | Allpt7TeVScaling->GetYaxis()->SetTitleOffset(1.2); | |
2713 | TH1D *Allpt900GeVScaling = new TH1D("Allpt900GeVScaling","Reconstructed E_{T} from misidentified electrons",111, xAxis1); | |
2714 | Allpt900GeVScaling->SetBinContent(9,1); | |
2715 | Allpt900GeVScaling->SetBinContent(11,0.2834258); | |
2716 | Allpt900GeVScaling->SetBinContent(12,0.1188776); | |
2717 | Allpt900GeVScaling->SetBinContent(13,0.08085647); | |
2718 | Allpt900GeVScaling->SetBinContent(14,0.05677858); | |
2719 | Allpt900GeVScaling->SetBinContent(15,0.0616757); | |
2720 | Allpt900GeVScaling->SetBinContent(16,0.04844882); | |
2721 | Allpt900GeVScaling->SetBinContent(17,0.03999142); | |
2722 | Allpt900GeVScaling->SetBinContent(18,0.03890007); | |
2723 | Allpt900GeVScaling->SetBinContent(19,0.0406008); | |
2724 | Allpt900GeVScaling->SetBinContent(20,0.02900627); | |
2725 | Allpt900GeVScaling->SetBinContent(21,0.03088961); | |
2726 | Allpt900GeVScaling->SetBinContent(22,0.03033992); | |
2727 | Allpt900GeVScaling->SetBinContent(23,0.02521969); | |
2728 | Allpt900GeVScaling->SetBinContent(24,0.02143008); | |
2729 | Allpt900GeVScaling->SetBinContent(25,0.02266187); | |
2730 | Allpt900GeVScaling->SetBinContent(26,0.01981764); | |
2731 | Allpt900GeVScaling->SetBinContent(27,0.02127366); | |
2732 | Allpt900GeVScaling->SetBinContent(28,0.0192753); | |
2733 | Allpt900GeVScaling->SetBinContent(29,0.01854744); | |
2734 | Allpt900GeVScaling->SetBinContent(30,0.01903471); | |
2735 | Allpt900GeVScaling->SetBinContent(31,0.01819287); | |
2736 | Allpt900GeVScaling->SetBinContent(32,0.01715784); | |
2737 | Allpt900GeVScaling->SetBinContent(33,0.01488607); | |
2738 | Allpt900GeVScaling->SetBinContent(34,0.0156348); | |
2739 | Allpt900GeVScaling->SetBinContent(35,0.01699235); | |
2740 | Allpt900GeVScaling->SetBinContent(36,0.01398954); | |
2741 | Allpt900GeVScaling->SetBinContent(37,0.01435865); | |
2742 | Allpt900GeVScaling->SetBinContent(38,0.01236315); | |
2743 | Allpt900GeVScaling->SetBinContent(39,0.01282288); | |
2744 | Allpt900GeVScaling->SetBinContent(40,0.01668125); | |
2745 | Allpt900GeVScaling->SetBinContent(41,0.01372736); | |
2746 | Allpt900GeVScaling->SetBinContent(42,0.01433745); | |
2747 | Allpt900GeVScaling->SetBinContent(43,0.01477496); | |
2748 | Allpt900GeVScaling->SetBinContent(44,0.0116776); | |
2749 | Allpt900GeVScaling->SetBinContent(45,0.01245205); | |
2750 | Allpt900GeVScaling->SetBinContent(46,0.009475905); | |
2751 | Allpt900GeVScaling->SetBinContent(47,0.01117031); | |
2752 | Allpt900GeVScaling->SetBinContent(48,0.009558273); | |
2753 | Allpt900GeVScaling->SetBinContent(49,0.01404047); | |
2754 | Allpt900GeVScaling->SetBinContent(50,0.01037464); | |
2755 | Allpt900GeVScaling->SetBinContent(51,0.01195013); | |
2756 | Allpt900GeVScaling->SetBinContent(52,0.01155682); | |
2757 | Allpt900GeVScaling->SetBinContent(53,0.0137127); | |
2758 | Allpt900GeVScaling->SetBinContent(54,0.009255665); | |
2759 | Allpt900GeVScaling->SetBinContent(55,0.01133598); | |
2760 | Allpt900GeVScaling->SetBinContent(56,0.009080946); | |
2761 | Allpt900GeVScaling->SetBinContent(57,0.01124535); | |
2762 | Allpt900GeVScaling->SetBinContent(58,0.008398657); | |
2763 | Allpt900GeVScaling->SetBinContent(59,0.008324869); | |
2764 | Allpt900GeVScaling->SetBinContent(60,0.007103489); | |
2765 | Allpt900GeVScaling->SetBinContent(61,0.01142644); | |
2766 | Allpt900GeVScaling->SetBinContent(62,0.0110906); | |
2767 | Allpt900GeVScaling->SetBinContent(63,0.01076479); | |
2768 | Allpt900GeVScaling->SetBinContent(64,0.01168746); | |
2769 | Allpt900GeVScaling->SetBinContent(65,0.008513672); | |
2770 | Allpt900GeVScaling->SetBinContent(66,0.00828279); | |
2771 | Allpt900GeVScaling->SetBinContent(67,0.01140648); | |
2772 | Allpt900GeVScaling->SetBinContent(68,0.01111323); | |
2773 | Allpt900GeVScaling->SetBinContent(69,0.007425678); | |
2774 | Allpt900GeVScaling->SetBinContent(70,0.009847098); | |
2775 | Allpt900GeVScaling->SetBinContent(71,0.009834419); | |
2776 | Allpt900GeVScaling->SetBinContent(72,0.008930991); | |
2777 | Allpt900GeVScaling->SetBinContent(73,0.00669819); | |
2778 | Allpt900GeVScaling->SetBinContent(74,0.00662618); | |
2779 | Allpt900GeVScaling->SetBinContent(75,0.01370167); | |
2780 | Allpt900GeVScaling->SetBinContent(76,0.006451024); | |
2781 | Allpt900GeVScaling->SetBinContent(77,0.01307605); | |
2782 | Allpt900GeVScaling->SetBinContent(78,0.01579264); | |
2783 | Allpt900GeVScaling->SetBinContent(79,0.01255205); | |
2784 | Allpt900GeVScaling->SetBinContent(80,0.01010045); | |
2785 | Allpt900GeVScaling->SetBinContent(81,0.01082155); | |
2786 | Allpt900GeVScaling->SetBinContent(82,0.006495255); | |
2787 | Allpt900GeVScaling->SetBinContent(83,0.005512525); | |
2788 | Allpt900GeVScaling->SetBinContent(84,0.003527945); | |
2789 | Allpt900GeVScaling->SetBinContent(85,0.001806946); | |
2790 | Allpt900GeVScaling->SetBinContent(86,0.004225982); | |
2791 | Allpt900GeVScaling->SetBinContent(89,0.01106803); | |
2792 | Allpt900GeVScaling->SetBinContent(90,0.005044269); | |
2793 | Allpt900GeVScaling->SetBinContent(98,0.04456838); | |
2794 | Allpt900GeVScaling->SetBinContent(101,0.07960857); | |
2795 | Allpt900GeVScaling->SetBinError(9,1.414214); | |
2796 | Allpt900GeVScaling->SetBinError(11,0.08936516); | |
2797 | Allpt900GeVScaling->SetBinError(12,0.01474769); | |
2798 | Allpt900GeVScaling->SetBinError(13,0.006947232); | |
2799 | Allpt900GeVScaling->SetBinError(14,0.00470276); | |
2800 | Allpt900GeVScaling->SetBinError(15,0.004394222); | |
2801 | Allpt900GeVScaling->SetBinError(16,0.003598075); | |
2802 | Allpt900GeVScaling->SetBinError(17,0.00312581); | |
2803 | Allpt900GeVScaling->SetBinError(18,0.003002622); | |
2804 | Allpt900GeVScaling->SetBinError(19,0.002976063); | |
2805 | Allpt900GeVScaling->SetBinError(20,0.002438669); | |
2806 | Allpt900GeVScaling->SetBinError(21,0.00172144); | |
2807 | Allpt900GeVScaling->SetBinError(22,0.001661658); | |
2808 | Allpt900GeVScaling->SetBinError(23,0.001477901); | |
2809 | Allpt900GeVScaling->SetBinError(24,0.001329128); | |
2810 | Allpt900GeVScaling->SetBinError(25,0.00137131); | |
2811 | Allpt900GeVScaling->SetBinError(26,0.001299862); | |
2812 | Allpt900GeVScaling->SetBinError(27,0.001332285); | |
2813 | Allpt900GeVScaling->SetBinError(28,0.001274491); | |
2814 | Allpt900GeVScaling->SetBinError(29,0.001266741); | |
2815 | Allpt900GeVScaling->SetBinError(30,0.001305369); | |
2816 | Allpt900GeVScaling->SetBinError(31,0.001295113); | |
2817 | Allpt900GeVScaling->SetBinError(32,0.001278961); | |
2818 | Allpt900GeVScaling->SetBinError(33,0.00122243); | |
2819 | Allpt900GeVScaling->SetBinError(34,0.001256858); | |
2820 | Allpt900GeVScaling->SetBinError(35,0.001357681); | |
2821 | Allpt900GeVScaling->SetBinError(36,0.001267233); | |
2822 | Allpt900GeVScaling->SetBinError(37,0.00131839); | |
2823 | Allpt900GeVScaling->SetBinError(38,0.001256835); | |
2824 | Allpt900GeVScaling->SetBinError(39,0.001306764); | |
2825 | Allpt900GeVScaling->SetBinError(40,0.001544152); | |
2826 | Allpt900GeVScaling->SetBinError(41,0.001438378); | |
2827 | Allpt900GeVScaling->SetBinError(42,0.001507702); | |
2828 | Allpt900GeVScaling->SetBinError(43,0.001615741); | |
2829 | Allpt900GeVScaling->SetBinError(44,0.00143817); | |
2830 | Allpt900GeVScaling->SetBinError(45,0.001536765); | |
2831 | Allpt900GeVScaling->SetBinError(46,0.001377493); | |
2832 | Allpt900GeVScaling->SetBinError(47,0.001536932); | |
2833 | Allpt900GeVScaling->SetBinError(48,0.001466076); | |
2834 | Allpt900GeVScaling->SetBinError(49,0.001814185); | |
2835 | Allpt900GeVScaling->SetBinError(50,0.001620601); | |
2836 | Allpt900GeVScaling->SetBinError(51,0.001814658); | |
2837 | Allpt900GeVScaling->SetBinError(52,0.001822325); | |
2838 | Allpt900GeVScaling->SetBinError(53,0.001976947); | |
2839 | Allpt900GeVScaling->SetBinError(54,0.001729338); | |
2840 | Allpt900GeVScaling->SetBinError(55,0.001988634); | |
2841 | Allpt900GeVScaling->SetBinError(56,0.001792157); | |
2842 | Allpt900GeVScaling->SetBinError(57,0.00206644); | |
2843 | Allpt900GeVScaling->SetBinError(58,0.001842037); | |
2844 | Allpt900GeVScaling->SetBinError(59,0.001826512); | |
2845 | Allpt900GeVScaling->SetBinError(60,0.001732292); | |
2846 | Allpt900GeVScaling->SetBinError(61,0.001512696); | |
2847 | Allpt900GeVScaling->SetBinError(62,0.001543542); | |
2848 | Allpt900GeVScaling->SetBinError(63,0.001633358); | |
2849 | Allpt900GeVScaling->SetBinError(64,0.001816012); | |
2850 | Allpt900GeVScaling->SetBinError(65,0.001680175); | |
2851 | Allpt900GeVScaling->SetBinError(66,0.001692314); | |
2852 | Allpt900GeVScaling->SetBinError(67,0.00213108); | |
2853 | Allpt900GeVScaling->SetBinError(68,0.002295308); | |
2854 | Allpt900GeVScaling->SetBinError(69,0.001926907); | |
2855 | Allpt900GeVScaling->SetBinError(70,0.002272706); | |
2856 | Allpt900GeVScaling->SetBinError(71,0.002475109); | |
2857 | Allpt900GeVScaling->SetBinError(72,0.002399123); | |
2858 | Allpt900GeVScaling->SetBinError(73,0.002241209); | |
2859 | Allpt900GeVScaling->SetBinError(74,0.002365641); | |
2860 | Allpt900GeVScaling->SetBinError(75,0.003450507); | |
2861 | Allpt900GeVScaling->SetBinError(76,0.002503392); | |
2862 | Allpt900GeVScaling->SetBinError(77,0.003801781); | |
2863 | Allpt900GeVScaling->SetBinError(78,0.004417338); | |
2864 | Allpt900GeVScaling->SetBinError(79,0.00421245); | |
2865 | Allpt900GeVScaling->SetBinError(80,0.003844397); | |
2866 | Allpt900GeVScaling->SetBinError(81,0.002274688); | |
2867 | Allpt900GeVScaling->SetBinError(82,0.002043975); | |
2868 | Allpt900GeVScaling->SetBinError(83,0.002262563); | |
2869 | Allpt900GeVScaling->SetBinError(84,0.00204239); | |
2870 | Allpt900GeVScaling->SetBinError(85,0.00180851); | |
2871 | Allpt900GeVScaling->SetBinError(86,0.002994568); | |
2872 | Allpt900GeVScaling->SetBinError(89,0.007939965); | |
2873 | Allpt900GeVScaling->SetBinError(90,0.005058548); | |
2874 | Allpt900GeVScaling->SetBinError(98,0.03222111); | |
2875 | Allpt900GeVScaling->SetBinError(101,0.08264771); | |
2876 | Allpt900GeVScaling->SetMinimum(0); | |
2877 | Allpt900GeVScaling->SetMaximum(0.04); | |
2878 | Allpt900GeVScaling->SetEntries(3.837105); | |
2879 | Allpt900GeVScaling->SetStats(0); | |
2880 | Allpt900GeVScaling->SetMarkerStyle(20); | |
2881 | Allpt900GeVScaling->GetXaxis()->SetTitle("p_{T}"); | |
2882 | Allpt900GeVScaling->GetXaxis()->SetRange(1,61); | |
2883 | Allpt900GeVScaling->GetYaxis()->SetTitle("Ratio of E_{T}^{background}/E_{T}^{had, meas.}"); | |
2884 | Allpt900GeVScaling->GetYaxis()->SetTitleOffset(1.2); | |
2885 | ||
2886 | Allpt7TeVScaling->Add(Allpt900GeVScaling); | |
2887 | Allpt7TeVScaling->Scale(0.5); | |
2888 | delete Allpt900GeVScaling; | |
2889 | return Allpt7TeVScaling; | |
2890 | } |