ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/cbrown/AnalysisFramework/Plotting/Modules/Setup.C
(Generate patch)

Comparing UserCode/cbrown/AnalysisFramework/Plotting/Modules/Setup.C (file contents):
Revision 1.2 by buchmann, Wed Jul 6 11:01:20 2011 UTC vs.
Revision 1.58 by buchmann, Sun Nov 27 11:08:55 2011 UTC

# Line 1 | Line 1
1   #include <iostream>
2 + #include <fstream>
3   #include <TCut.h>
4 + #include <TColor.h>
5 + #include <TStyle.h>
6 +
7   #ifndef SampleClassLoaded
8   #include "SampleClass.C"
9   #endif
10 + #define SetupLoaded
11 + #ifndef ResultLibraryClassLoaded
12 + #include "ResultLibraryClass.C"
13 + #endif
14  
15  
16   using namespace std;
17  
18  
19   namespace PlottingSetup {
20 <  float luminosity=751.0;//486.0;//468.0//336.;//pb^{-1}
20 >
21 >  string directoryname="DataWithUpdatedv4_4653ipb";
22 >  
23 >  bool RestrictToMassPeak=true; //if you want to switch between offpeak ("false") and onpeak ("true") analysis please use this switch; the masscut below will be adapted automatically when adding samples :-)
24 >  
25 >  float luminosity=4653.74;//p3523.18;//2096.0;//3172.73;//2096.0;//1936;//751.0;//486.0;//468.0//336.;//pb^{-1}
26 > //  float luminosity=3523.18;//2096.0;//3172.73;//2096.0;//1936;//751.0;//486.0;//468.0//336.;//pb^{-1}
27 > //  float luminosity=2096.0;//3172.73;//2096.0;//1936;//751.0;//486.0;//468.0//336.;//pb^{-1}
28 >  float lumiuncert=0.045;// to be indicated in [0,1] range, e.g. for 4% write 0.04
29 >
30    string jzbvariabledata="jzb[1]+0.06*pt";
31    string jzbvariablemc="jzb[1]+0.04*pt";
32 <  
32 >  float jzbHigh = 350.; // Range for JZB plots
33 >
34    samplecollection allsamples("completesamplecollection");
35 +  samplecollection signalsamples("signalsamplecollection");
36 +  samplecollection scansample("scansamplecollection");
37 +  samplecollection raresample("raresamplecollection");
38    int data=1;
39    int mc=0;
40    int mcwithsignal=2;
41    TCut passtrig("(passed_triggers||!is_data)");
42    TCut cutmass("abs(mll-91.2)<20");
43 +  TCut genMassCut("abs(genMll-91.2)<20");
44 +  TCut openmasscut("mll>40"); // this is the mass cut used in the off peak analysis!
45 +  TCut openGenmasscut("genMll>40");
46    //TCut cutmass("mll>2");
47    TCut basiccut("mll>2");//basically nothing.
48 <  TCut basicqualitycut("(pfJetGoodNum>=2&&pfJetGoodID[0])&&(pfJetGoodNum>=2&&pfJetGoodID[1])");//don't use this for the "essential cut", because we want to plot nJets as well as mll in the inclusive case; we thus use it as an addition nJets cut.
48 >  TCut basicqualitycut("(pfJetGoodNum>=2&&pfJetGoodID[0]!=0)&&(pfJetGoodNum>=2&&pfJetGoodID[1]!=0)");//don't use this for the "essential cut", because we want to plot nJets as well as mll in the inclusive case; we thus use it as an addition nJets cut.
49    //TCut jetqualitycut("(pfJetGoodNum>=2&&pfJetGoodID[0])&&(pfJetGoodNum>=2&&pfJetGoodID[1])");//now part of the basiccut
50    //TCut jetqualitycut("mll>0");
51 +  
52    TCut cutnJets("pfJetGoodNum>=3"&&basicqualitycut);
53 +  TCut cutnJetsJESdown("pfJetGoodNum25>=3"&&basicqualitycut);
54 +  TCut cutnJetsJESup("pfJetGoodNum35>=3"&&basicqualitycut);
55    TCut cutOSOF("(id1!=id2)&&(ch1*ch2<0)");
56    TCut cutOSSF("(id1==id2)&&(ch1*ch2<0)");
57 +  TCut sidebandcut("(mll>55&&mll<70)||(mll>112&&mll<160)");
58 +
59 +  TCut Weight("weight"); // this is the weight that is used everywhere
60 +
61 +  //TCut sidebandcut("(mll>61&&mll<70)||(mll>112&&mll<190)");
62    //TCut basiccut("(passed_triggers||!is_data)");
63    
64 +  // SUSY scan parameters
65 +  float mglustart=25;float mgluend=1200;float mglustep=25;
66 +  float mLSPstart=25;float mLSPend=1200;float mLSPstep=25;
67 +  
68 +  float m0start=20;  float m0end=2000;  float m0step=20;
69 +  float m12start=20; float m12end=760;  float m12step=20;
70 +  
71 +  int ScanXzones=15; // number of zones in x for (mSUGRA) scans
72 +  int ScanYzones=15; // number of zones in y for (mSUGRA) scans
73 +
74 +  //scan types:
75 +  int mSUGRA=1;
76 +  int SMS=2;
77 +  int GMSB=3;
78 +
79    TCut essential(passtrig);//add here any cuts you ALWAYS want
80    int dogaus=0;
81    int doKM=1;
# Line 36 | Line 83 | namespace PlottingSetup {
83    int dogaus3sigma=3;
84    int Kostasmethod=-99;
85    
86 <  float fitresultconstdata=0;//this is the result when fitting in the 0-30 GeV range!
87 <  float fitresultconstmc=0;//this is the result when fitting in the 0-30 GeV range!
86 >  float fitresultconstdata=0;//this is the result when fitting in the 0-30 GeV range
87 >  float fitresultconstmc=0;//this is the result when fitting in the 0-30 GeV range
88 >  
89 >  int method=-1;//Fitting method
90 >  
91 >  //now some style issues:
92 >  float DataMarkerSize=1.2;
93 >  
94 >  //here we save our number of predicted and observed events (with errors)
95 >  vector<float> Nobs;
96 >  vector<float> Npred;
97 >  vector<float> Nprederr;
98 >  
99 >  //here we save our "flipped" number of predicted and observed events (with errors) -- this means that we consider JZB<-X as observed and construct the corresponding prediction
100 >  bool alwaysflip=false;
101 >  vector<float> flippedNobs;
102 >  vector<float> flippedNpred;
103 >  vector<float> flippedNprederr;
104    
105 <  int method=-1;
105 >  int noJES=0;
106 >  int JESdown=1;
107 >  int JESup=2;
108 >  
109 >  //some refinement: nicer color gradient
110 >  Double_t stops[5] = { 0.00, 0.34, 0.61, 0.84, 1.00 };
111 >  Double_t red[5]   = { 0.00, 0.00, 0.87, 1.00, 0.51 };
112 >  Double_t green[5] = { 0.00, 0.81, 1.00, 0.20, 0.00 };
113 >  Double_t blue[5]  = { 0.51, 1.00, 0.12, 0.00, 0.00 };
114 >  int fi=TColor::CreateGradientColorTable(5, stops, red, green,blue, 255);
115 >  
116 >  // LIMITS
117 >  int nlimittoys=1000; // how many toys for setting limits
118 >  string limitmethod="cls";//what method to use to set limits
119 >  int limitpatience=15; // for how many minutes should the limit calculation (for one configuration!) be allowed to run before being aborted? this only has an effect when when running on the t3 batch; the value for CRAB is on the next line
120 >  int limitpatienceCRAB=60;
121 >  bool ConsiderSignalContaminationForLimits=true; //whether or not to consider signal contamination when computing limits (standard:true)
122 >  int nuisancemodel=1;
123 >  
124 >  float JZBPeakPositionData=-999;
125 >  float JZBPeakPositionMC=-999;
126 >  float JZBPeakWidthData=-999;
127 >  float JZBPeakWidthMC=-999;
128 >
129 >  // two possible future systematics that ATM only take up CPU time in SUSY scans
130 >  bool computeJZBefficiency=false;
131 >  bool computeJZBresponse=false;
132 >
133 >  bool requireZ=true;
134 >
135 >  string ScanSampleDirectory="GMSB/"; // possibilities (atm) : SMS/, SMS_T5zzl/, GMSB/, mSUGRA/     note: this string needs to either contain "SMS", "GMSB", or "mSUGRA"
136  
137 +  ResultLibrary allresults;
138   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines