ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/auterman/SusyScan/PlotScript/GlobalFunctions.h
(Generate patch)

Comparing UserCode/auterman/SusyScan/PlotScript/GlobalFunctions.h (file contents):
Revision 1.9 by auterman, Wed Feb 9 08:57:36 2011 UTC vs.
Revision 1.10 by auterman, Wed Feb 9 21:00:29 2011 UTC

# Line 2 | Line 2
2   #include "GeneratorMasses.h"
3  
4   #include "TGraph.h"
5 + #include "TLatex.h"
6 + #include "TF1.h"
7   #include "TGraphErrors.h"
8   #include "TSpline.h"
9 + #include "TStyle.h"
10 + #include "TMath.h"
11  
12   #include <cmath>
13   #include <iostream>
# Line 73 | Line 77 | double MChi4(const GeneratorMasses* p){
77   double MCha1(const GeneratorMasses* p){ return p->MW1; }
78   double MCha2(const GeneratorMasses* p){ return p->MW2; }
79  
80 + TGraph* set_sneutrino_d0_1(Int_t tanBeta){
81 +  double sn_m0[14]= {0,  0, 48, 55, 80, 90,100,105,109,105,100, 72, 55,0};
82 +  double sn_m12[14]={0,140,210,220,237,241,242,241,230,220,210,170,150,0};
83  
84 < //RA1 Contours
78 < TGraph* set_sneutrino_d0_1(){
79 <  double sn_m0[9]={0,0,55,90,100,110,100,55,0};
80 <  double sn_m12[9]={0,140,220,240,240,230,210,150,0};
81 <
82 <  TGraph* sn_d0_gr = new TGraph(9,sn_m0,sn_m12);
84 >  TGraph* sn_d0_gr = new TGraph(14,sn_m0,sn_m12);
85  
86    sn_d0_gr->SetFillColor(kGreen+3);
87    sn_d0_gr->SetFillStyle(1001);
88  
87
89    return sn_d0_gr;
90   }
91  
92 < TGraph* set_sneutrino_d0_2(){
93 <  double sn_m0[5]={0,50,105,190,0};
94 <  double sn_m12[5]={0,140,205,140,0};
92 > TGraph* set_sneutrino_d0_2(Int_t tanBeta){
93 >  double sn_m0[9]= {0, 45, 75,115,130,150,163,185,0};
94 >  double sn_m12[9]={0,140,170,213,202,183,168,140,0};
95  
96 <  TGraph* sn_d0_gr_2 = new TGraph(5,sn_m0,sn_m12);
96 >  TGraph* sn_d0_gr_2 = new TGraph(9,sn_m0,sn_m12);
97  
98    sn_d0_gr_2->SetFillColor(kGreen+3);
99    sn_d0_gr_2->SetFillStyle(1001);
100  
100
101    return sn_d0_gr_2;
102   }
103  
104  
105 + TGraph* set_lep_ch_tanBeta10(){
106  
107 < TGraph* set_lep_ch(){
107 >  double ch_m0[11];
108 >  double ch_m12[11];
109  
110 <  double ch_m0[5];
111 <  double ch_m12[5];
110 >  ch_m0[0] = 0;
111 >  ch_m0[1] = 100;
112 >  ch_m0[2] = 200;
113 >  ch_m0[3] = 300;
114 >  ch_m0[4] = 400;
115 >  ch_m0[5] = 500;
116 >  ch_m0[6] = 600;
117 >  ch_m0[7] = 700;
118 >  ch_m0[8] = 800;
119 >  ch_m0[9] = 800;
120 >  ch_m0[10] = 0;
121 >
122 >  ch_m12[0] = 163;
123 >  ch_m12[1] = 162;
124 >  ch_m12[2] = 161;
125 >  ch_m12[3] = 160;
126 >  ch_m12[4] = 159;
127 >  ch_m12[5] = 158;
128 >  ch_m12[6] = 157;
129 >  ch_m12[7] = 156;
130 >  ch_m12[8] = 155.4;
131 >  ch_m12[9] = 0;
132 >  ch_m12[10] = 0;
133 >  
134 >  
135 >  TGraph* ch_gr = new TGraph(11,ch_m0,ch_m12);
136 >
137 >  ch_gr->SetFillColor(3);
138 >  ch_gr->SetLineColor(3);
139 >  //  ch_gr->SetLineWidth(3);
140 >  ch_gr->SetFillStyle(1001);
141 >
142 >  return ch_gr;
143 >
144 > }
145 >
146 >
147 >
148 > TGraph* set_lep_ch_tanBeta3(){
149 >
150 >  double ch_m0[17];
151 >  double ch_m12[17];
152 >
153 >  ch_m0[0] = 0;
154 >  ch_m0[1] = 100;
155 >  ch_m0[2] = 150;
156 >  ch_m0[3] = 200;
157 >  ch_m0[4] = 250;
158 >  ch_m0[5] = 300;
159 >  ch_m0[6] = 350;
160 >  ch_m0[7] = 400;
161 >  ch_m0[8] = 450;
162 >  ch_m0[9] = 500;
163 >  ch_m0[10] = 550;
164 >  ch_m0[11] = 600;
165 >  ch_m0[12] = 650;
166 >  ch_m0[13] = 700;
167 >  ch_m0[14] = 750;
168 >  ch_m0[15] = 750;
169 >  ch_m0[16] = 0;
170 >  
171 >  ch_m12[0] = 170;
172 >  ch_m12[1] = 168;
173 >  ch_m12[2] = 167;
174 >  ch_m12[3] = 165;
175 >  ch_m12[4] = 163;
176 >  ch_m12[5] = 161;
177 >  ch_m12[6] = 158;
178 >  ch_m12[7] = 156;
179 >  ch_m12[8] = 154;
180 >  ch_m12[9] = 152;
181 >  ch_m12[10] = 150;
182 >  ch_m12[11] = 148;
183 >  ch_m12[12] = 147;
184 >  ch_m12[13] = 145;
185 >  ch_m12[14] = 144;
186 >  ch_m12[15] = 0;
187 >  ch_m12[16] = 0;
188 >  
189 >  TGraph* ch_gr = new TGraph(17,ch_m0,ch_m12);
190 >
191 >  ch_gr->SetFillColor(3);
192 >  ch_gr->SetLineColor(3);
193 >  // ch_gr->SetLineWidth(3);
194 >  ch_gr->SetFillStyle(1001);
195 >
196 >  return ch_gr;
197 >
198 > }
199  
111
112    ch_m0[0] = 0;
113    ch_m0[1] = 0;
114    ch_m0[2] = 600;
115    ch_m0[3] = 1000;
116    ch_m0[4] = 1000;
117
118    ch_m12[0] = 0;
119    ch_m12[1] = 130;
120    ch_m12[2] = 120;
121    ch_m12[3] = 113;
122    ch_m12[4] = 0;
200  
201 + TGraph* set_lep_ch_tanBeta50(){
202 +
203 +  double ch_m0[21];
204 +  double ch_m12[21];
205 +
206 +  ch_m0[0] = 200;
207 +  ch_m0[1] = 250;
208 +  ch_m0[2] = 300;
209 +  ch_m0[3] = 350;
210 +  ch_m0[4] = 400;
211 +  ch_m0[5] = 450;
212 +  ch_m0[6] = 500;
213 +  ch_m0[7] = 550;
214 +  ch_m0[8] = 600;
215 +  ch_m0[9] = 650;
216 +  ch_m0[10] = 700;
217 +  ch_m0[11] = 750;
218 +  ch_m0[12] = 800;
219 +  ch_m0[13] =850;
220 +  ch_m0[14] = 900;
221 +  ch_m0[15] = 950;
222 +  ch_m0[16] = 1000;
223 +  ch_m0[17] = 1050;
224 +  ch_m0[18] = 1100;
225 +  ch_m0[19] = 1100;
226 +  ch_m0[20] = 200;
227 +
228 +  ch_m12[0] = 157;
229 +  ch_m12[1] = 156;
230 +  ch_m12[2] = 156;
231 +  ch_m12[3] = 155;
232 +  ch_m12[4] = 155;
233 +  ch_m12[5] = 154;
234 +  ch_m12[6] = 154;
235 +  ch_m12[7] = 153;
236 +  ch_m12[8] = 153;
237 +  ch_m12[9] = 152;
238 +  ch_m12[10] = 152;
239 +  ch_m12[11] = 152;
240 +  ch_m12[12] = 152;
241 +  ch_m12[13] = 152;
242 +  ch_m12[14] = 152;
243 +  ch_m12[15] = 153;
244 +  ch_m12[16] = 153;
245 +  ch_m12[17] = 153;
246 +  ch_m12[18] = 154;
247 +  ch_m12[19] = 0;
248 +  ch_m12[20] = 0;
249    
250 <  TGraph* ch_gr = new TGraph(5,ch_m0,ch_m12);
250 >  
251 >  TGraph* ch_gr = new TGraph(21,ch_m0,ch_m12);
252  
253    ch_gr->SetFillColor(3);
254 +  ch_gr->SetLineColor(3);
255    ch_gr->SetFillStyle(1001);
256  
257    return ch_gr;
# Line 132 | Line 259 | TGraph* set_lep_ch(){
259   }
260  
261  
262 < TGraph* set_lep_sl(){
262 > TGraph* set_lep_ch(Int_t tanBeta){
263 >  if(tanBeta == 3) return set_lep_ch_tanBeta3();
264 >  if(tanBeta == 10) return set_lep_ch_tanBeta10();
265 >  if(tanBeta == 50) return set_lep_ch_tanBeta50();
266 > }
267  
268  
269 + TGraph* set_lep_sl(Int_t tanBeta){
270  
271 <  double sl_m0[] = {0,0,30,50,60,75,80,90,100};
272 <  double sl_m12[] = {0,245,240,220,200,150,100,50,0};
271 >  // CMS SUSY Summer2010 implementation
272 >  //  double sl_m0[] =  {0,  0, 30, 50, 60, 75, 80,90,100};
273 >  //  double sl_m12[] = {0,245,240,220,200,150,100,50,0};
274    
275 <  TGraph* lep_sl = new TGraph(9,sl_m0,sl_m12);
275 >  //contour from D0 trilepton paper (PLB 680 (2009) 34-43)
276 >
277 >  double *sl_m0 = 0;
278 >  double *sl_m12 = 0;
279 >  int n = 0;
280 >
281 >  double sl_m0_3[] ={0,  0, 10, 20, 30, 40, 50, 60, 70, 77,88,95};
282 >  double sl_m12_3[]={0,245,242,239,232,222,209,189,165,140,60,0};
283 >  int n_3 = 12;
284 >
285 >  double sl_m0_10[]={ 0,  0, 11, 20, 24, 49, 70, 82,88,90};
286 >  double sl_m12_10[]={0,240,237,233,230,200,150,100,50,0};
287 >  int n_10 = 10;
288 >
289 >  if (tanBeta==3){
290 >    sl_m0 = sl_m0_3;
291 >    sl_m12 = sl_m12_3;
292 >    n = n_3;
293 >  }
294 >  //CMS PTDR-II
295 >  //* Selectron_R line mass=99, ISASUGRA7.69, A0=0, m_top=175, tan(beta]=10
296 >  if (tanBeta==10 || tanBeta==50){
297 >    sl_m0 = sl_m0_10;
298 >    sl_m12 = sl_m12_10;
299 >    n = n_10;
300 >  }
301 >
302 >  TGraph* lep_sl = new TGraph(n,sl_m0,sl_m12);
303  
304    lep_sl->SetFillColor(5);
305 +  lep_sl->SetLineColor(5);
306    lep_sl->SetFillStyle(1001);
307    
308    return lep_sl;
309   }
310  
150 TGraph* set_tev_sg_cdf(){
311  
312 <  double sg_m0[] = {0,50,100,150,200,250,300,350,400,450,500,550,600,600};
313 <  double sg_m12[] = {0,170,160,155,150,122,116,112,110,106,105,100,98,0};
314 <  TGraph* sg_gr = new TGraph(14,sg_m0,sg_m12);
312 > TGraph* set_tev_sg_cdf(Int_t tanBeta){
313 >
314 >  //  double sg_m0[] =  {0,  0, 20, 50,100,150,200,250,300,350,400,450,500,550,600,600};
315 >  //  double sg_m12[] = {0,160,169,170,160,155,150,122,116,112,110,106,105,100, 98,  0};
316 >  //  int np=16;
317 >  //New CHF from CDF plot in ICHEP2010 talk (E. Halkiadakis)
318 >  double sg_m0[]= {0,  0, 30, 75,150,185,225,310,360,400,430,500,600,600};
319 >  double sg_m12[]={0,162,168,170,160,150,130,120,109,108,100, 96, 95,  0};
320 >  int np=14;
321 >
322 >  TGraph* sg_gr = new TGraph(np,sg_m0,sg_m12);
323 >
324 >  //  gStyle->SetHatchesLineWidth(3);
325  
326    sg_gr->SetFillColor(2);
327 +  sg_gr->SetLineColor(2);
328 +  //  sg_gr->SetLineWidth(3);
329    sg_gr->SetFillStyle(1001);
330  
331    return sg_gr;
332  
333   }
334  
335 < TGraph* set_tev_sg_d0(){
164 <  double sgd_m0[] = {0,50,100,150,200,250,300,350,400,450,500,550,600,600};
165 <  double sgd_m12[] = {0,173,170,168,160,150,140,130,125,120,120,120,120,0};
166 <  TGraph* sgd_gr = new TGraph(14,sgd_m0,sgd_m12);
335 > TGraph* set_tev_sg_d0(Int_t tanBeta){
336  
337 <  sgd_gr->SetFillColor(41);
338 <  sgd_gr->SetFillStyle(1001);
337 >  //  double sgd_m0[] = {0, 0,  50, 100,150,200,250,300,350,400,450,500,550,600,600};
338 >  //  double sgd_m12[] = {0,168,167,162,157,145,125,120,110,108,95, 94 ,94 ,93,0};
339 >  //  int np=15;
340 >  double sgd_m0[]= {0,  0, 30, 80,150,240,320,400,500,600,600,0};
341 >  double sgd_m12[]={0,167,166,162,156,138,121,109,105,105,  0,0};
342 >  int npd=12;
343 >
344 >  TGraph* sgd_gr = new TGraph(npd,sgd_m0,sgd_m12);
345 >
346 >  gStyle->SetHatchesLineWidth(3);
347 >
348 >  sgd_gr->SetFillColor(kMagenta+3);
349 >  sgd_gr->SetLineColor(kMagenta+3);
350 >  sgd_gr->SetLineWidth(3);
351 >  sgd_gr->SetFillStyle(3335);
352  
353    return sgd_gr;
354  
355   }
356  
357 < TGraph* set_tev_tlp_cdf(){
358 <  double tlp1_m0[] = {0,20,40,60,70,80,90,80,70,60};
359 <  double tlp1_m12[] = {170,185,200,215,220,215,210,190,175,160};
360 <  TGraph* tlp1_gr = new TGraph(10,tlp1_m0,tlp1_m12);
357 > // TGraph* set_tev_tlp_cdf(Int_t tanBeta){
358 > //   double tlp1_m0[] = {   0, 20, 40, 60, 70, 80, 90, 80, 70, 60};
359 > //   double tlp1_m12[] = {170,185,200,215,220,215,210,190,175,160};
360 > //   TGraph* tlp1_gr = new TGraph(10,tlp1_m0,tlp1_m12);
361 >
362 > //   tlp1_gr->SetFillColor(4);
363 > //   tlp1_gr->SetLineColor(4);
364 > //   tlp1_gr->SetFillStyle(1001);
365 >
366 > //   return tlp1_gr;
367 > // }
368 >
369 > // TGraph* set_tev_tlp_d0(Int_t tanBeta){
370 > //   double tlp2_m0[] = {  70, 80, 90,100,105,110,120,130,140};
371 > //   double tlp2_m12[] = {160,172,184,196,205,195,185,173,160};
372 > //   TGraph* tlp2_gr = new TGraph(9,tlp2_m0,tlp2_m12);
373 >
374 > //   tlp2_gr->SetFillColor(4);
375 > //   tlp2_gr->SetFillStyle(1001);
376 >
377 > //   return tlp2_gr;
378 >
379 > // }
380 >
381 >
382 >
383 >
384 >
385 > TGraph* set_tev_stau(Int_t tanBeta){
386 >
387 >    double st_m0_tanBeta3[] = {0,10,20,30,40,50,60,70,80,90,100,0};
388 >    double st_m12_tanBeta3[] = {337,341,356,378,406,439,473,510,548,587,626,626};  
389 >
390 >    double st_m0_tanBeta10[] = {0,10,20,30,40,50,60,70,80,90,100,0};
391 >    double st_m12_tanBeta10[] = {213,220,240,275,312,351,393,435,476,518,559,559};
392 >
393 >    double st_m0_tanBeta50[] = {200,210,220,230,240,250,260,270,280,290,310,325,200,200};
394 >    double st_m12_tanBeta50[] = {206,226,246,267,288,310,332,354,376,399,450,500,500,206};
395 >
396 >
397 >    TGraph* st_gr_tanBeta3 = new TGraph(12,st_m0_tanBeta3,st_m12_tanBeta3);
398 >    TGraph* st_gr_tanBeta10 = new TGraph(12,st_m0_tanBeta10,st_m12_tanBeta10);
399 >    TGraph* st_gr_tanBeta50 = new TGraph(14,st_m0_tanBeta50,st_m12_tanBeta50);
400 >
401 >    st_gr_tanBeta3->SetFillColor(40);
402 >    st_gr_tanBeta3->SetFillStyle(1001);
403  
404 <  tlp1_gr->SetFillColor(4);
405 <  tlp1_gr->SetFillStyle(1001);
404 >    st_gr_tanBeta50->SetFillColor(40);
405 >    st_gr_tanBeta50->SetFillStyle(1001);
406 >    
407 >    st_gr_tanBeta10->SetFillColor(40);
408 >    st_gr_tanBeta10->SetFillStyle(1001);
409 >
410 >
411 >    if(tanBeta == 3)return st_gr_tanBeta3;
412 >    if(tanBeta == 10)return st_gr_tanBeta10;
413 >    if(tanBeta == 50)return st_gr_tanBeta50;
414  
183  return tlp1_gr;
415   }
416  
186 TGraph* set_tev_tlp_d0(){
187  double tlp2_m0[] = {70,80,90,100,105,110,120,130,140};
188  double tlp2_m12[] = {160,172,184,196,205,195,185,173,160};
189  TGraph* tlp2_gr = new TGraph(9,tlp2_m0,tlp2_m12);
417  
191  tlp2_gr->SetFillColor(4);
192  tlp2_gr->SetFillStyle(1001);
418  
194  return tlp2_gr;
419  
420 + TF1* constant_squark(int tanBeta,int i){
421 + //---lines of constant gluino/squark
422 +  double coef1 = 0.35;
423 +  double coef2[] = {5,5,4.6,4.1};
424 +
425 +  char hname[200];
426 +
427 +  sprintf(hname,"lnsq_%i",i);
428 +
429 +  
430 +  TF1* lnsq = new TF1(hname,"sqrt([0]-x*x*[1]-[2])",0,1000);
431 +  lnsq->SetParameter(0,(500+150*(i-1))*(500+150*(i-1))/coef2[i]);
432 +  lnsq->SetParameter(1,1./coef2[i]);
433 +  lnsq->SetParameter(2,-coef1*91*91*(2*TMath::Cos(TMath::ATan(tanBeta)))/coef2[i]);//--tanbeta=10 --> cos2beta = -99/101
434 +  lnsq->SetLineWidth(1);
435 +
436 +
437 +  lnsq->SetLineColor(kGray);
438 +
439 +  return lnsq;
440 + }
441 +
442 +
443 + TF1* constant_gluino(int tanBeta,int i){
444 + //---lines of constant gluino/squark
445 +  double coef1 = 0.35;
446 +  double coef2[] = {5,5,4.6,4.1};
447 +
448 +  char hname[200];
449 +
450 +  sprintf(hname,"lngl_%i",i);
451 +    
452 +  TF1* lngl = new TF1(hname,"[0]+x*[1]",0,1000);
453 +  lngl->SetParameter(0,(500+150.*(i-1))/2.4);
454 +  lngl->SetParameter(1,-40./1400);
455 +  lngl->SetLineWidth(1);
456 +  lngl->SetLineColor(kGray);
457 +
458 +  return lngl;
459   }
460  
198 TGraph* set_tev_stau(){
199  double st_m0[] = {0,30,200,0,0};
200  double st_m12[] = {230,240,1000,1000,230};
201  TGraph* st_gr = new TGraph(5,st_m0,st_m12);
461  
462 <  st_gr->SetFillColor(40);
463 <  st_gr->SetFillStyle(1001);
462 > TLatex* constant_squark_text(Int_t it,TF1& lnsq,Int_t tanBeta_){
463 >  char legnm[200];
464 >
465 >  sprintf(legnm,"#font[92]{#tilde{q}(%i)GeV}",500+150*(it-1));
466 >  Double_t place_x = 170;
467 >  if(tanBeta_ == 50)place_x = 290;
468 >  TLatex* t3 = new TLatex(place_x+10*(it-1),lnsq.Eval(place_x+10*(it-1))+5,legnm);
469 >  t3->SetTextSize(0.03);
470 >  t3->SetTextAngle(-8);
471 >  t3->SetTextColor(kGray+2);
472 >
473 >
474 >  
475 >  return t3;
476 > }
477  
478 + TLatex* constant_gluino_text(Int_t it,TF1& lngl){
479 +  char legnm[200];
480  
481 <  return st_gr;
481 >  sprintf(legnm,"#font[12]{#tilde{g}}#font[92]{(%i)GeV}",500+150*(it-1));
482 >  TLatex* t4 = new TLatex(423,18+lngl.Eval(480),legnm);
483 >  t4->SetTextSize(0.03);
484 >  t4->SetTextAlign(13);
485 >  t4->SetTextColor(kGray+2);
486  
487 +  return t4;
488   }
489  
490  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines