ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/FGolf/TCMETGathering/makeGatherPlots.C
Revision: 1.2
Committed: Sat Jan 29 02:34:54 2011 UTC (14 years, 3 months ago) by fgolf
Content type: text/plain
Branch: MAIN
CVS Tags: tcMET_gathering_290111, HEAD
Changes since 1.1: +1 -3 lines
Log Message:
load local tdrStyle

File Contents

# User Rev Content
1 fgolf 1.1 //#include "cuts.h"
2    
3     #include "TROOT.h"
4     #include "TCanvas.h"
5     #include "TIterator.h"
6    
7     #include "../plotter/SampleType.h"
8     #include "cuts.h"
9    
10     #include <vector>
11    
12     void makeGatherPlots() {
13    
14 fgolf 1.2 gROOT->ProcessLine(".L tdrstyle.C");
15 fgolf 1.1 gROOT->ProcessLine("setTDRStyle()");
16    
17     gSystem->Load("libTree.so");
18     gSystem->Load("libPhysics.so");
19     gSystem->Load("libEG.so");
20     gSystem->Load("libMathCore.so");
21     gROOT->ProcessLine(".L ../libs/libHuntGather2011Plotter.so");
22     gROOT->ProcessLine(".L ../libs/libCMS2NtupleMacrosCORE.so");
23     gROOT->ProcessLine(".L ../libs/libCMS2NtupleMacrosTools.so");
24     gROOT->ProcessLine(".L ../libs/libHuntGather2011Babymaker.so");
25    
26     //
27     // define samples
28     //
29    
30     float k_ww = 1.0;
31     float k_wz = 1.0;
32     float k_zz = 1.0;
33     float k_dy = 1.0;
34     float k_gammajets = 1.0;
35     float k_ttbar = 1.0;
36     float k_wjets = 1.0;
37    
38     TString base = "/nfs-3/userdata/cms2/gather/";
39     //TString base = "/tas/cms2/gather/";
40    
41     BabySample *bs_dilep_wz = new BabySample("wz", "mc",
42     base+"/mc/WZtoAnything_TuneZ2_7TeV-pythia6-tauola_Fall10-E7TeV_ProbDist_2010Data_BX156_START38_V12-v1/V03-06-17/baby_gather.root",
43     "", k_wz, BACKGROUND, kGray, 1001);
44    
45     BabySample *bs_dilep_zz = new BabySample("zz", "mc",
46     base+"/mc/ZZtoAnything_TuneZ2_7TeV-pythia6-tauola_Fall10-E7TeV_ProbDist_2010Data_BX156_START38_V12-v1/V03-06-17/baby_gather.root",
47     "", k_zz, BACKGROUND, 10, 1001);
48    
49     BabySample *bs_dilep_dy = new BabySample("dy", "mc",
50     base+"/mc/DYJetsToLL_TuneD6T_M-50_7TeV-madgraph-tauola_Fall10-E7TeV_ProbDist_2010Data_BX156_START38_V12-v1/V03-06-17/baby_gather.root",
51     "", k_dy, BACKGROUND, kAzure-2, 1001);
52    
53     BabySample *bs_dilep_gammajets = new BabySample("gammajets", "mc",
54     base+"/mc/PhotonVJets_7TeV-madgraph_Fall10-E7TeV_ProbDist_2010Data_BX156_START38_V12-v1/V03-06-17/baby_gather.root",
55     "", k_gammajets, BACKGROUND, kOrange-3, 1001);
56    
57     BabySample *bs_dilep_ttbar = new BabySample("ttbar", "mc",
58     base+"/mc/TTJets_TuneD6T_7TeV-madgraph-tauola_Fall10-E7TeV_ProbDist_2010Data_BX156_START38_V12-v1/V03-06-17/baby_gather.root",
59     "", k_ttbar, BACKGROUND, kRed+1, 1001);
60    
61     BabySample *bs_dilep_wjets = new BabySample("wjets", "mc",
62     base+"/mc/WJetsToLNu_TuneZ2_7TeV-madgraph-tauola_Fall10-E7TeV_ProbDist_2010Data_BX156_START38_V12-v1/V03-06-18/baby_gather.root",
63     "", k_dy, BACKGROUND, kGreen-3, 1001);
64    
65     BabySample *bs_dilep_ww = new BabySample("ww", "mc",
66     base+"/mc/WWTo2L2Nu_TuneZ2_7TeV-pythia6_Fall10-E7TeV_ProbDist_2010Data_BX156_START38_V12-v1/V03-06-14/baby_gather.root",
67     "", k_ww, BACKGROUND, kGray+1, 1001);
68    
69     //
70     // Data
71     //
72    
73     BabySample *bs_data = new BabySample("data", "data",
74     base+"/data/Electron_Run2010B-Nov4ReReco_v1_RECO/V03-06-16/diLepPt1020Skim/baby_gather_skimmed_ntuple*.root",
75     "", 1.0, DATA);
76     bs_data->add(base+"/data/Mu_Run2010B-Nov4ReReco_v1_RECO/V03-06-17/diLepPt1020Skim/baby_gather.root");
77    
78     //
79     // Luminosity determination
80     //
81    
82     const char *goodrunlist = "../runlists/Cert_TopNov5_Merged_135821-149442_allPVT.txt";
83     float goodruns_lumi = 35.0;
84     std::cout << "Using " << goodrunlist << " for goodruns\n";
85     set_goodrun_file(goodrunlist);
86     unsigned int lastgoodrun = max_run();
87     unsigned int lastgoodlumi = max_run_max_lumi();
88     float est_lumi = GetIntLumi(bs_data, goodruns_lumi);
89     float est_newruns_lumi = est_lumi - goodruns_lumi;
90     std::cout << "Integrated luminosity total estimate: " << est_lumi << std::endl;
91    
92     //
93     // Define the mixtures of signals, background
94     // and data that can be plotted
95     //
96    
97     std::vector<BabySample*> babyVectorSM;
98     babyVectorSM.push_back(bs_dilep_ww);
99     babyVectorSM.push_back(bs_dilep_wz);
100     babyVectorSM.push_back(bs_dilep_zz);
101     babyVectorSM.push_back(bs_dilep_dy);
102     babyVectorSM.push_back(bs_dilep_gammajets);
103     babyVectorSM.push_back(bs_dilep_ttbar);
104     babyVectorSM.push_back(bs_dilep_wjets);
105     babyVectorSM.push_back(bs_data);
106    
107     //
108     // Make the plots
109     //
110    
111     TCut validation_ee ("validation_ee", base_dilep+ee_dilep);
112     TCut validation_mm ("validation_mm", base_dilep+mm_dilep);
113    
114     DrawAll("mass", "validation_mass_goodruns_ee", validation_ee,
115     Form("!isdata||(run < %i || (run == %i && ls <= %i))",
116     lastgoodrun, lastgoodrun, lastgoodlumi), goodruns_lumi, 50,0., 200., 0, babyVectorSM);
117     DrawAll("mass", "validation_mass_newruns_ee", validation_ee,
118     Form("!isdata||(run > %i || (run == %i && ls > %i))",
119     lastgoodrun, lastgoodrun, lastgoodlumi), est_newruns_lumi, 50,0., 200., 0, babyVectorSM);
120     DrawAll("mass", "validation_mass_goodruns_mm", validation_mm,
121     Form("!isdata||(run < %i || (run == %i && ls <= %i))",
122     lastgoodrun, lastgoodrun, lastgoodlumi), goodruns_lumi, 50,0., 200., 0, babyVectorSM);
123     DrawAll("mass", "validation_mass_newruns_mm", validation_mm,
124     Form("!isdata||(run > %i || (run == %i && ls > %i))",
125     lastgoodrun, lastgoodrun, lastgoodlumi), est_newruns_lumi, 50,0., 200., 0, babyVectorSM);
126    
127     //
128     // tcMET w/ pfclusters plots
129     //
130     std::cout << "Making pfcluster-based tcMET plots...\n";
131    
132     DrawAll("tcmet","tcmet_ee_allj",zee_dilep,"",est_lumi,40,0.,300.,0, babyVectorSM);
133     DrawAll("tcmet","tcmet_ee_0j",zee_dilep+"njets==0","",est_lumi,40,0.,300.,0, babyVectorSM);
134     DrawAll("tcmet","tcmet_ee_1j",zee_dilep+"njets==1","",est_lumi,40,0.,300.,0, babyVectorSM);
135     DrawAll("tcmet","tcmet_ee_ge2j",zee_dilep+"njets>1","",est_lumi,40,0.,300.,0, babyVectorSM);
136    
137     DrawAll("tcmet","tcmet_mm_allj",zmm_dilep,"",est_lumi,40,0.,300.,0, babyVectorSM);
138     DrawAll("tcmet","tcmet_mm_0j",zmm_dilep+"njets==0","",est_lumi,40,0.,300.,0, babyVectorSM);
139     DrawAll("tcmet","tcmet_mm_1j",zmm_dilep+"njets==1","",est_lumi,40,0.,300.,0, babyVectorSM);
140     DrawAll("tcmet","tcmet_mm_ge2j",zmm_dilep+"njets>1","",est_lumi,40,0.,300.,0, babyVectorSM);
141    
142     DrawAll("tcmet","tcmet_em_allj",nonz_dilep,"",est_lumi,40,0.,300.,0, babyVectorSM);
143     DrawAll("tcmet","tcmet_em_0j",nonz_dilep+"njets==0","",est_lumi,40,0.,300.,0, babyVectorSM);
144     DrawAll("tcmet","tcmet_em_1j",nonz_dilep+"njets==1","",est_lumi,40,0.,300.,0, babyVectorSM);
145     DrawAll("tcmet","tcmet_em_ge2j",nonz_dilep+"njets>1","",est_lumi,40,0.,300.,0, babyVectorSM);
146    
147     //
148     // tcMET w/ pfclusters plots
149     //
150     std::cout << "Making calotower-based tcMET plots...\n";
151    
152     DrawAll("calotcmet","calotcmet_ee_allj",zee_dilep,"",est_lumi,40,0.,300.,0, babyVectorSM);
153     DrawAll("calotcmet","calotcmet_ee_0j",zee_dilep+"njets==0","",est_lumi,40,0.,300.,0, babyVectorSM);
154     DrawAll("calotcmet","calotcmet_ee_1j",zee_dilep+"njets==1","",est_lumi,40,0.,300.,0, babyVectorSM);
155     DrawAll("calotcmet","calotcmet_ee_ge2j",zee_dilep+"njets>1","",est_lumi,40,0.,300.,0, babyVectorSM);
156    
157     DrawAll("calotcmet","calotcmet_mm_allj",zmm_dilep,"",est_lumi,40,0.,300.,0, babyVectorSM);
158     DrawAll("calotcmet","calotcmet_mm_0j",zmm_dilep+"njets==0","",est_lumi,40,0.,300.,0, babyVectorSM);
159     DrawAll("calotcmet","calotcmet_mm_1j",zmm_dilep+"njets==1","",est_lumi,40,0.,300.,0, babyVectorSM);
160     DrawAll("calotcmet","calotcmet_mm_ge2j",zmm_dilep+"njets>1","",est_lumi,40,0.,300.,0, babyVectorSM);
161    
162     DrawAll("calotcmet","calotcmet_em_allj",nonz_dilep,"",est_lumi,40,0.,300.,0, babyVectorSM);
163     DrawAll("calotcmet","calotcmet_em_0j",nonz_dilep+"njets==0","",est_lumi,40,0.,300.,0, babyVectorSM);
164     DrawAll("calotcmet","calotcmet_em_1j",nonz_dilep+"njets==1","",est_lumi,40,0.,300.,0, babyVectorSM);
165     DrawAll("calotcmet","calotcmet_em_ge2j",nonz_dilep+"njets>1","",est_lumi,40,0.,300.,0, babyVectorSM);
166    
167     //
168     // tcMET w/ pfclusters plots
169     //
170     std::cout << "Making pfMET plots...\n";
171    
172     DrawAll("pfmet","pfmet_ee_allj",zee_dilep,"",est_lumi,40,0.,300.,0, babyVectorSM);
173     DrawAll("pfmet","pfmet_ee_0j",zee_dilep+"njets==0","",est_lumi,40,0.,300.,0, babyVectorSM);
174     DrawAll("pfmet","pfmet_ee_1j",zee_dilep+"njets==1","",est_lumi,40,0.,300.,0, babyVectorSM);
175     DrawAll("pfmet","pfmet_ee_ge2j",zee_dilep+"njets>1","",est_lumi,40,0.,300.,0, babyVectorSM);
176    
177     DrawAll("pfmet","pfmet_mm_allj",zmm_dilep,"",est_lumi,40,0.,300.,0, babyVectorSM);
178     DrawAll("pfmet","pfmet_mm_0j",zmm_dilep+"njets==0","",est_lumi,40,0.,300.,0, babyVectorSM);
179     DrawAll("pfmet","pfmet_mm_1j",zmm_dilep+"njets==1","",est_lumi,40,0.,300.,0, babyVectorSM);
180     DrawAll("pfmet","pfmet_mm_ge2j",zmm_dilep+"njets>1","",est_lumi,40,0.,300.,0, babyVectorSM);
181    
182     DrawAll("pfmet","pfmet_em_allj",nonz_dilep,"",est_lumi,40,0.,300.,0, babyVectorSM);
183     DrawAll("pfmet","pfmet_em_0j",nonz_dilep+"njets==0","",est_lumi,40,0.,300.,0, babyVectorSM);
184     DrawAll("pfmet","pfmet_em_1j",nonz_dilep+"njets==1","",est_lumi,40,0.,300.,0, babyVectorSM);
185     DrawAll("pfmet","pfmet_em_ge2j",nonz_dilep+"njets>1","",est_lumi,40,0.,300.,0, babyVectorSM);
186    
187     //
188     // Save the plots
189     //
190    
191     TSeqCollection *list = gROOT->GetListOfCanvases();
192     TIterator *iter = list->MakeIterator();
193     TCanvas *c1 = 0;
194    
195     while ((c1 = (TCanvas*)iter->Next())) {
196    
197     // lin
198     c1->Print(Form("../output/%s.png", c1->GetName()));
199     c1->Print(Form("../output/%s.root", c1->GetName()));
200    
201     // log
202     //TList *l1 = (TList*)c1->GetListOfPrimitives();
203     //l1->At(1)->GetYaxis()->SetMaximum(l1->At(1)->GetMaximum()*20);
204     c1->SetLogy(1);
205     c1->Print(Form("../output/%s_log.png", c1->GetName()));
206     //delete l1;
207     }
208    
209     //
210     // Tidy up
211     //
212    
213     delete bs_dilep_ww;
214     delete bs_dilep_wz;
215     delete bs_dilep_zz;
216     delete bs_dilep_dy;
217     delete bs_dilep_gammajets;
218     delete bs_dilep_ttbar;
219     delete bs_dilep_wjets;
220     delete bs_data;
221    
222     }