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.39 by buchmann, Tue Sep 13 15:30:19 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 <
10 > #define SetupLoaded
11  
12   using namespace std;
13  
14  
15   namespace PlottingSetup {
16 <  float luminosity=751.0;//486.0;//468.0//336.;//pb^{-1}
16 >
17 >  string directoryname="official_2096_golden_run";
18 >  
19 >  bool RestrictToMassPeak=true; // at the moment setting this to false will only trigger alarms all over the place, but the idea is to be able to switch between
20 >                                // the regular on-peak JZB method and an off-peak opposite sign analysis
21 >  
22 >  float luminosity=2096.0;//1936;//751.0;//486.0;//468.0//336.;//pb^{-1}
23 >  float lumiuncert=0.045;// to be indicated in [0,1] range, e.g. for 4% write 0.04
24 >
25    string jzbvariabledata="jzb[1]+0.06*pt";
26    string jzbvariablemc="jzb[1]+0.04*pt";
27 <  
27 >  float jzbHigh = 350.; // Range for JZB plots
28 >
29    samplecollection allsamples("completesamplecollection");
30 +  samplecollection signalsamples("signalsamplecollection");
31 +  samplecollection scansample("scansamplecollection");
32    int data=1;
33    int mc=0;
34    int mcwithsignal=2;
# Line 21 | Line 36 | namespace PlottingSetup {
36    TCut cutmass("abs(mll-91.2)<20");
37    //TCut cutmass("mll>2");
38    TCut basiccut("mll>2");//basically nothing.
39 <  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.
39 >  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.
40    //TCut jetqualitycut("(pfJetGoodNum>=2&&pfJetGoodID[0])&&(pfJetGoodNum>=2&&pfJetGoodID[1])");//now part of the basiccut
41    //TCut jetqualitycut("mll>0");
42 +  
43    TCut cutnJets("pfJetGoodNum>=3"&&basicqualitycut);
44 +  TCut cutnJetsJESdown("pfJetGoodNum25>=3"&&basicqualitycut);
45 +  TCut cutnJetsJESup("pfJetGoodNum35>=3"&&basicqualitycut);
46    TCut cutOSOF("(id1!=id2)&&(ch1*ch2<0)");
47    TCut cutOSSF("(id1==id2)&&(ch1*ch2<0)");
48 +  TCut sidebandcut("(mll>55&&mll<70)||(mll>112&&mll<160)");
49 +
50 +  //TCut sidebandcut("(mll>61&&mll<70)||(mll>112&&mll<190)");
51    //TCut basiccut("(passed_triggers||!is_data)");
52    
53 +  // SUSY scan parameters
54 +  float mglustart=25;float mgluend=1200;float mglustep=25;
55 +  float mLSPstart=25;float mLSPend=1200;float mLSPstep=25;
56 +  
57 +  float m0start=20;  float m0end=2000;  float m0step=20;
58 +  float m12start=20; float m12end=760;  float m12step=20;
59 +
60 +  
61    TCut essential(passtrig);//add here any cuts you ALWAYS want
62    int dogaus=0;
63    int doKM=1;
# Line 36 | Line 65 | namespace PlottingSetup {
65    int dogaus3sigma=3;
66    int Kostasmethod=-99;
67    
68 <  float fitresultconstdata=0;//this is the result when fitting in the 0-30 GeV range!
69 <  float fitresultconstmc=0;//this is the result when fitting in the 0-30 GeV range!
68 >  float fitresultconstdata=0;//this is the result when fitting in the 0-30 GeV range
69 >  float fitresultconstmc=0;//this is the result when fitting in the 0-30 GeV range
70 >  
71 >  int method=-1;//Fitting method
72 >  
73 >  //now some style issues:
74 >  float DataMarkerSize=1.2;
75 >  
76 >  //here we save our number of predicted and observed events (with errors)
77 >  vector<float> Nobs;
78 >  vector<float> Npred;
79 >  vector<float> Nprederr;
80 >  
81 >  int noJES=0;
82 >  int JESdown=1;
83 >  int JESup=2;
84 >  
85 >  //some refinement: nicer color gradient
86 >  Double_t stops[5] = { 0.00, 0.34, 0.61, 0.84, 1.00 };
87 >  Double_t red[5]   = { 0.00, 0.00, 0.87, 1.00, 0.51 };
88 >  Double_t green[5] = { 0.00, 0.81, 1.00, 0.20, 0.00 };
89 >  Double_t blue[5]  = { 0.51, 1.00, 0.12, 0.00, 0.00 };
90 >  int fi=TColor::CreateGradientColorTable(5, stops, red, green,blue, 255);
91 >  
92 >  // LIMITS
93 >  int nlimittoys=1000; // how many toys for setting limits
94 >  string limitmethod="bayesian";//what method to use to set limits
95 >  int limitpatience=50; // 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 grid.
96 >  bool ConsiderSignalContaminationForLimits=true; //whether or not to consider signal contamination when computing limits (standard:true)
97 >  int nuisancemodel=1;
98    
99 <  int method=-1;
99 >  float JZBPeakPositionData=-999;
100 >  float JZBPeakPositionMC=-999;
101 >  float JZBPeakWidthData=-999;
102 >  float JZBPeakWidthMC=-999;
103  
104 +  //watch out, the cbafbasedir string is in GeneralToolBox
105   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines