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

Comparing UserCode/cbrown/AnalysisFramework/Plotting/various_studies.C (file contents):
Revision 1.5 by buchmann, Tue Jul 19 07:06:51 2011 UTC vs.
Revision 1.12 by buchmann, Tue Jul 26 07:50:11 2011 UTC

# Line 9 | Line 9 | to compile: just run make ... that shoul
9   #include "Modules/GeneralToolBox.C"
10   #include "Modules/SampleClass.C"
11   #include "Modules/PeakFinder.C"
12 #include "Modules/HistoDB.C"
12   #include "Modules/Poisson_Calculator.C"
13   #include "Modules/setTDRStyle.C"
14   #include "Modules/ActiveSamples.C"
15   #include "Modules/UpperLimitsWithShape.C"
16   #include "Modules/Setup.C"
17 + #include "Modules/external/cl95cms.c"
18   #include "Modules/Plotting_Functions.C" //also included for peak finding etc.
19   #include "Modules/StudyModule.C" //also included for peak finding etc.
20 + #include "Modules/ExperimentalModule.C"
21 + #include "Modules/ResultModule.C"
22 + #include "Modules/LimitCalculation.C"
23 + #include "Modules/Systematics.C"
24 + #include "Modules/SUSYScan.C"
25  
26   #include <TCut.h>
27   #include <TROOT.h>
# Line 48 | Line 53 | int main()
53    gStyle->SetTextFont(42);
54    bool showList=false;
55    set_treename("events");//you can set the treename here to be used; options are "events" (for reco) for "PFevents" (for particle flow)
56 <  define_samples(showList,allsamples,signalsamples);
56 >  define_samples(showList,allsamples,signalsamples,scansample);
57    setlumi(luminosity);
58    do_png(true);
59 <  do_pdf(false);
60 <  do_eps(false);
61 <  do_C(false);
59 >  do_pdf(true);
60 >  do_eps(true);
61 >  do_C(true);
62    set_directory("summer_mc");//here you can give it a name, for instance "1234pb" or whatever you like :-)
63    setessentialcut(essential);//this sets the essential cut; this one is used in the draw command so it is AUTOMATICALLY applied everywhere. IMPORTANT: Do NOT store weights here!
64    stringstream resultsummary;
# Line 66 | Line 71 | int main()
71    bool do_test=false;/// DONE    (just any test you wish)
72    bool do_jzb_correction=false; //use this to find out the correction factor; originally this was done automatically but now you should do this separately and update Modules/Setup.C
73    bool do_find_sideband_definition=false;
74 <  bool do_pick_up_events=true; ///DONE
75 <  
74 >  bool do_pick_up_events=false; ///DONE
75 >  bool do_ttbar_with_shapes=false;
76 >  bool do_upper_limits=false;
77 >  
78 >  bool do_efficiency_scan_in_susy_space=false; /// NOW OUTSOURCED TO T3
79 >       bool requireZ=true;
80 >      
81    //**** part 1 : peak finding
82    float MCPeak=0,MCPeakError=0,DataPeak=0,DataPeakError=0,MCSigma=10,DataSigma=10;
83    method=Kostasmethod;//Kostasmethod;//dogaus3sigma;// options: dogaus,doKM,dogaus2sigma,dogaus3sigma
# Line 80 | Line 90 | int main()
90    if(MCPeak>0) mcjzb<<"("<<jzbvariablemc<<"-"<<TMath::Abs(MCPeak)<<")";
91    else mcjzb<<"("<<jzbvariablemc<<"+"<<TMath::Abs(MCPeak)<<")";
92    
93 <  cout << "With peak correction, we get : " << endl;
94 <  cout << "    Data : " << datajzb.str() << endl;
95 <  cout << "    MC : " << datajzb.str() << endl;
93 >  dout << "With peak correction, we get : " << endl;
94 >  dout << "    Data : " << datajzb.str() << endl;
95 >  dout << "    MC : " << datajzb.str() << endl;
96    
97    if(do_find_sideband_definition) find_sideband_definition();
98    
99    if(do_jzb_correction) {
100      find_correction_factors(jzbvariabledata,jzbvariablemc);
101 <    cout << "Please update Modules/Setup.C to reflect the following values (round them first ... )" <<endl;
102 <    cout << "Corrected JZB variable definition " << endl << "  Data: " << jzbvariabledata << "  and MC: " << jzbvariablemc << endl;
103 <    cout << endl;
104 <    cout << "If you're feeling lazy, copy & paste this : " << endl;
105 <    cout << "  string jzbvariabledata=\""<<jzbvariabledata<<"\";"<<endl;
106 <    cout << "  string jzbvariablemc=\""  <<jzbvariablemc<<"\";"<<endl;
101 >    dout << "Please update Modules/Setup.C to reflect the following values (round them first ... )" <<endl;
102 >    dout << "Corrected JZB variable definition " << endl << "  Data: " << jzbvariabledata << "  and MC: " << jzbvariablemc << endl;
103 >    dout << endl;
104 >    dout << "If you're feeling lazy, copy & paste this : " << endl;
105 >    dout << "  string jzbvariabledata=\""<<jzbvariabledata<<"\";"<<endl;
106 >    dout << "  string jzbvariablemc=\""  <<jzbvariablemc<<"\";"<<endl;
107    }
108    
109    if(study_sidebands) look_at_sidebands(mcjzb.str(),datajzb.str());
110    
111 +  vector<float>jzb_limit_bins;
112 +  jzb_limit_bins.push_back(50);
113 +  //jzb_limit_bins.push_back(75);jzb_limit_bins.push_back(100);
114 +  //jzb_limit_bins.push_back(150);jzb_limit_bins.push_back(200);jzb_limit_bins.push_back(500);
115 +
116 +  
117 +  if(do_ttbar_with_shapes) prepare_ttbar_limits(mcjzb.str(),datajzb.str(),DataPeakError,MCPeakError,jzb_limit_bins);
118 +  
119 +  if(do_upper_limits) calculate_upper_limits(mcjzb.str(),datajzb.str());
120 +  
121 +  if(do_efficiency_scan_in_susy_space) efficiency_scan_in_susy_space(mcjzb.str(),datajzb.str(),requireZ,MCPeakError);
122 +  
123    if(do_pick_up_events) {
124      
125 <    cout << "Observed: " << endl;
125 >    dout << "Observed: " << endl;
126      pick_up_events((const char*)(cutmass&&cutOSSF&&cutnJets&&basiccut&&"((jzb[1]+0.06*pt-2.84727)>100)"));
127 <    cout << "Predicted (JZB<-100) OSSF" << endl;
127 >    dout << "Predicted (JZB<-100) OSSF" << endl;
128      pick_up_events((const char*)(cutmass&&cutOSSF&&cutnJets&&basiccut&&"((jzb[1]+0.06*pt-2.84727)<-100)"));
129 <    cout << "Predicted (emu, JZB>100) OSOF" << endl;
129 >    dout << "Predicted (emu, JZB>100) OSOF" << endl;
130      pick_up_events((const char*)(cutmass&&cutOSOF&&cutnJets&&basiccut&&"((jzb[1]+0.06*pt-2.84727)>100)"));
131 <    cout << "Predicted (emu, JZB<-100) OSOF" << endl;
131 >    dout << "Predicted (emu, JZB<-100) OSOF" << endl;
132      pick_up_events((const char*)(cutmass&&cutOSOF&&cutnJets&&basiccut&&"((jzb[1]+0.06*pt-2.84727)<-100)"));
133 <    cout << "Predicted (SB emu, JZB>100) OSOF" << endl;
133 >    dout << "Predicted (SB emu, JZB>100) OSOF" << endl;
134      pick_up_events((const char*)(sidebandcut&&cutOSOF&&cutnJets&&basiccut&&"((jzb[1]+0.06*pt-2.84727)>100)"));
135 <    cout << "Predicted (SB emu, JZB<-100) OSOF" << endl;
135 >    dout << "Predicted (SB emu, JZB<-100) OSOF" << endl;
136      pick_up_events((const char*)(cutOSOF&&cutnJets&&basiccut&&sidebandcut&&"((jzb[1]+0.06*pt-2.84727)<-100)"));
137 <    cout << "Predicted (SB SF, JZB>100) OSSF" << endl;
137 >    dout << "Predicted (SB SF, JZB>100) OSSF" << endl;
138      pick_up_events((const char*)(sidebandcut&&cutOSSF&&cutnJets&&basiccut&&"((jzb[1]+0.06*pt-2.84727)>100)"));
139 <    cout << "Predicted (SB SF, JZB<-100) OSSF" << endl;
139 >    dout << "Predicted (SB SF, JZB<-100) OSSF" << endl;
140      pick_up_events((const char*)(sidebandcut&&cutOSSF&&cutnJets&&basiccut&&"((jzb[1]+0.06*pt-2.84727)<-100)"));
141    }
142    
143    if(do_test) test();
144    
123  
124  
145    return 0;  
146   }
147  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines