30 int main(
int argc,
char *argv[]){
32 styles style(
"LargeLabels");
34 gStyle->SetPadTickX(1);
35 gStyle->SetPadLeftMargin(0.12);
36 gStyle->SetPadRightMargin(0.12);
38 vector<double> m1_signif_nc, m1_limit_nc;
39 vector<double> m1_signif_c, m1_limit_c;
40 vector<double> m3_signif_nc, m3_limit_nc;
41 vector<double> m3_signif_c, m3_limit_c;
42 vector<double> x(0), ncy(0), cy(0), ncz(0), cz(0);
46 m1_signif_nc.push_back(0.517548); m1_limit_nc.push_back(1.316410); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
47 m1_signif_nc.push_back(0.671903); m1_limit_nc.push_back(0.658203); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
48 m1_signif_nc.push_back(0.784878); m1_limit_nc.push_back(0.439453); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
49 m1_signif_nc.push_back(0.868115); m1_limit_nc.push_back(0.329102); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
50 m1_signif_nc.push_back(0.932990); m1_limit_nc.push_back(0.263672); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
51 m1_signif_nc.push_back(0.985406); m1_limit_nc.push_back(0.219727); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
52 m3_signif_nc.push_back(0.595437); m3_limit_nc.push_back(1.316410); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
53 m3_signif_nc.push_back(0.795439); m3_limit_nc.push_back(0.658203); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
54 m3_signif_nc.push_back(0.939719); m3_limit_nc.push_back(0.439453); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
55 m3_signif_nc.push_back(1.051140); m3_limit_nc.push_back(0.329102); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
56 m3_signif_nc.push_back(1.142400); m3_limit_nc.push_back(0.263672); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
57 m3_signif_nc.push_back(1.220060); m3_limit_nc.push_back(0.219727); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
60 m1_signif_nc.push_back(0.563099); m1_limit_nc.push_back(1.316410); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
61 m1_signif_nc.push_back(0.767605); m1_limit_nc.push_back(0.658203); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
62 m1_signif_nc.push_back(0.940119); m1_limit_nc.push_back(0.439453); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
63 m1_signif_nc.push_back(1.085560); m1_limit_nc.push_back(0.329102); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
64 m1_signif_nc.push_back(1.213690); m1_limit_nc.push_back(0.263672); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
65 m1_signif_nc.push_back(1.329530); m1_limit_nc.push_back(0.219727); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
66 m3_signif_nc.push_back(0.660924); m3_limit_nc.push_back(1.316410); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
67 m3_signif_nc.push_back(0.934687); m3_limit_nc.push_back(0.658203); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
68 m3_signif_nc.push_back(1.144750); m3_limit_nc.push_back(0.439453); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
69 m3_signif_nc.push_back(1.321850); m3_limit_nc.push_back(0.329102); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
70 m3_signif_nc.push_back(1.477870); m3_limit_nc.push_back(0.263672); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
71 m3_signif_nc.push_back(1.618920); m3_limit_nc.push_back(0.219727); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
74 m1_signif_nc.push_back(0.651089); m1_limit_nc.push_back(2.835940); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
75 m1_signif_nc.push_back(0.884065); m1_limit_nc.push_back(1.417970); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
76 m1_signif_nc.push_back(1.033470); m1_limit_nc.push_back(0.949219); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
77 m1_signif_nc.push_back(1.143830); m1_limit_nc.push_back(0.708984); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
78 m1_signif_nc.push_back(1.230040); m1_limit_nc.push_back(0.568359); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
79 m1_signif_nc.push_back(1.299850); m1_limit_nc.push_back(0.474609); m1_signif_c.push_back(0.); m1_limit_c.push_back(0.);
80 m3_signif_nc.push_back(0.660744); m3_limit_nc.push_back(1.835940); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
81 m3_signif_nc.push_back(0.885141); m3_limit_nc.push_back(0.917969); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
82 m3_signif_nc.push_back(1.048840); m3_limit_nc.push_back(0.611328); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
83 m3_signif_nc.push_back(1.176520); m3_limit_nc.push_back(0.458984); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
84 m3_signif_nc.push_back(1.282110); m3_limit_nc.push_back(0.367188); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
85 m3_signif_nc.push_back(1.372740); m3_limit_nc.push_back(0.305664); m3_signif_c.push_back(0.); m3_limit_c.push_back(0.);
90 m1_signif_c = m1_signif_nc;
91 m1_limit_c = m1_limit_nc;
92 m3_signif_c = m3_signif_nc;
93 m3_limit_c = m3_limit_nc;
112 double big_num = 10.;
114 for(
size_t i = 0; i < ncy.size(); ++i){
115 x.push_back((i+1.)*0.5);
126 x.insert(x.begin(), 0.);
127 ncy.insert(ncy.begin(), 0.);
128 cy.insert(cy.begin(), 0.);
129 ncz.insert(ncz.begin(), 0.);
130 cz.insert(cz.begin(), 0.);
132 TGraph snc(x.size(), &x.at(0), &ncy.at(0));
133 TGraph sc(x.size(), &x.at(0), &cy.at(0));
134 TGraph lnc(x.size()-1, &x.at(1), &ncz.at(1));
135 TGraph lc(x.size()-1, &x.at(1), &cz.at(1));
139 snc.SetLineColor(kRed);
143 sc.SetLineColor(kRed);
144 lnc.SetLineColor(kBlue);
147 lc.SetLineColor(kBlue);
150 TH1D h(
"h",
";Luminosity [fb^{-1}];Expected Limit/X-Section", 1, 0., 3.);
152 TAxis &yaxis = *h.GetYaxis();
153 yaxis.SetLabelColor(kBlue);
154 yaxis.SetTitleColor(kBlue);
155 yaxis.SetTitleOffset(.8);
158 TGaxis *raxis =
new TGaxis(3., 0.,
161 raxis->SetLabelColor(kRed);
162 raxis->SetTitleColor(kRed);
163 raxis->SetTitle(
"Expected Significance");
164 raxis->SetTitleOffset(yaxis.GetTitleOffset());
165 raxis->SetTitleSize(yaxis.GetTitleSize());
167 raxis->SetLabelSize(yaxis.GetLabelSize());
168 raxis->SetLabelFont(yaxis.GetLabelFont());
169 raxis->SetTitleFont(yaxis.GetTitleFont());
177 TLegend l(1.0-gStyle->GetPadRightMargin()-0.4, 1.0-gStyle->GetPadTopMargin()-0.25,
178 1.0-gStyle->GetPadRightMargin(), 1.0-gStyle->GetPadTopMargin());
181 l.SetFillStyle(4000);
182 l.AddEntry(&dnc,
"T1tttt(1500,100)",
"l");
183 l.AddEntry(&dc,
"T1tttt(1200,800)",
"l");
187 oss <<
"plots/sensitivity";
189 case kNormal: oss <<
"_normal";
break;
190 case kNoSyst: oss <<
"_nosyst";
break;
194 oss <<
"_method_" <<
method <<
".pdf" << flush;
195 c.Print(oss.str().c_str());
200 static struct option long_options[] = {
201 {
"uncerts", required_argument, 0,
'u'},
202 {
"method", required_argument, 0,
'm'},
208 opt = getopt_long(argc, argv,
"u:m:", long_options, &option_index);
214 switch(atoi(optarg)){
225 optname = long_options[option_index].name;
void GetOptions(int argc, char *argv[])
int main(int argc, char *argv[])