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

Comparing UserCode/cbrown/Development/Plotting/Modules/Setup.C (file contents):
Revision 1.1 by buchmann, Mon Jan 30 14:46:26 2012 UTC vs.
Revision 1.43 by buchmann, Fri Jun 28 15:02:21 2013 UTC

# Line 18 | Line 18 | using namespace std;
18  
19   namespace PlottingSetup {
20  
21 <  string directoryname="Results_With_4653ipb__Step8___AllInOne___PAPERMODE";
21 >  string directoryname="MetPlots53NewCR1";
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}
25 >  bool UseSidebandsForcJZB=false;
26 >  bool FullMCAnalysis=false;
27 >  bool DoBTag=false;
28 >  
29 >  // the 2012 switch is in GeneralToolBox
30 >    
31 >  float luminosity=4980;//4653.74;//p3523.18;//2096.0;//3172.73;//2096.0;//1936;//751.0;//486.0;//468.0//336.;//pb^{-1}
32   //  float luminosity=3523.18;//2096.0;//3172.73;//2096.0;//1936;//751.0;//486.0;//468.0//336.;//pb^{-1}
33   //  float luminosity=2096.0;//3172.73;//2096.0;//1936;//751.0;//486.0;//468.0//336.;//pb^{-1}
34 <  float lumiuncert=0.045;// to be indicated in [0,1] range, e.g. for 4% write 0.04
35 <
36 <  string jzbvariabledata="jzb[1]+0.06*pt";
37 <  string jzbvariablemc="jzb[1]+0.04*pt";
38 <  float jzbHigh = 400.; // Range for JZB plots
34 >  float lumiuncert=0.022;//0.045;// to be indicated in [0,1] range, e.g. for 4% write 0.04
35 >  
36 >  //float luminosity2012=19490;//9200;
37 >  float luminosity2012=9200;//9200;
38 >  float lumiuncert2012=0.022;
39 >
40 > //  string jzbvariabledata="jzb[1]+0.06*pt";
41 > //  string jzbvariablemc="jzb[1]+0.04*pt";
42 >  string jzbvariabledata="(jzb[1]+0.062*pt)";
43 >  string jzbvariablemc="(jzb[1]+0.036*pt)";
44 >  float jzbHigh = 450.; // Range for JZB plots
45 >  float iMllLow = 20.; // Range for Edge Fitting (and mll plot) for iJZB
46 >  float iMllHigh = 300.; // Range for Edge Fitting (and mll plot) for iJZB
47  
48    samplecollection allsamples("completesamplecollection");
49 +  samplecollection qcdsamples("QCDcollection");
50    samplecollection signalsamples("signalsamplecollection");
51    samplecollection systsamples("systematicssamplecollection");
52    samplecollection scansample("scansamplecollection");
53    samplecollection raresample("raresamplecollection");
54 +  samplecollection comparesamples("comparesamplecollection");
55 +  samplecollection SingleLeptonData("SingleLeptonData");
56    int data=1;
57    int mc=0;
58    int mcwithsignal=2;
59 <  TCut passtrig("(passed_triggers||!is_data)");
60 <  TCut cutmass("abs(mll-91.2)<20");
61 <  TCut genMassCut("abs(genMll-91.2)<20");
62 <  TCut openmasscut("mll>40"); // this is the mass cut used in the off peak analysis!
63 <  TCut openGenmasscut("genMll>40");
59 >   TCut leptoncut("(abs(eta1)<1.4 && abs(eta2)<1.4 && pt1>20 && pt2>20)");
60 >  TCut passtrig("((passed_triggers *  (  (id1==id2)*(id1==0)*(trigger_bit&1) + (id1==id2)*(id1==1)*(trigger_bit&2) + (id1!=id2)*(trigger_bit&4|trigger_bit&8)   )  ||!is_data))"&&leptoncut);
61 > //   TCut passtrig("((passed_triggers ))"&&leptoncut);
62 > //  TCut passtrig(leptoncut);
63 >  
64 >  TCut openmasscut("mll>20"); // this is the mass cut used in the off peak analysis!
65 >  TCut openGenmasscut("genMll>15");
66 >  TCut opensidebandcut("mll>500&&mll<100&&SIDEBANDS_CALLED_FOR_OFFPEAK_ANALYSIS"); // this won't let anything thru ...
67 >  
68 >  TCut Restrmasscut("abs(mll-91)<10"); // this is the mass cut used in the on peak analysis!
69 >  TCut RestrGenmasscut("abs(genMll-91)<10");
70 >  TCut Restrsidebandcut("((mll>55&&mll<70)||(mll>112&&mll<160))");
71 >  
72 >  TCut cutmass(Restrmasscut);
73 >  TCut genMassCut(RestrGenmasscut);
74 >  
75 >  TCut bTagRequirement("bTagProbCSVBP[0]>0.679");
76 >  
77 >  // WARNING: please also check ActiveSamples for 2012 settings
78    //TCut cutmass("mll>2");
79 <  TCut basiccut("mll>2");//basically nothing.
80 <  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.
81 <  //TCut jetqualitycut("(pfJetGoodNum>=2&&pfJetGoodID[0])&&(pfJetGoodNum>=2&&pfJetGoodID[1])");//now part of the basiccut
82 <  //TCut jetqualitycut("mll>0");
83 <  
84 <  TCut cutnJets("pfJetGoodNum>=3"&&basicqualitycut);
85 <  TCut cutnJetsJESdown("pfJetGoodNum25>=3"&&basicqualitycut);
55 <  TCut cutnJetsJESup("pfJetGoodNum35>=3"&&basicqualitycut);
79 > //  TCut basiccut("mll>2"&&leptoncut&&"(bTagProbTHighEff[0]>1.7)&&(bTagProbTHighEff[1]>1.7)");//basically nothing.
80 >  TCut basiccut("mll>2"&&leptoncut);//basically nothing
81 >  TCut basicqualitycut("(pfJetGoodNum40>=2&&pfJetGoodID[0]!=0)&&(pfJetGoodNum40>=2&&pfJetGoodID[1]!=0)"&&basiccut);//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.
82 >  
83 >  TCut cutnJets("pfJetGoodNum40>=3"&&basicqualitycut);
84 >  TCut cutnJetsJESdown("pfJetGoodNumn1sigma>=3"&&basicqualitycut);
85 >  TCut cutnJetsJESup("pfJetGoodNump1sigma>=3"&&basicqualitycut);
86    TCut cutOSOF("(id1!=id2)&&(ch1*ch2<0)");
87    TCut cutOSSF("(id1==id2)&&(ch1*ch2<0)");
88 <  TCut sidebandcut("(mll>55&&mll<70)||(mll>112&&mll<160)");
88 >  TCut sidebandcut(Restrsidebandcut);
89 >  
90 >  TCut TriLepSF("tri_id2==tri_id3");
91 >  TCut TriLepOF("tri_id2!=tri_id3");
92 >
93  
94    // SUSY scan parameters
95    float mglustart=25;float mgluend=1200;float mglustep=25;
96    float mLSPstart=25;float mLSPend=1200;float mLSPstep=25;
97    
98 <  float m0start=20;  float m0end=2000;  float m0step=20;
99 <  float m12start=20; float m12end=760;  float m12step=20;
100 <  
98 >  float m0start=0;  float m0end=3000;  float m0step=20;
99 >  float m12start=0; float m12end=1000;  float m12step=20;
100 >
101    int ScanXzones=15; // number of zones in x for (mSUGRA) scans
102    int ScanYzones=15; // number of zones in y for (mSUGRA) scans
103 +  
104 +  string mSUGRAxsFile="Plotting/Modules/external/msugra_m0_m12_10_0_1_NLO_1.0.txt";
105 +  string SMSReferenceXSFile="Plotting/Modules/external/reference_xSec_SMS-new.root";
106  
107    //scan types:
108    int mSUGRA=1;
# Line 94 | Line 131 | namespace PlottingSetup {
131    
132    //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
133    bool alwaysflip=false;
134 +  bool allowflipping=true;
135    vector<float> flippedNobs;
136    vector<float> flippedNpred;
137    vector<float> flippedNprederr;
# Line 102 | Line 140 | namespace PlottingSetup {
140    int JESdown=1;
141    int JESup=2;
142    
143 +  // Uncertainties ONPEAK
144 +  float zjetsestimateuncertONPEAK=0.2;
145 +  float emuncertONPEAK=0.10;
146 +  float emsidebanduncertONPEAK=0.10;
147 +  float eemmsidebanduncertONPEAK=0.10;
148 +
149 +  // Uncertainties OFFPEAK (iJZB)
150 +  float zjetsestimateuncertOFFPEAK=0.2;
151 +  float emuncertOFFPEAK=0.10;
152 +  float emsidebanduncertOFFPEAK=0.0;
153 +  float eemmsidebanduncertOFFPEAK=0.0;
154 +
155 +  
156    //some refinement: nicer color gradient
157    Double_t stops[5] = { 0.00, 0.34, 0.61, 0.84, 1.00 };
158    Double_t red[5]   = { 0.00, 0.00, 0.87, 1.00, 0.51 };
# Line 112 | Line 163 | namespace PlottingSetup {
163    // LIMITS
164    int nlimittoys=1000; // how many toys for setting limits
165    string limitmethod="cls";//what method to use to set limits
166 <  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
166 >  int limitpatience=20; // 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
167    int limitpatienceCRAB=60;
168    bool ConsiderSignalContaminationForLimits=true; //whether or not to consider signal contamination when computing limits (standard:true)
169    int nuisancemodel=1;
# Line 126 | Line 177 | namespace PlottingSetup {
177    bool computeJZBefficiency=false;
178    bool computeJZBresponse=false;
179  
180 <  bool requireZ=true;
180 >  bool requireZ=true;//this is switched to "off" automatically when doing offpeak!
181 >  
182 > //  string ScanSampleDirectory="SMS_T5zzh_newslots";//DileptonmSUGRAScan__pieces
183 >
184 >  string ScanSampleDirectory="DileptonmSUGRAScan__pieces"; // possibilities (atm) : SMS_T5zz/, SMS_T5zzl/, SMS_T5zzh/, GMSB/, mSUGRA/     note: this string needs to either contain "SMS", "GMSB", or "mSUGRA"
185 > //  string ScanSampleDirectory="SMS_T1lh"; // possibilities (atm) : SMS_T5zz/, SMS_T5zzl/, SMS_T5zzh/, GMSB/, mSUGRA/     note: this string needs to either contain "SMS", "GMSB", or "mSUGRA"
186  
187 <  string ScanSampleDirectory="SMS_T5zz/"; // possibilities (atm) : SMS_T5zz/, SMS_T5zzl/, SMS_T5zzh/, GMSB/, mSUGRA/     note: this string needs to either contain "SMS", "GMSB", or "mSUGRA"
187 >  string FilterEfficiencyFile = "/shome/buchmann/JellyfishCBAF/DistributedModelCalculations/Limits/FilterEfficiencyv3.root";
188 >  string CMSSW_dir = "/shome/buchmann/final_production_2011/CMSSW_4_2_8/src/";
189  
190    ResultLibrary allresults;
191 +  
192 +  bool IsZbAnalysis=false;
193 +  bool IsWZAnalysis=false;
194 +  bool IsJZBAnalysis=true;
195 +  
196 +  int do_CleanCache=false;
197   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines