ra4_macros  bede988c286599a3a84b77a4d788ac0a971e89f9
plot_datavsdata.cxx
Go to the documentation of this file.
1 // plot_dps: Macro that plots variables both for comissioning DPS
2 
3 #include <iostream>
4 #include <vector>
5 
6 #include "TChain.h"
7 #include "TH1D.h"
8 #include "TCanvas.h"
9 #include "TLegend.h"
10 #include "TLine.h"
11 #include "TString.h"
12 #include "TColor.h"
13 
14 #include "styles.hpp"
15 #include "utilities.hpp"
16 #include "utilities_macros.hpp"
17 
18 namespace {
19  TString luminosity="1.";
20  TString plot_type=".pdf";
21  TString plot_style="CMSPaper";
22 }
23 
24 using namespace std;
25 using std::cout;
26 using std::endl;
27 
28 int main(){
29 
30  TString bfolder("");
31  string hostname = execute("echo $HOSTNAME");
32  if(Contains(hostname, "cms") || Contains(hostname, "compute-"))
33  bfolder = "/net/cms2"; // In laptops, you can't create a /net folder
34 
35  TString folder1l(bfolder+"/cms2r0/babymaker/babies/2016_02_04/data/singlelep/combined/skim_1lht500met200/");
36  TString foldermc(bfolder+"/cms2r0/babymaker/babies/2015_11_28/mc/skim_1lht500met200/");
37 
38  vector<TString> s_2016;
39  s_2016.push_back("/net/cms2/cms2r0/babymaker/babies/2016_06_14/data/skim_standard/*.root");
40  vector<TString> s_2015;
41  s_2015.push_back("/net/cms2/cms2r0/babymaker/babies/2016_04_29/data/merged_1lht500met200/*.root");
42  //s_2015.push_back("/net/cms2/cms2r0/babymaker/babies/2016_02_04/data/singlelep/combined/skim_1lht500met200/*root");
43 
44  vector<sfeats> Samples;
45 
46  int imj(Samples.size());
47  Samples.push_back(sfeats(s_2016, "2016 data (2.1 fb^{-1})", kBlack,1,"(trig[4]||trig[8]||trig[13]||trig[33])&&pass")); Samples.back().isData=true;
48  Samples.push_back(sfeats(s_2015, "2015 data (2.3 fb^{-1})", kBlue+2,1,"(trig[4]||trig[8])&&pass")); //Samples.back().isData=true; //
49  Samples.back().doBand = true;
50 
51  Samples.push_back(sfeats(s_2016, "Dilepton events", kBlack,1,"nonblind&&((nleps==2&&nbm>=0&&nbm<=2&&njets>=5)||(nleps==1&&nveto==1&&nbm>=1&&nbm<=2&&njets>=6&&mt>140))&&(trig[4]||trig[8]||trig[13]||trig[33])&&pass")); Samples.back().isData=true;
52  Samples.push_back(sfeats(s_2016, "Single lepton events, m_{T} < 140", kBlue+2,1,"nonblind&&nleps==1&&nveto==0&&nbm>=1&&njets>=6&&mt<=140&&(trig[4]||trig[8]||trig[13]||trig[33])&&pass")); Samples.back().doBand = true;
53 
54  vector<int> mj_sam;
55  mj_sam.push_back(imj);
56  mj_sam.push_back(imj+1);
57 
58  vector<int> dilep_comp;
59  dilep_comp.push_back(imj+2);
60  dilep_comp.push_back(imj+3);
61 
62  vector<hfeats> vars;
63  plot_style="CMSPaperNoRatio";
64  vars.push_back(hfeats("mj14",10,25,775, mj_sam, "M_{J} [GeV]",
65  "nleps==1&&ht>500&&met>200&&njets>=6&&nbm>=1&&mt<140",400,"results"));
66 
67  vars.push_back(hfeats("mj14",10,25,775, dilep_comp, "M_{J} [GeV]",
68  "ht>500&&met>200&&met<500",400,"results"));
69  vars.back().normalize=true;
70 
71  plot_distributions(Samples, vars, luminosity, plot_type, plot_style, "datavsdata", false, true);
72 
73 
74 }
void plot_distributions(std::vector< sfeats > Samples, std::vector< hfeats > vars, TString luminosity="10", TString filetype=".eps", TString namestyle="LargeLabels", TString dir="1d", bool doRatio=false, bool showcuts=false)
int main()
bool Contains(const std::string &text, const std::string &pattern)
STL namespace.
std::string execute(const std::string &cmd)