Beispiel #1
0
// Resize any histograms (they all inherit from h1) stat box. Uses NDC coordinates (e.g. 0.65, 0.5)
bool resizeStatBox( TCanvas *c1, TH1* h1, float x1, float y1, float x2=-1, float y2=-1, 
		    TString newname = "", int color = -1, TString oldname = "", int iDebug = 0 ) 
{ 
  if( !c1 || !h1 ) {cerr<<"Null pointer given to resizeStatBox!"<<endl; return 0;}
  c1->Update();
  if( oldname.Length() <= 0 ) oldname = "stats";
  if( iDebug > 20 ) print_list_of_functions( *h1 );
  TPaveStats *stats = (TPaveStats*) h1->FindObject( oldname );
  if( iDebug ) cout<<"Found old name (\""<<oldname<<"\"? "<<( stats != 0 )<<endl;
  if( (!stats) && newname.Length() > 0 ){ // maybe it was already renamed
    stats = (TPaveStats*) h1->FindObject( newname );
    if( iDebug ) cout<<"Found new name (\""<<newname<<"\"? "<<(stats != 0)<<endl;
  }
  if( !stats ) {cerr<<"Can't find stat box"<<endl; return 0;}
  stats->SetX1NDC( x1 );
  stats->SetY1NDC( y1 );
  if( x2 >= 0 ) stats->SetX2NDC( x2 );
  if( y2 >= 0 ) stats->SetY2NDC( y2 );
  if( newname.Length() > 0 ) {
    stats->SetName( newname );
    if( iDebug ) cout<<"SetName to "<<newname<<endl;
  }
  if( color != -1 ) stats->SetTextColor (color);
  stats->Draw(); // maybe, just maybe, this will finally make them appear every time, even with draw "same"
  return 1;
}
Beispiel #2
0
void repositionStatbox(std::string name)
{
    // Reposition and resize statbox
    TH2F *h = (TH2F*)gDirectory->GetList()->FindObject(name.c_str());
    TPaveStats *st = (TPaveStats*)h->GetListOfFunctions()->FindObject("stats");
    st->SetX1NDC(0.63);
    st->SetY1NDC(0.72);
    st->SetX2NDC(0.99);
    st->SetY2NDC(0.99);
    st->Draw();
}
Beispiel #3
0
// überladen: Statbox-Größen manuell eingeben
void drawStatBox(int& step, TH1D* histo, int color = -1, double statboxHeight = 0.1,  double statboxSpacing = 0.15){
  TPaveStats* statBox = dynamic_cast<TPaveStats*>( histo->GetListOfFunctions()->FindObject("stats") );
  
  if(color == -1) color = step+1;
  statBox->SetX1NDC(0.80);
  statBox->SetX2NDC(0.99);
  statBox->SetY2NDC(0.95-step*statboxSpacing);
  statBox->SetY1NDC(0.95-step*statboxSpacing-statboxHeight);
  statBox->SetTextColor(color);
  statBox->Draw();
  step++;
}
Beispiel #4
0
// ---------------------------------------------------------------------------------------------
// The SLAC version
bool relocateStatBox (float x1, float y1, float x2=-1, float y2=-1, TString newname = "") 
{ 
  TPaveStats *st = (TPaveStats*)gPad->GetPrimitive("stats");
  if (0 == st) {cerr<<"Can't find stat box in pad"<<endl; return 0;}
  if (newname.Length() > 0) st->SetName(newname);
  st->SetX1NDC(x1);
  if (x2 != -1) st->SetX2NDC(x2);
  st->SetY1NDC(y1);
  if (y2 != -1) st->SetY2NDC(y2);
  st->Draw();
  return 1;
}
Beispiel #5
0
// Statistik-Boxen an den Rand der Canvas malen, automatische Größenanpassung
void drawStatBox(TH1D* histo, int& step, int nSteps, double FrameSize, int color = -1, int style = 0){
  TPaveStats* statBox = dynamic_cast<TPaveStats*>( histo->GetListOfFunctions()->FindObject("stats") );
  
  double statboxSpacing = FrameSize / nSteps;    // gleichmaessiges Aufteilen der Statboxes ueber den Rand
  double statboxHeight  = 0.1 * statboxSpacing * (9.+1./nSteps);;  // 1/10 Abstand, (9/10+Abstand/nSteps) Statbox 
  if(color == -1) color = step+1;

  statBox->SetX1NDC(0.80);
  statBox->SetX2NDC(0.99);
  statBox->SetY2NDC(0.95-step*statboxSpacing);
  statBox->SetY1NDC(0.95-step*statboxSpacing-statboxHeight);
  statBox->SetFillColor(color);
  statBox->SetFillStyle(style);
  statBox->Draw();
  step++;
}
Beispiel #6
0
int hw1(){
  //define landau formula
  TF1* myf = new TF1("mylandau",landauf,-3,10,3);
  myf->SetParameters(1.0,2,1);

  //get ready to initial hist
  /*
  const int num = 3;
  string histvName[num] = {"ld_1e2","ld_1e3","ld_1e4"};
  string histvTitle[num] = {"Landau 100 entris","Landau 1000 entris","Landau 10000 entris"};
  int histEntries[num] = {100,1000,10000};

  //new hist and fill them
  TCanvas* canvas = new TCanvas("myc","HW1",800,600);
  TMultiGraph* mg = new TMultiGraph();
  for(int i = 0;i<num;i++){
    TH1F* tmp=new TH1F(histvName[i].c_str(),histvTitle[i].c_str(),100,-3,10);
    tmp->FillRandom("mylandau",histEntries[i]);
  }

  gDirectory->Get(histvName[2])->Draw("e");
  gDirectory->Get(histvName[1])->Draw("esame");
  gDirectory->Get(histvName[0])->Draw("esame");
  */
  TCanvas* canvas = new TCanvas("myc","HW1",800,600);

  TH1F* h1 = new TH1F("h1","Landau 100 entries",15,-3,10);
  TH1F* h2 = new TH1F("h2","Landau 1000 entries",60,-3,10);
  TH1F* h3 = new TH1F("h3","Landau 10000 entries",200,-3,10);
  h1->FillRandom("mylandau",100);
  h2->FillRandom("mylandau",1000);
  h3->FillRandom("mylandau",10000);
  h3->GetXaxis()->SetTitle("x");
  h3->GetXaxis()->CenterTitle(true);
  h3->GetYaxis()->SetTitle("Entries");
  h3->GetYaxis()->CenterTitle(true);
  h3->SetStats(kFALSE);

  TF1* fit3 = new TF1("fit3",landauf,-3,10,3);
  fit3->SetParameters(1.0,2,1);
  h3->SetMarkerColor(kRed);
  h3->SetLineColor(kRed);
  fit3->SetLineColor(kRed+2);
  h3->Fit("fit3","q","e");

  TF1* fit2 = new TF1("fit2",landauf,-3,10,3);
  fit2->SetParameters(1.0,2,1);
  h2->SetMarkerColor(kBlue);
  h2->SetLineColor(kBlue);
  fit2->SetLineColor(kBlue+2);
  h2->Fit("fit2","q","esame");

  TF1* fit1 = new TF1("fit1",landauf,-3,10,3);
  fit1->SetParameters(1.0,2,1);
  h1->SetMarkerColor(kGreen);
  h1->SetLineColor(kGreen);
  fit1->SetLineColor(kGreen+2);
  h1->Fit("fit1","q","esame");

  double h1M = h1->GetMean();
  double h1R = h1->GetRMS();
  double h1S = h1->GetSkewness();
  double h2M = h2->GetMean();
  double h2R = h2->GetRMS();
  double h2S = h2->GetSkewness();
  double h3M = h3->GetMean();
  double h3R = h3->GetRMS();
  double h3S = h3->GetSkewness();

  cout<<setprecision(4);
  cout<<"+----+--------+--------+--------+"<<endl;
  cout<<"|hist|  Mean  |  RMS   |skewness|"<<endl;
  cout<<"+----+--------+--------+--------+"<<endl;
  cout<<"+  1 |"<<setw(8)<<h1M<<"|"<<setw(8)<<h1R<<"|"<<setw(8)<<h1S<<"|"<<endl;
  cout<<"+----+--------+--------+--------+"<<endl;
  cout<<"+  2 |"<<setw(8)<<h2M<<"|"<<setw(8)<<h2R<<"|"<<setw(8)<<h2S<<"|"<<endl;
  cout<<"+----+--------+--------+--------+"<<endl;
  cout<<"+  3 |"<<setw(8)<<h3M<<"|"<<setw(8)<<h3R<<"|"<<setw(8)<<h3S<<"|"<<endl;
  cout<<"+----+--------+--------+--------+"<<endl;

  TPaveStats *ptstats = new TPaveStats(0.5747126,0.6334746,0.9353448,0.934322,"brNDC");
  ptstats->SetName("stats");
  ptstats->SetBorderSize(1);
  ptstats->SetFillColor(0);
  ptstats->SetLineWidth(2);
  ptstats->SetTextAlign(12);
  ptstats->SetTextFont(132);
  ptstats->AddText(" hist   Mean     RMS    skewness ");
  ostringstream os;
  cout<<setprecision(4);
  os<<"   1  "<<setw(8)<<h1M<<" "<<setw(8)<<h1R<<" "<<setw(8)<<h1S<<" ";
  ptstats->AddText(os.str().c_str());
  os.str(string());
  os<<"   2  "<<setw(8)<<h2M<<" "<<setw(8)<<h2R<<" "<<setw(8)<<h2S<<" ";
  ptstats->AddText(os.str().c_str());
  os.str(string());
  os<<"   3  "<<setw(8)<<h3M<<" "<<setw(8)<<h3R<<" "<<setw(8)<<h3S<<" ";
  ptstats->AddText(os.str().c_str());
  ptstats->SetOptStat(0);
  ptstats->SetOptFit(111);
  ptstats->Draw();
  h1->GetListOfFunctions()->Add(ptstats);
  ptstats->SetParent(h1);

  TLegend *leg = new TLegend(0.1582915,0.7237762,0.3580402,0.9230769,NULL,"brNDC");
  leg->AddEntry(h1,"100 entries","pe");
  leg->AddEntry(h2,"1000 entries","pe");
  leg->AddEntry(h3,"10000 entries","pe");
  leg->SetFillColor(0);
  leg->Draw();

  //export png
  TImage *img = TImage::Create();
  img->FromPad(canvas);
  img->WriteImage("hw1.png");
  //delete img;


  //return
  return 0;
}
Beispiel #7
0
void c()
{
//=========Macro generated from canvas: c/
//=========  (Wed Jul 15 12:00:01 2015) by ROOT version6.04/00
   TCanvas *c = new TCanvas("c", "",241,92,600,502);
   c->SetHighLightColor(2);
   c->Range(-162.5,793.0968,162.5,5327.128);
   c->SetFillColor(0);
   c->SetBorderMode(0);
   c->SetBorderSize(2);
   c->SetFrameBorderMode(0);
   c->SetFrameBorderMode(0);
   
   TH1D *hist__1__1 = new TH1D("hist__1__1","Difference in PMT-constructed position and mc-truth start position",100,-130,130);
   hist__1__1->SetBinContent(0,12746);
   hist__1__1->SetBinContent(1,1411);
   hist__1__1->SetBinContent(2,1544);
   hist__1__1->SetBinContent(3,1661);
   hist__1__1->SetBinContent(4,1683);
   hist__1__1->SetBinContent(5,1784);
   hist__1__1->SetBinContent(6,2533);
   hist__1__1->SetBinContent(7,2615);
   hist__1__1->SetBinContent(8,2743);
   hist__1__1->SetBinContent(9,2797);
   hist__1__1->SetBinContent(10,2647);
   hist__1__1->SetBinContent(11,2958);
   hist__1__1->SetBinContent(12,3082);
   hist__1__1->SetBinContent(13,2971);
   hist__1__1->SetBinContent(14,3232);
   hist__1__1->SetBinContent(15,3016);
   hist__1__1->SetBinContent(16,3336);
   hist__1__1->SetBinContent(17,3712);
   hist__1__1->SetBinContent(18,3809);
   hist__1__1->SetBinContent(19,3902);
   hist__1__1->SetBinContent(20,3742);
   hist__1__1->SetBinContent(21,3718);
   hist__1__1->SetBinContent(22,3825);
   hist__1__1->SetBinContent(23,4008);
   hist__1__1->SetBinContent(24,3934);
   hist__1__1->SetBinContent(25,4167);
   hist__1__1->SetBinContent(26,4107);
   hist__1__1->SetBinContent(27,4153);
   hist__1__1->SetBinContent(28,4438);
   hist__1__1->SetBinContent(29,4538);
   hist__1__1->SetBinContent(30,4540);
   hist__1__1->SetBinContent(31,4452);
   hist__1__1->SetBinContent(32,4157);
   hist__1__1->SetBinContent(33,4423);
   hist__1__1->SetBinContent(34,4408);
   hist__1__1->SetBinContent(35,4611);
   hist__1__1->SetBinContent(36,4621);
   hist__1__1->SetBinContent(37,4339);
   hist__1__1->SetBinContent(38,4458);
   hist__1__1->SetBinContent(39,4609);
   hist__1__1->SetBinContent(40,4519);
   hist__1__1->SetBinContent(41,4430);
   hist__1__1->SetBinContent(42,4648);
   hist__1__1->SetBinContent(43,4358);
   hist__1__1->SetBinContent(44,4503);
   hist__1__1->SetBinContent(45,4561);
   hist__1__1->SetBinContent(46,4632);
   hist__1__1->SetBinContent(47,4566);
   hist__1__1->SetBinContent(48,4420);
   hist__1__1->SetBinContent(49,4395);
   hist__1__1->SetBinContent(50,4628);
   hist__1__1->SetBinContent(51,4563);
   hist__1__1->SetBinContent(52,4471);
   hist__1__1->SetBinContent(53,4539);
   hist__1__1->SetBinContent(54,4464);
   hist__1__1->SetBinContent(55,4581);
   hist__1__1->SetBinContent(56,4531);
   hist__1__1->SetBinContent(57,4598);
   hist__1__1->SetBinContent(58,4456);
   hist__1__1->SetBinContent(59,4341);
   hist__1__1->SetBinContent(60,4654);
   hist__1__1->SetBinContent(61,4672);
   hist__1__1->SetBinContent(62,4511);
   hist__1__1->SetBinContent(63,4446);
   hist__1__1->SetBinContent(64,4356);
   hist__1__1->SetBinContent(65,4380);
   hist__1__1->SetBinContent(66,4383);
   hist__1__1->SetBinContent(67,4469);
   hist__1__1->SetBinContent(68,4606);
   hist__1__1->SetBinContent(69,4563);
   hist__1__1->SetBinContent(70,4413);
   hist__1__1->SetBinContent(71,4701);
   hist__1__1->SetBinContent(72,4643);
   hist__1__1->SetBinContent(73,4427);
   hist__1__1->SetBinContent(74,3933);
   hist__1__1->SetBinContent(75,3939);
   hist__1__1->SetBinContent(76,4093);
   hist__1__1->SetBinContent(77,3913);
   hist__1__1->SetBinContent(78,4026);
   hist__1__1->SetBinContent(79,3843);
   hist__1__1->SetBinContent(80,3641);
   hist__1__1->SetBinContent(81,3916);
   hist__1__1->SetBinContent(82,4042);
   hist__1__1->SetBinContent(83,3798);
   hist__1__1->SetBinContent(84,3601);
   hist__1__1->SetBinContent(85,3249);
   hist__1__1->SetBinContent(86,3146);
   hist__1__1->SetBinContent(87,3199);
   hist__1__1->SetBinContent(88,3035);
   hist__1__1->SetBinContent(89,3021);
   hist__1__1->SetBinContent(90,2861);
   hist__1__1->SetBinContent(91,2848);
   hist__1__1->SetBinContent(92,2819);
   hist__1__1->SetBinContent(93,2744);
   hist__1__1->SetBinContent(94,2542);
   hist__1__1->SetBinContent(95,2198);
   hist__1__1->SetBinContent(96,1717);
   hist__1__1->SetBinContent(97,1743);
   hist__1__1->SetBinContent(98,1585);
   hist__1__1->SetBinContent(99,1504);
   hist__1__1->SetBinContent(100,1475);
   hist__1__1->SetBinContent(101,12137);
   hist__1__1->SetEntries(397426);
   
   TPaveStats *ptstats = new TPaveStats(0.78,0.775,0.98,0.935,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   TText *AText = ptstats->AddText("hist__1");
   AText->SetTextSize(0.0368);
   AText = ptstats->AddText("Entries = 397426 ");
   AText = ptstats->AddText("Mean  = -0.08411");
   AText = ptstats->AddText("Std Dev   =  66.16");
   ptstats->SetOptStat(1111);
   ptstats->SetOptFit(0);
   ptstats->Draw();
   hist__1__1->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(hist__1__1);

   Int_t ci;      // for color index setting
   TColor *color; // for color definition with alpha
   ci = 926;
   color = new TColor(ci, 0, 0, 1, " ", 0.273);
   hist__1__1->SetFillColor(ci);
   hist__1__1->SetLineColor(4);
   hist__1__1->SetLineWidth(2);
   hist__1__1->GetXaxis()->SetTitle("#DeltaY [cm]");
   hist__1__1->GetXaxis()->SetLabelFont(42);
   hist__1__1->GetXaxis()->SetLabelSize(0.05);
   hist__1__1->GetXaxis()->SetTitleSize(0.05);
   hist__1__1->GetXaxis()->SetTitleOffset(0.93);
   hist__1__1->GetXaxis()->SetTitleFont(22);
   hist__1__1->GetYaxis()->SetLabelFont(42);
   hist__1__1->GetYaxis()->SetLabelSize(0.05);
   hist__1__1->GetYaxis()->SetTitleSize(0.035);
   hist__1__1->GetYaxis()->SetTitleFont(42);
   hist__1__1->GetZaxis()->SetLabelFont(42);
   hist__1__1->GetZaxis()->SetLabelSize(0.035);
   hist__1__1->GetZaxis()->SetTitleSize(0.035);
   hist__1__1->GetZaxis()->SetTitleFont(42);
   hist__1__1->Draw("");
   
   TPaveText *pt = new TPaveText(0.15,0.9368947,0.85,0.995,"blNDC");
   pt->SetName("title");
   pt->SetBorderSize(0);
   pt->SetFillColor(0);
   pt->SetFillStyle(0);
   pt->SetTextFont(42);
   AText = pt->AddText("Difference in PMT-constructed position and mc-truth start position");
   pt->Draw();
   c->Modified();
   c->cd();
   c->SetSelected(c);
}
void plot_PbPb_fit_ratio_eff()
{
//=========Macro generated from canvas: Fit/Fit on Efficiency Ratio
//=========  (Mon Aug 29 17:39:14 2016) by ROOT version6.02/10
   TCanvas *Fit = new TCanvas("Fit", "Fit on Efficiency Ratio",0,0,800,500);
   gStyle->SetOptFit(1);
   Fit->Range(1.625,-0.3125,55.375,2.8125);
   Fit->SetFillColor(0);
   Fit->SetBorderMode(0);
   Fit->SetBorderSize(2);
   Fit->SetFrameBorderMode(0);
   Fit->SetFrameBorderMode(0);
   Double_t xAxis1[6] = {7, 10, 15, 20, 30, 50}; 
   
   TH1D *PbPb_fit1 = new TH1D("PbPb_fit1","",5, xAxis1);
   PbPb_fit1->SetBinContent(1,0.8304669);
   PbPb_fit1->SetBinContent(2,0.8392248);
   PbPb_fit1->SetBinContent(3,0.8551938);
   PbPb_fit1->SetBinContent(4,0.8559738);
   PbPb_fit1->SetBinContent(5,0.8749088);
   PbPb_fit1->SetBinError(1,0.06688803);
   PbPb_fit1->SetBinError(2,0.03626477);
   PbPb_fit1->SetBinError(3,0.03301156);
   PbPb_fit1->SetBinError(4,0.02217037);
   PbPb_fit1->SetBinError(5,0.01963207);
   PbPb_fit1->SetMinimum(0);
   PbPb_fit1->SetMaximum(2.5);
   PbPb_fit1->SetEntries(2335.214);
   
   TF1 *myfit1 = new TF1("myfit","pow(10,[0]+[1]*x+x*x*[2])+pow(10,[3]*x*x+[4]*x*x*x+[5])",2,100);
   myfit1->SetFillColor(19);
   myfit1->SetFillStyle(0);
   myfit1->SetMarkerStyle(20);
   myfit1->SetLineColor(2);
   myfit1->SetLineWidth(2);
   myfit1->SetChisquare(5.134234e-08);
   myfit1->SetNDF(0);
   myfit1->GetXaxis()->SetLabelFont(42);
   myfit1->GetXaxis()->SetLabelSize(0.035);
   myfit1->GetXaxis()->SetTitleSize(0.035);
   myfit1->GetXaxis()->SetTitleFont(42);
   myfit1->GetYaxis()->SetLabelFont(42);
   myfit1->GetYaxis()->SetLabelSize(0.035);
   myfit1->GetYaxis()->SetTitleSize(0.035);
   myfit1->GetYaxis()->SetTitleFont(42);
   myfit1->SetParameter(0,-0.1325891);
   myfit1->SetParError(0,0.07303413);
   myfit1->SetParLimits(0,0,0);
   myfit1->SetParameter(1,-0.004821085);
   myfit1->SetParError(1,0.00252747);
   myfit1->SetParLimits(1,0,0);
   myfit1->SetParameter(2,0.0001629026);
   myfit1->SetParError(2,6.139007e-05);
   myfit1->SetParLimits(2,0,0);
   myfit1->SetParameter(3,0.001400688);
   myfit1->SetParError(3,0.0009400359);
   myfit1->SetParLimits(3,0,0);
   myfit1->SetParameter(4,-4.985927e-05);
   myfit1->SetParError(4,3.268586e-05);
   myfit1->SetParLimits(4,0,0);
   myfit1->SetParameter(5,-0.9198558);
   myfit1->SetParError(5,0.3015603);
   myfit1->SetParLimits(5,0,0);
   PbPb_fit1->GetListOfFunctions()->Add(myfit1);
   
   TPaveStats *ptstats = new TPaveStats(0.558,0.6,0.9,0.9,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   TText *AText = ptstats->AddText("PbPb_fit");
   AText->SetTextSize(0.01971428);
   AText = ptstats->AddText("Entries = 2335   ");
   AText = ptstats->AddText("Mean  =  20.89");
   AText = ptstats->AddText("RMS   =  11.16");
   AText = ptstats->AddText("Underflow =      0");
   AText = ptstats->AddText("Overflow  =      0");
   AText = ptstats->AddText("Integral =  4.256");
   AText = ptstats->AddText("#chi^{2} / ndf = 5.134e-08 / 0");
   AText = ptstats->AddText("p0       = -0.1326 #pm 0.0730 ");
   AText = ptstats->AddText("p1       = -0.004821 #pm 0.002527 ");
   AText = ptstats->AddText("p2       = 0.0001629 #pm 0.0000614 ");
   AText = ptstats->AddText("p3       = 0.001401 #pm 0.000940 ");
   AText = ptstats->AddText("p4       = -4.986e-05 #pm 3.269e-05 ");
   AText = ptstats->AddText("p5       = -0.9199 #pm 0.3016 ");
   ptstats->SetOptStat(1111111);
   ptstats->SetOptFit(111);
   ptstats->Draw();
   PbPb_fit1->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(PbPb_fit1);

   Int_t ci;      // for color index setting
   TColor *color; // for color definition with alpha
   ci = TColor::GetColor("#000099");
   PbPb_fit1->SetLineColor(ci);
   PbPb_fit1->SetMarkerStyle(20);
   PbPb_fit1->GetXaxis()->SetTitle("Gen p_{T}(GeV)");
   PbPb_fit1->GetXaxis()->CenterTitle(true);
   PbPb_fit1->GetXaxis()->SetLabelFont(42);
   PbPb_fit1->GetXaxis()->SetLabelSize(0.035);
   PbPb_fit1->GetXaxis()->SetTitleSize(0.035);
   PbPb_fit1->GetXaxis()->SetTitleFont(42);
   PbPb_fit1->GetYaxis()->SetTitle("Efficiency p_{T} weight / no weight");
   PbPb_fit1->GetYaxis()->CenterTitle(true);
   PbPb_fit1->GetYaxis()->SetLabelFont(42);
   PbPb_fit1->GetYaxis()->SetLabelSize(0.035);
   PbPb_fit1->GetYaxis()->SetTitleSize(0.035);
   PbPb_fit1->GetYaxis()->SetTitleOffset(1.2);
   PbPb_fit1->GetYaxis()->SetTitleFont(42);
   PbPb_fit1->GetZaxis()->SetLabelFont(42);
   PbPb_fit1->GetZaxis()->SetLabelSize(0.035);
   PbPb_fit1->GetZaxis()->SetTitleSize(0.035);
   PbPb_fit1->GetZaxis()->SetTitleFont(42);
   PbPb_fit1->Draw("");
      tex = new TLatex(15,2,"B+ PbPb #sqrt{s}= 5.02 TeV");
   tex->SetLineWidth(2);
   tex->Draw();
   Fit->Modified();
   Fit->cd();
   Fit->SetSelected(Fit);
}
void QCDHT_cutflow_weighted()
{
//=========Macro generated from canvas: c1/c1
//=========  (Wed Feb 24 17:48:49 2016) by ROOT version6.02/05
   TCanvas *c1 = new TCanvas("c1", "c1",65,52,700,500);
   c1->Range(-1.25,-2351156,16.25,2.11604e+07);
   c1->SetFillColor(0);
   c1->SetBorderMode(0);
   c1->SetBorderSize(2);
   c1->SetFrameBorderMode(0);
   c1->SetFrameBorderMode(0);
   
   TH1D *cutflow1 = new TH1D("cutflow1","cut flow",14,0.5,14.5);
   cutflow1->SetBinContent(1,1.791357e+07);
   cutflow1->SetBinContent(2,1.791357e+07);
   cutflow1->SetBinContent(3,1.482016e+07);
   cutflow1->SetBinContent(4,1.397007e+07);
   cutflow1->SetBinContent(5,8159947);
   cutflow1->SetBinContent(6,1368453);
   cutflow1->SetBinContent(7,12035.83);
   cutflow1->SetBinContent(8,10653.79);
   cutflow1->SetBinContent(9,4100.401);
   cutflow1->SetBinContent(10,4323.004);
   cutflow1->SetBinContent(11,1820.803);
   cutflow1->SetBinContent(12,374.2397);
   cutflow1->SetBinContent(13,35.33991);
   cutflow1->SetBinContent(14,214.6597);
   cutflow1->SetEntries(1.137194e+08);
   
   TPaveStats *ptstats = new TPaveStats(0.78,0.775,0.98,0.935,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   TText *AText = ptstats->AddText("cutflow");
   AText->SetTextSize(0.0368);
   AText = ptstats->AddText("Entries =   1.137194e+08");
   AText = ptstats->AddText("Mean  =      0");
   AText = ptstats->AddText("RMS   =      0");
   ptstats->SetOptStat(1111);
   ptstats->SetOptFit(0);
   ptstats->Draw();
   cutflow1->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(cutflow1);

   Int_t ci;      // for color index setting
   TColor *color; // for color definition with alpha
   ci = TColor::GetColor("#000099");
   cutflow1->SetLineColor(ci);
   cutflow1->GetXaxis()->SetBinLabel(1,"All");
   cutflow1->GetXaxis()->SetBinLabel(2,"Trigger");
   cutflow1->GetXaxis()->SetBinLabel(3,"p_{T}");
   cutflow1->GetXaxis()->SetBinLabel(4,"|#eta|");
   cutflow1->GetXaxis()->SetBinLabel(5,"|#Delta#eta|");
   cutflow1->GetXaxis()->SetBinLabel(6,"M(jet_{0},jet(1))");
   cutflow1->GetXaxis()->SetBinLabel(7,"M(jets)");
   cutflow1->GetXaxis()->SetBinLabel(8,"#tau_{21}");
   cutflow1->GetXaxis()->SetBinLabel(9,"0b");
   cutflow1->GetXaxis()->SetBinLabel(10,"1b");
   cutflow1->GetXaxis()->SetBinLabel(11,"2b");
   cutflow1->GetXaxis()->SetBinLabel(12,"3b");
   cutflow1->GetXaxis()->SetBinLabel(13,"4b");
   cutflow1->GetXaxis()->SetBinLabel(14,"3b+HPHP");
   cutflow1->GetXaxis()->SetLabelFont(42);
   cutflow1->GetXaxis()->SetLabelSize(0.035);
   cutflow1->GetXaxis()->SetTitleSize(0.035);
   cutflow1->GetXaxis()->SetTitleFont(42);
   cutflow1->GetYaxis()->SetLabelFont(42);
   cutflow1->GetYaxis()->SetLabelSize(0.035);
   cutflow1->GetYaxis()->SetTitleSize(0.035);
   cutflow1->GetYaxis()->SetTitleFont(42);
   cutflow1->GetZaxis()->SetLabelFont(42);
   cutflow1->GetZaxis()->SetLabelSize(0.035);
   cutflow1->GetZaxis()->SetTitleSize(0.035);
   cutflow1->GetZaxis()->SetTitleFont(42);
   cutflow1->Draw("");
   
   TPaveText *pt = new TPaveText(0.4246264,0.94,0.5753736,0.995,"blNDC");
   pt->SetName("title");
   pt->SetBorderSize(0);
   pt->SetFillColor(0);
   pt->SetFillStyle(0);
   pt->SetTextFont(42);
   AText = pt->AddText("cut flow");
   pt->Draw();
   c1->Modified();
   c1->cd();
   c1->SetSelected(c1);
}
Beispiel #10
0
void x_dist_cuts()
{
//=========Macro generated from canvas: c/
//=========  (Fri Jul 24 12:08:10 2015) by ROOT version6.04/00
   TCanvas *c = new TCanvas("c", "",0,45,600,500);
   c->SetHighLightColor(2);
   c->Range(-187.5,-2144.494,187.5,19300.44);
   c->SetFillColor(0);
   c->SetBorderMode(0);
   c->SetBorderSize(2);
   c->SetFrameBorderMode(0);
   c->SetFrameBorderMode(0);
   
   TH1D *hist__1 = new TH1D("hist__1","Worry Later",100,-150,150);
   hist__1->SetBinContent(0,37);
   hist__1->SetBinContent(1,11);
   hist__1->SetBinContent(2,6);
   hist__1->SetBinContent(3,9);
   hist__1->SetBinContent(4,11);
   hist__1->SetBinContent(5,17);
   hist__1->SetBinContent(6,29);
   hist__1->SetBinContent(7,31);
   hist__1->SetBinContent(8,40);
   hist__1->SetBinContent(9,65);
   hist__1->SetBinContent(10,62);
   hist__1->SetBinContent(11,79);
   hist__1->SetBinContent(12,132);
   hist__1->SetBinContent(13,148);
   hist__1->SetBinContent(14,184);
   hist__1->SetBinContent(15,187);
   hist__1->SetBinContent(16,257);
   hist__1->SetBinContent(17,316);
   hist__1->SetBinContent(18,354);
   hist__1->SetBinContent(19,449);
   hist__1->SetBinContent(20,495);
   hist__1->SetBinContent(21,568);
   hist__1->SetBinContent(22,607);
   hist__1->SetBinContent(23,624);
   hist__1->SetBinContent(24,686);
   hist__1->SetBinContent(25,704);
   hist__1->SetBinContent(26,739);
   hist__1->SetBinContent(27,738);
   hist__1->SetBinContent(28,743);
   hist__1->SetBinContent(29,732);
   hist__1->SetBinContent(30,730);
   hist__1->SetBinContent(31,706);
   hist__1->SetBinContent(32,773);
   hist__1->SetBinContent(33,716);
   hist__1->SetBinContent(34,788);
   hist__1->SetBinContent(35,760);
   hist__1->SetBinContent(36,900);
   hist__1->SetBinContent(37,945);
   hist__1->SetBinContent(38,1039);
   hist__1->SetBinContent(39,1194);
   hist__1->SetBinContent(40,1368);
   hist__1->SetBinContent(41,1682);
   hist__1->SetBinContent(42,1928);
   hist__1->SetBinContent(43,2500);
   hist__1->SetBinContent(44,3260);
   hist__1->SetBinContent(45,4389);
   hist__1->SetBinContent(46,5759);
   hist__1->SetBinContent(47,7620);
   hist__1->SetBinContent(48,9955);
   hist__1->SetBinContent(49,13012);
   hist__1->SetBinContent(50,16339);
   hist__1->SetBinContent(51,16048);
   hist__1->SetBinContent(52,13155);
   hist__1->SetBinContent(53,10318);
   hist__1->SetBinContent(54,7953);
   hist__1->SetBinContent(55,6143);
   hist__1->SetBinContent(56,4420);
   hist__1->SetBinContent(57,3422);
   hist__1->SetBinContent(58,2687);
   hist__1->SetBinContent(59,2027);
   hist__1->SetBinContent(60,1643);
   hist__1->SetBinContent(61,1359);
   hist__1->SetBinContent(62,1189);
   hist__1->SetBinContent(63,1057);
   hist__1->SetBinContent(64,929);
   hist__1->SetBinContent(65,840);
   hist__1->SetBinContent(66,792);
   hist__1->SetBinContent(67,759);
   hist__1->SetBinContent(68,719);
   hist__1->SetBinContent(69,673);
   hist__1->SetBinContent(70,702);
   hist__1->SetBinContent(71,769);
   hist__1->SetBinContent(72,693);
   hist__1->SetBinContent(73,728);
   hist__1->SetBinContent(74,719);
   hist__1->SetBinContent(75,698);
   hist__1->SetBinContent(76,729);
   hist__1->SetBinContent(77,695);
   hist__1->SetBinContent(78,732);
   hist__1->SetBinContent(79,692);
   hist__1->SetBinContent(80,620);
   hist__1->SetBinContent(81,592);
   hist__1->SetBinContent(82,525);
   hist__1->SetBinContent(83,463);
   hist__1->SetBinContent(84,407);
   hist__1->SetBinContent(85,357);
   hist__1->SetBinContent(86,300);
   hist__1->SetBinContent(87,229);
   hist__1->SetBinContent(88,192);
   hist__1->SetBinContent(89,154);
   hist__1->SetBinContent(90,113);
   hist__1->SetBinContent(91,123);
   hist__1->SetBinContent(92,73);
   hist__1->SetBinContent(93,55);
   hist__1->SetBinContent(94,41);
   hist__1->SetBinContent(95,27);
   hist__1->SetBinContent(96,27);
   hist__1->SetBinContent(97,18);
   hist__1->SetBinContent(98,14);
   hist__1->SetBinContent(99,8);
   hist__1->SetBinContent(100,11);
   hist__1->SetBinContent(101,55);
   hist__1->SetEntries(173117);
   
   TPaveStats *ptstats = new TPaveStats(0.78,0.775,0.98,0.935,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   TText *AText = ptstats->AddText("hist");
   AText->SetTextSize(0.0368);
   AText = ptstats->AddText("Entries = 173117 ");
   AText = ptstats->AddText("Mean  = 0.6933");
   AText = ptstats->AddText("Std Dev   =  34.33");
   ptstats->SetOptStat(1111);
   ptstats->SetOptFit(0);
   ptstats->Draw();
   hist__1->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(hist__1);

   Int_t ci;      // for color index setting
   TColor *color; // for color definition with alpha
   ci = TColor::GetColor("#000099");
   hist__1->SetLineColor(ci);
   hist__1->GetXaxis()->SetTitle("#DeltaZ [cm]");
   hist__1->GetXaxis()->SetLabelFont(42);
   hist__1->GetXaxis()->SetLabelSize(0.035);
   hist__1->GetXaxis()->SetTitleSize(0.035);
   hist__1->GetXaxis()->SetTitleFont(42);
   hist__1->GetYaxis()->SetLabelFont(42);
   hist__1->GetYaxis()->SetLabelSize(0.035);
   hist__1->GetYaxis()->SetTitleSize(0.035);
   hist__1->GetYaxis()->SetTitleFont(42);
   hist__1->GetZaxis()->SetLabelFont(42);
   hist__1->GetZaxis()->SetLabelSize(0.035);
   hist__1->GetZaxis()->SetTitleSize(0.035);
   hist__1->GetZaxis()->SetTitleFont(42);
   hist__1->Draw("");
   
   TPaveText *pt = new TPaveText(0.3779599,0.9368947,0.6220401,0.995,"blNDC");
   pt->SetName("title");
   pt->SetBorderSize(0);
   pt->SetFillColor(0);
   pt->SetFillStyle(0);
   pt->SetTextFont(42);
   AText = pt->AddText("Worry Later");
   pt->Draw();
   c->Modified();
   c->cd();
   c->SetSelected(c);
}
Beispiel #11
0
int CaloL3(const char *ctype="Calo")
{

  bool iSave=false;

  double minx=1.0;

  LoadStyle();
  gStyle->SetOptStat(1);
  gStyle->SetOptFit(1);

  //string outdir="txtfiles/";
  string outdir="junk/";
  cout << " # of bins in pt : "  << nbins << endl;
  //return 0;
  
  TVirtualFitter::SetDefaultFitter("Minuit");
  TH1F *hrsp[knj][nbins];
  TGraphErrors *grsp[knj], *gcor[knj];
  TH1F *hMean[knj], *hRMS[knj];

  //TFile *fin = new TFile("jra_hiF_akcalo_ppReco_757p1_dijet.root","r");

  //TFile *fin = new TFile("jra_hiF_akcalo_ppReco_757p1_dijet_fulleta_fullpt.root","r");

  TFile *fin = new TFile("jra_hiF_akcalo_ppReco_757p1_HcalRespCorrs_v4_00_mc_dijet.root","r");
  double refptmin=0;
  double refptmax=1000;

  TLegend *l0 = getLegend(0.6349664,0.3265565,0.8491835,0.7128335);
  l0->SetHeader(Form("Anti-k_{T}, %s",ctype));
  TLegend *l1 = getLegend(0.1500646,0.5052258,0.3653091,0.7490942);
  l1->SetHeader("");

  TF1 *fgaus=0;
  TH1F *hrefpt=0, *hjetpt=0;

  int njmin=0;
  int njmax=knj;
  for(int i=njmin; i<njmax; i++){

    grsp[i] = new TGraphErrors(nbins);
    gcor[i] = new TGraphErrors(nbins);

    //grsp[i]->SetName(Form("L3RspVsRefPt_%d",i));
    grsp[i]->SetName(Form("L3RspVsRefPt_%s",calgo[i]));
    grsp[i]->SetTitle(Form("L3RspVsRefPt %s",calgo[i]));
    grsp[i]->SetLineColor(1);
    grsp[i]->SetMarkerColor(1);
    grsp[i]->SetMarkerStyle(20);
    grsp[i]->SetMarkerSize(1.2);

    //gcor[i]->SetName(Form("L3CorVsJetPt_%d",i));
    gcor[i]->SetName(Form("L3CorVsJetPt_%s",calgo[i]));
    gcor[i]->SetTitle(Form("L3CorVsJetPt %s",calgo[i]));
    gcor[i]->SetLineColor(1);
    gcor[i]->SetMarkerColor(1);
    gcor[i]->SetMarkerStyle(20);
    gcor[i]->SetMarkerSize(1.2);


    hMean [i] = new TH1F(Form("hMean_%d",i),Form("%s%s",calgo[i],ctype),nbins,ptbins);
    hMean [i]->SetMarkerColor(1);
    hMean [i]->SetMarkerStyle(20);
    hMean [i]->SetLineColor(1);
    hMean [i]->GetXaxis()->SetMoreLogLabels();
    hMean [i]->GetXaxis()->SetNoExponent();

    hRMS [i] = new TH1F(Form("hRMS_%d",i),Form("%s%s",calgo[i],ctype),nbins,ptbins);
    hRMS [i]->SetMarkerColor(1);
    hRMS [i]->SetMarkerStyle(20);
    hRMS [i]->SetLineColor(1);


    std::ostringstream strs;
    //strs << "ak"   << i+1 << "CaloJetAnalyzer/";
    strs << calgo[i] << "CaloJetAnalyzer/";
    cout << " Running for : " << strs.str().c_str() << endl;

    for(int j=0; j<nbins; j++){
      
      if(ptbins[j]<minx)continue;

      //if(j<2)continue;
      std::ostringstream spt; 
      spt << ptbins[j] << "to" << ptbins[j+1];
      //cout << " ptbins : "  << ptbins[j] << endl;
      
      std::string sone  (strs.str()+"RefPt_Barrel_RefPt"+spt.str());
      std::string stwo  (strs.str()+"JetPt_Barrel_RefPt"+spt.str());
      std::string sthree(strs.str()+"RelRsp_Barrel_RefPt"+spt.str());

      hrefpt     = (TH1F*)fin->Get(sone.c_str());
      hjetpt     = (TH1F*)fin->Get(stwo.c_str());
      hrsp[i][j] = (TH1F*)fin->Get(sthree.c_str());
      
      //hrsp[i][j]->Rebin(2);

      assert(hrefpt->GetEntries()>0 && hjetpt->GetEntries()>0);

      // if( ptbins[j] < 30.0 ){
      // 	SetHistRange(hrsp[i][j]);
      // }

      double refpt   =hrefpt->GetMean();
      double erefpt  =hrefpt->GetMeanError();
      double jetpt   =hjetpt->GetMean();
      double ejetpt  =hjetpt->GetMeanError();


      hrsp[i][j]->SetLineColor(1);
      hrsp[i][j]->SetMarkerColor(1);
      hrsp[i][j]->SetMarkerStyle(20);
      if(j==0)l0->AddEntry(hrsp[i][j],Form("R = %0.1f",(i+1)*0.1),"p");

      //if(i==0)cout <<"  refpt : " << refpt << " rawpt : " << jetpt << endl;

      //if(j<10)hrsp[i][j]->Rebin(2);
      //hrsp[i][j]->Rebin(5);

      double norm  = hrsp[i][j]->GetMaximumStored(); 
      double rms   = hrsp[i][j]->GetRMS(); 
      double peak  = hrsp[i][j]->GetMean();
      //double peak  = (GetPeak(hrsp[i][j]) +  hrsp[i][j]->GetMean())/2.;
      double epeak = hrsp[i][j]->GetMeanError();

      // double tmppeak = GetPeak(hrsp[i][j]);
      // fgaus = new TF1("fgaus","gaus", 0.07, 1.2);
      // fgaus->SetParameters(norm, peak, 0.15);
      // //fgaus->SetParLimits(1, peak - 1.5*rms, peak + 1.5*rms);
      // int fitstatus = hrsp[i][j]->Fit(fgaus,"QR");      
      // peak    = (fgaus==0) ? hrsp[i][j]->GetMean()      :  fgaus->GetParameter(1);
      // epeak   = (fgaus==0) ? hrsp[i][j]->GetMeanError() :  fgaus->GetParError(1);

      
       // if(i==0)fit_dscb(hrsp[i][j], 1.03, minx, 5, Form("%s%s",calgo[i],ctype), 0.17, 1.70);      
       // else if(i==5)fit_dscb(hrsp[i][j], 1.00, minx, 5, Form("%s%s",calgo[i],ctype), 0.05, 1.45);      
       // else fit_dscb(hrsp[i][j], 1.03, minx, 5, Form("%s%s",calgo[i],ctype), 0.10, 1.50);      

      if(i==0)fit_dscb(hrsp[i][j], 1.03, minx, 5, Form("%s%s",calgo[i],ctype), 0.17, 1.70);      
      else if(i !=5 )fit_dscb(hrsp[i][j], 1.03, minx, 5, Form("%s%s",calgo[i],ctype), 0.10, 1.50);      

      //! pp reco
      // if( i==0 )fit_dscb(hrsp[i][j], 0.85, minx, 5, Form("%s%s",calgo[i],ctype));      
      // else if(i==1)fit_dscb(hrsp[i][j], 1.03, minx, 5, Form("%s%s",calgo[i],ctype));      
      // else if(i==2)fit_dscb(hrsp[i][j], 1.00, minx, 5, Form("%s%s",calgo[i],ctype));      
      // else if(i==3)fit_dscb(hrsp[i][j], 1.05, minx, 5, Form("%s%s",calgo[i],ctype));      
      // else if(i==4)fit_dscb(hrsp[i][j], 1.05, minx, 5, Form("%s%s",calgo[i],ctype));      
      // else fit_dscb(hrsp[i][j], 1.00, minx, 5, Form("%s%s",calgo[i],ctype));      

      //! HI reco
      // if( i==0 )fit_dscb(hrsp[i][j], 0.75, minx, 5, Form("ak%d%s",i+1,ctype));      
      // else if(i==1)fit_dscb(hrsp[i][j], 0.95, minx, 5, Form("ak%d%s",i+1,ctype));      
      // else if(i==2)fit_dscb(hrsp[i][j], 1.45, minx, 5, Form("ak%d%s",i+1,ctype));      
      // else if(i==3 || i==4)fit_dscb(hrsp[i][j], 1.50, minx, 4, Form("ak%d%s",i+1,ctype));      
      // else fit_dscb(hrsp[i][j], 1.30, minx, 5, Form("ak%d%s",i+1,ctype));      


      TF1*  frelrsp = (TF1*)hrsp[i][j]->GetListOfFunctions()->Last();
      peak    = (frelrsp==0) ? hrsp[i][j]->GetMean()      :  frelrsp->GetParameter(1);
      epeak   = (frelrsp==0) ? hrsp[i][j]->GetMeanError() :  frelrsp->GetParError(1);

      //cout << " peak : " << peak << "  mean : " << hrsp[i][j]->GetMean()  << "  " << frelrsp->GetParameter(1) << endl;

      double cor  = 1.0/peak;
      double ecor = cor*cor*epeak;

      //if(i==0)cout <<ptbins[j] << " ratio of  " << refpt/jetpt << " " << cor << "  " <<  ftemp->Eval(jetpt) << " " << 1/ ftemp->Eval(jetpt) << endl;
      grsp[i]->SetPoint     (j, refpt,  peak);
      grsp[i]->SetPointError(j, erefpt, epeak);
      gcor[i]->SetPoint     (j, jetpt,  cor);
      gcor[i]->SetPointError(j, ejetpt, ecor);
    }
  }
  if( gPad )gPad->Close();
  //hrsp[0][0]->Draw("p");
  //return 0;
  
  int ipad=0;
  //! 0 - 20 GeV
  TCanvas *c98[knj];
  for(int nj=njmin;nj<njmax;nj++){
    c98[nj] = new TCanvas(Form("c99_%d",nj),Form("Fine %s Fitting plots",calgo[nj]),100,102,1399,942);
    c98[nj]->Divide(6,3,0,0);
    //c98[nj]->Divide(10,5,0,0);
    //c98[nj]->Divide(6,5,0,0);
    //c98[nj]->Divide(7,4,0,0);
    //c98[nj]->Divide(6,4,0,0);
    ipad=0;
    for(int ip=0;ip<nbins;ip++){      
      if(ptbins[ip]<minx)continue;
      c98[nj]->cd(++ipad);
      gPad->SetLeftMargin(0.15);
      gPad->SetRightMargin(0.01);
      gPad->SetBottomMargin(0.15);
      gPad->SetLogy();
      //if(ipad%10==0)gPad->SetRightMargin(0.02);
      //if(ipad%(ip+1)==0)gPad->SetLeftMargin(0.15);
    
      //hrsp[nj][ip]->SetMaximum(hrsp[nj][ip]->GetMaximum() + 0.25*hrsp[nj][ip]->GetMaximum());
      hrsp[nj][ip]->SetMaximum(hrsp[nj][ip]->Integral()*2e-00);
      hrsp[nj][ip]->SetMinimum(hrsp[nj][ip]->Integral()*1e-07);
      hrsp[nj][ip]->SetTitle(0);
      hrsp[nj][ip]->GetXaxis()->SetTitle("<reco jet p_{T} / gen jet p_{T}>");
      hrsp[nj][ip]->GetXaxis()->SetTitleFont(42);
      hrsp[nj][ip]->GetXaxis()->SetLabelFont(42);
      hrsp[nj][ip]->GetXaxis()->SetLabelSize(0.08);
      hrsp[nj][ip]->GetXaxis()->SetTitleSize(0.07);
      hrsp[nj][ip]->GetXaxis()->SetNdivisions(507);
      hrsp[nj][ip]->GetYaxis()->SetTitle("");
      hrsp[nj][ip]->GetYaxis()->SetTitleFont(42);
      hrsp[nj][ip]->GetYaxis()->SetLabelFont(42);
      hrsp[nj][ip]->GetYaxis()->SetLabelSize(0.08);
      hrsp[nj][ip]->GetYaxis()->SetNdivisions(507);
      
      hrsp[nj][ip]->SetMarkerStyle(20);
      hrsp[nj][ip]->SetMarkerColor(1);
      hrsp[nj][ip]->SetLineColor(1);
      hrsp[nj][ip]->SetMarkerSize(1.1);
      hrsp[nj][ip]->Draw("hist");  
      
      TF1 *fdscb = (TF1*)hrsp[nj][ip]->GetFunction("fdscb");
      if(fdscb){
	fdscb->SetLineWidth(1);
   	fdscb->SetLineColor(2);
   	fdscb->SetLineColor(2);
   	fdscb->Draw("lsame");
      }
      TF1 *fgaus = (TF1*)hrsp[nj][ip]->GetFunction("fgaus");
      if(fgaus){
	fgaus->SetLineWidth(1);
   	fgaus->SetLineColor(4);
   	fgaus->Draw("lsame");
      }
      // TF1 *fdg = (TF1*)hrsp[nj][ip]->GetFunction("fdgaus");
      // if(fdg){
      // 	TF1 *fg1 = (TF1*)hrsp[nj][ip]->GetFunction("fg1");      
      // 	TF1 *fg2 = (TF1*)hrsp[nj][ip]->GetFunction("fg2");      
      // 	fdg->Draw("lsame");
      // 	fg1->Draw("lsame");
      // 	fg2->Draw("lsame");
      // }
      
      std::ostringstream strs; 
      strs << ptbins[ip] << "< p_{T} (GeV/c) <" << ptbins[ip+1];
      std::string spt = strs.str();
      
      if(ipad==1){drawText2(Form("%s%s",calgo[nj],ctype),0.28,0.90,18);      
	
   	drawText2(spt.c_str(),0.22,0.80,15);		
      } else drawText2(spt.c_str(),0.17,0.80,15);		
    }
    //if(nj!=0)c98[nj]->Close();
    //if( strcmp(calgo[nj],"ak4")!=0 )c98[nj]->Close();
  }
  //return 0;
  
  cout << endl;
  cout << endl;

  cout << "Fitting the L3 Response "  << endl;

  //cout << endl;
  //cout << endl;


  TF1 *fitrsp=0, *fitcor=0;
  std::string fcn_rsp="";
  std::string fcn_cor="";

  //! Org
  // fcn_rsp="[0]-[1]/(pow(log10(x),[2])+[3])";
  // fcn_cor="[0]+[1]/(pow(log10(x),[2])+[3])";

  //! Using this one
  //fcn_rsp="[0]-[1]/(pow(log10(x),[2])+[3])+[4]/x";
  //fcn_cor="[0]+[1]/(pow(log10(x),[2])+[3])-[4]/x";

  fcn_rsp="[0]-[1]/(pow(log10(x),[2])+[3])+[4]/x+[5]/x/x";
  fcn_cor="[0]+[1]/(pow(log10(x),[2])+[3])-[4]/x-[5]/x/x";

  // double *rawpt = 0;
  // double *genpt = 0;


  TCanvas *c11 = new TCanvas("c11","L3 Response",1217,707/*1531,683*/);
  c11->Divide(3,2);
  TCanvas *c12 = new TCanvas("c12","L3 Corrections",1217,707/*1531,683*/);
  c12->Divide(3,2);
  for(int i=njmin; i<njmax; i++){  
    c11->cd(i+1);
    fitrsp = new TF1("fitrsp",fcn_rsp.c_str(), minx, grsp[i]->GetX()[grsp[i]->GetN()-1]);
    fitrsp->SetParameter(0,1.0);
    fitrsp->SetParameter(1,1.0);
    fitrsp->SetParameter(2,1.0);
    fitrsp->SetParameter(3,1.0);
    fitrsp->SetParameter(4,1.0);
    fitrsp->SetParameter(5,1.0);
    
    
    grsp[i]->Fit(fitrsp,"QR");
    //if( i<knj )grsp[i]->Fit(fitrsp,"QR","",grsp[i]->GetX()[1],grsp[i]->GetX()[grsp[i]->GetN()-1]);
    //else grsp[i]->Fit(fitrsp,"QR");
    grsp[i]->SetMaximum(1.2);
    grsp[i]->SetMinimum(0.2);
    grsp[i]->Draw("ap");
    gPad->SetLogx();
    gPad->SetLeftMargin(0.15);
    gPad->SetBottomMargin(0.15);
    gPad->Update();

    grsp[i]->GetXaxis()->SetTitle("< Ref p_{T} > (GeV/c)");
    grsp[i]->GetXaxis()->SetTitleFont(42);
    grsp[i]->GetXaxis()->SetLabelFont(42);
    grsp[i]->GetXaxis()->SetLabelSize(0.06);
    grsp[i]->GetXaxis()->SetTitleSize(0.06);
    grsp[i]->GetXaxis()->SetNdivisions(507);
    grsp[i]->GetXaxis()->SetNoExponent();
    grsp[i]->GetXaxis()->SetMoreLogLabels();
    grsp[i]->GetYaxis()->SetTitle("L3 Response");
    grsp[i]->GetYaxis()->SetTitleFont(42);
    grsp[i]->GetYaxis()->SetLabelFont(42);
    grsp[i]->GetYaxis()->SetLabelSize(0.06);
    grsp[i]->GetYaxis()->SetTitleSize(0.06);
    grsp[i]->GetYaxis()->SetNdivisions(507);

    grsp[i]->GetYaxis()->SetRangeUser(0,1.160);
    //grsp[i]->GetXaxis()->SetRangeUser(15,600);
    drawText2(Form("%s%s",calgo[i],ctype),0.20,0.78,21);

    TPaveStats *strsp = (TPaveStats*)grsp[i]->FindObject("stats");
    strsp->SetX1NDC(0.46);
    strsp->SetY1NDC(0.18);
    strsp->SetX2NDC(0.87);
    strsp->SetY2NDC(0.59);
    strsp->Draw();
    //delete fitrsp;
    //continue;
    
    c12->cd(i+1);
    //cout << endl;
    //cout << endl;
    
    // cout << "Fitting the L3 Corrections "  << endl;
    // cout << endl;
  
    fitcor = new TF1("fitcor",fcn_cor.c_str(), minx, gcor[i]->GetX()[gcor[i]->GetN()-1]);
    fitcor->SetParameter(0,1.0);
    fitcor->SetParameter(1,1.0);
    fitcor->SetParameter(2,1.0);
    fitcor->SetParameter(3,1.0);
    fitcor->SetParameter(4,1.0);
    fitcor->SetParameter(5,1.0);    
    
    gcor[i]->Fit(fitcor,"QR");
    //if(i<knj)gcor[i]->Fit(fitcor,"QR","",gcor[i]->GetX()[1],gcor[i]->GetX()[gcor[i]->GetN()-1]);
    //else gcor[i]->Fit(fitcor,"QR");

    string algn=Form("%d",i+1);
    string era="JEC_pp_PYTHIA_TuneCUETP8M1_5020GeV_patch3";
    //string era="JEC_pp_HIReco_PYTHIA_TuneCUETP8M1_5020GeV_patch3";
    string txtfilename = outdir+era+"_L3Absolute_AK"+algn+"Calo.txt";
    ofstream outf(txtfilename.c_str());
    //outf.setf(ios::left);
    //cout<<"{1 JetEta 1 JetPt "<<fcn_cor<<" Correction L3Absolute}"<<endl;
    outf<<"{1 JetEta 1 JetPt "<<fcn_cor<<" Correction L3Absolute}"<<endl;
    // cout<<setw(12)<<-3.000                // eta_min
    //   	<<setw(12)<<+3.000                // eta_max
    //   	<<setw(12)<<fitcor->GetNpar()+2   // number of parameters + 2
    //   	<<setw(12)<<7.0                   // minimum pT
    //   	<<setw(11)<<1000.0;               // maximum pT

    outf<<setw(12)<<-3.000                // eta_min
     	<<setw(12)<<+3.000                // eta_max
     	<<setw(12)<<fitcor->GetNpar()+2   // number of parameters + 2
     	<<setw(12)<<7.0                   // minimum pT
     	<<setw(12)<<1000.0;               // maximum pT

    for(int p=0; p<fitcor->GetNpar(); p++){
      //cout<<setw(12)<<fitcor->GetParameter(p); // p0-p4
      outf<<setw(12)<<fitcor->GetParameter(p); // p0-p4
    }
    outf.close();
    //cout<<endl;

    // if(i==0)cout <<Form("if(i==%d)fl3cor->SetParameters(",i);
    // else cout <<Form("else if(i==%d)fl3cor->SetParameters(",i);
    // for(int p=0; p<fitcor->GetNpar(); p++){
    //   if(p==fitcor->GetNpar()-1)cout<<setw(12)<<fitcor->GetParameter(p); // p0-p4
    //   else cout<<setw(12)<<fitcor->GetParameter(p)<<","; // p0-p4
    // }
    // cout <<");"<<endl;
    
    // rawpt = gcor[i]->GetX();
    // genpt = grsp[i]->GetX();
    // for(int ix=0; ix<gcor[i]->GetN(); ix++){
    //   double cor_fac = fitcor->Eval(rawpt[ix]);
    //   double corrpt  =  cor_fac*rawpt[ix];
    //   //std::cout << " genpt : " << genpt[ix] << " rawpt : " << rawpt[ix] << " corrpt : "  << corrpt << " cor_fac : "  << cor_fac << std::endl;
    //   std::cout << genpt[ix] << "  : " << (fabs(corrpt - genpt[ix])/genpt[ix])*100. << std::endl;
    // }



    // gcor[i]->GetXaxis()->SetRangeUser(15,600);
    gcor[i]->SetMaximum(3.35);
    gcor[i]->SetMinimum(0.89);
    gcor[i]->Draw("ap");
    gPad->SetLogx();
    gPad->SetLeftMargin(0.15);
    gPad->SetBottomMargin(0.15);
    gPad->Update();

    gcor[i]->GetXaxis()->SetTitle("< raw jet p_{T} > (GeV/c)");
    gcor[i]->GetXaxis()->SetTitleFont(42);
    gcor[i]->GetXaxis()->SetLabelFont(42);
    gcor[i]->GetXaxis()->SetLabelSize(0.06);
    gcor[i]->GetXaxis()->SetTitleSize(0.06);
    gcor[i]->GetXaxis()->SetNdivisions(507);
    gcor[i]->GetXaxis()->SetNoExponent();
    gcor[i]->GetXaxis()->SetMoreLogLabels();
    gcor[i]->GetYaxis()->SetTitle("L3 Correction");
    gcor[i]->GetYaxis()->SetTitleFont(42);
    gcor[i]->GetYaxis()->SetLabelFont(42);
    gcor[i]->GetYaxis()->SetLabelSize(0.06);
    gcor[i]->GetYaxis()->SetTitleSize(0.06);
    gcor[i]->GetYaxis()->SetNdivisions(507);

    gcor[i]->GetXaxis()->SetMoreLogLabels();
    gcor[i]->GetXaxis()->SetNoExponent();
    drawText2(Form("%s%s",calgo[i],ctype),0.20,0.78,21);


    TPaveStats *stcor = (TPaveStats*)gcor[i]->FindObject("stats");
    stcor->SetX1NDC(0.48);
    stcor->SetY1NDC(0.53);
    stcor->SetX2NDC(0.89);
    stcor->SetY2NDC(0.89);
    stcor->Draw();
  
    // cout << endl;
    //delete fitcor;
    
  }
  if(iSave){
    c12->SaveAs("CorrectionPlots/L3Absolute_Corrections_ppReco_CaloJets_757p1.pdf");
  }

  TFile *fout = new TFile("l3calo_input.root","RECREATE");
  for(int nj=njmin;nj<njmax;nj++){
    fout->mkdir(Form("%sCaloJetAnalyzer",calgo[nj]),Form("%sCaloJetAnalyzer",calgo[nj]));
    fout->cd(Form("%sCaloJetAnalyzer",calgo[nj]));
    grsp[nj]->Write();
    gcor[nj]->Write();
    fout->cd("../");
  }
  fout->Close();

  return 0;
}
void BSA_InCoherent_t()
{
//=========Macro generated from canvas: c17/Incoherent channe
//=========  (Tue Aug 21 12:00:26 2018) by ROOT version6.09/01
   TCanvas *c17 = new TCanvas("c17", "Incoherent channe",0,0,1200,400);
   gStyle->SetOptFit(1);
   c17->Range(0,0,1,1);
   c17->SetFillColor(0);
   c17->SetBorderMode(0);
   c17->SetBorderSize(2);
   c17->SetLeftMargin(0.025);
   c17->SetRightMargin(0.02325581);
   c17->SetFrameBorderMode(0);
  
// ------------>Primitives in pad: c17_1
   TPad *c17_1 = new TPad("c17_1", "Incoherent channe_1",0,0,0.262936,0.9);
   c17_1->Draw();
   c17_1->cd();
   c17_1->Range(-32.86883,-0.4888889,353.6809,0.4);
   c17_1->SetFillColor(0);
   c17_1->SetBorderMode(0);
   c17_1->SetBorderSize(2);
   c17_1->SetGridx();
   c17_1->SetGridy();
   c17_1->SetRightMargin(0);
   c17_1->SetTopMargin(0);
   c17_1->SetFrameBorderMode(0);
   c17_1->SetFrameBorderMode(0);
   
   TMultiGraph *multigraph = new TMultiGraph();
   multigraph->SetName("");
   multigraph->SetTitle("0.05<-t<0.21 [GeV^{2}/c^{2}]");
   
   Double_t Graph_fx1154[9] = {
   21.59954,
   59.03178,
   96.06391,
   141.7703,
   179.2242,
   222.8541,
   259.5793,
   303.38,
   337.8675};
   Double_t Graph_fy1154[9] = {
   0.1020231,
   0.03114899,
   0.2309077,
   0.1341245,
   0.01684177,
   -0.1267998,
   -0.2824572,
   -0.2260703,
   -0.0186068};
   Double_t Graph_fex1154[9] = {
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0};
   Double_t Graph_fey1154[9] = {
   0.04242532,
   0.05165487,
   0.05483741,
   0.07646672,
   0.1006626,
   0.09089962,
   0.05905575,
   0.04462244,
   0.05521722};
   TGraphErrors *gre = new TGraphErrors(9,Graph_fx1154,Graph_fy1154,Graph_fex1154,Graph_fey1154);
   gre->SetName("Graph");
   gre->SetTitle("Graph");
   gre->SetFillColor(1);

   Int_t ci;      // for color index setting
   TColor *color; // for color definition with alpha
   ci = TColor::GetColor("#00ff00");
   gre->SetMarkerColor(ci);
   gre->SetMarkerStyle(21);
   
   TH1F *Graph_Graph1154 = new TH1F("Graph_Graph1154","Graph",100,0,369.4943);
   Graph_Graph1154->SetMinimum(-0.4042387);
   Graph_Graph1154->SetMaximum(0.3484709);
   Graph_Graph1154->SetDirectory(0);
   Graph_Graph1154->SetStats(0);

   ci = TColor::GetColor("#000099");
   Graph_Graph1154->SetLineColor(ci);
   Graph_Graph1154->GetXaxis()->SetLabelFont(42);
   Graph_Graph1154->GetXaxis()->SetLabelSize(0.035);
   Graph_Graph1154->GetXaxis()->SetTitleSize(0.035);
   Graph_Graph1154->GetXaxis()->SetTitleFont(42);
   Graph_Graph1154->GetYaxis()->SetLabelFont(42);
   Graph_Graph1154->GetYaxis()->SetLabelSize(0.035);
   Graph_Graph1154->GetYaxis()->SetTitleSize(0.035);
   Graph_Graph1154->GetYaxis()->SetTitleFont(42);
   Graph_Graph1154->GetZaxis()->SetLabelFont(42);
   Graph_Graph1154->GetZaxis()->SetLabelSize(0.035);
   Graph_Graph1154->GetZaxis()->SetTitleSize(0.035);
   Graph_Graph1154->GetZaxis()->SetTitleFont(42);
   gre->SetHistogram(Graph_Graph1154);
   
   
   TF1 *myfit1155 = new TF1("myfit","[0]*sin(x*3.1416/180.0)/(1 + [1]*cos(x*3.1416/180.0))",0,369.4943);
   myfit1155->SetFillColor(19);
   myfit1155->SetFillStyle(0);
   myfit1155->SetLineColor(2);
   myfit1155->SetLineWidth(2);
   myfit1155->SetChisquare(12.03234);
   myfit1155->SetNDF(7);
   myfit1155->GetXaxis()->SetLabelFont(42);
   myfit1155->GetXaxis()->SetLabelSize(0.035);
   myfit1155->GetXaxis()->SetTitleSize(0.035);
   myfit1155->GetXaxis()->SetTitleFont(42);
   myfit1155->GetYaxis()->SetLabelFont(42);
   myfit1155->GetYaxis()->SetLabelSize(0.035);
   myfit1155->GetYaxis()->SetTitleSize(0.035);
   myfit1155->GetYaxis()->SetTitleFont(42);
   myfit1155->SetParameter(0,0.2160608);
   myfit1155->SetParError(0,0.02670852);
   myfit1155->SetParLimits(0,0,0);
   myfit1155->SetParameter(1,0.2378828);
   myfit1155->SetParError(1,0.2292802);
   myfit1155->SetParLimits(1,0,0);
   gre->GetListOfFunctions()->Add(myfit1155);
   
   TPaveStats *ptstats = new TPaveStats(0.27,0.74,0.9,0.9,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   TText *AText = ptstats->AddText("#chi^{2} / ndf = 12.03 / 7");
   AText = ptstats->AddText("p0       = 0.2161 #pm 0.02671 ");
   AText = ptstats->AddText("p1       = 0.2379 #pm 0.2293 ");
   ptstats->SetOptStat(0);
   ptstats->SetOptFit(111);
   ptstats->Draw();
   gre->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(gre->GetListOfFunctions());
   multigraph->Add(gre,"");
   multigraph->Draw("AP");
   multigraph->GetXaxis()->SetTitle("#phi [deg.]");
   multigraph->GetXaxis()->SetLabelFont(42);
   multigraph->GetXaxis()->SetLabelSize(0.035);
   multigraph->GetXaxis()->SetTitleSize(0.035);
   multigraph->GetXaxis()->SetTitleFont(42);
   multigraph->GetYaxis()->SetTitle("A_{LU}");
   multigraph->GetYaxis()->SetLabelFont(42);
   multigraph->GetYaxis()->SetLabelSize(0.035);
   multigraph->GetYaxis()->SetTitleSize(0.035);
   multigraph->GetYaxis()->SetTitleFont(42);
     gPad->Modified();  
   multigraph->GetYaxis()->SetRangeUser(-0.35, 0.35);  




   TPaveText *pt = new TPaveText(0.2292451,0.9268996,0.7707549,0.995,"blNDC");
   pt->SetName("title");
   pt->SetBorderSize(0);
   pt->SetFillColor(0);
   pt->SetFillStyle(0);
   pt->SetTextFont(42);
   AText = pt->AddText("0.05<-t<0.21 [GeV^{2}/c^{2}]");
   pt->Draw();
   c17_1->Modified();
   c17->cd();
  
// ------------>Primitives in pad: c17_2
   TPad *c17_2 = new TPad("c17_2", "Incoherent channe_2",0.262936,0,0.5008721,0.9);
   c17_2->Draw();
   c17_2->cd();
   c17_2->Range(5.895345,-0.4888889,352.6198,0.4);
   c17_2->SetFillColor(0);
   c17_2->SetBorderMode(0);
   c17_2->SetBorderSize(2);
   c17_2->SetGridx();
   c17_2->SetGridy();
   c17_2->SetLeftMargin(0);
   c17_2->SetRightMargin(0);
   c17_2->SetTopMargin(0);
   c17_2->SetFrameBorderMode(0);
   c17_2->SetFrameBorderMode(0);
   
   multigraph = new TMultiGraph();
   multigraph->SetName("");
   multigraph->SetTitle("0.21<-t<0.36 [GeV^{2}/c^{2}]");
   
   Double_t Graph_fx1157[9] = {
   21.65555,
   61.41754,
   96.1904,
   139.625,
   182.9173,
   222.6445,
   259.1526,
   302.149,
   336.8596};
   Double_t Graph_fy1157[9] = {
   0.04372413,
   0.1019325,
   0.1737435,
   0.1708402,
   0.2316287,
   -0.1435087,
   -0.1227365,
   -0.1969296,
   -0.07714485};
   Double_t Graph_fex1157[9] = {
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0};
   Double_t Graph_fey1157[9] = {
   0.0517677,
   0.05885852,
   0.0646232,
   0.09789667,
   0.1185262,
   0.09557657,
   0.06953456,
   0.04921871,
   0.06282415};
   gre = new TGraphErrors(9,Graph_fx1157,Graph_fy1157,Graph_fex1157,Graph_fey1157);
   gre->SetName("Graph");
   gre->SetTitle("Graph");
   gre->SetFillColor(1);

   ci = TColor::GetColor("#00ff00");
   gre->SetMarkerColor(ci);
   gre->SetMarkerStyle(21);
   
   TH1F *Graph_Graph1157 = new TH1F("Graph_Graph1157","Graph",100,0,368.38);
   Graph_Graph1157->SetMinimum(-0.3057786);
   Graph_Graph1157->SetMaximum(0.4097851);
   Graph_Graph1157->SetDirectory(0);
   Graph_Graph1157->SetStats(0);

   ci = TColor::GetColor("#000099");
   Graph_Graph1157->SetLineColor(ci);
   Graph_Graph1157->GetXaxis()->SetLabelFont(42);
   Graph_Graph1157->GetXaxis()->SetLabelSize(0.035);
   Graph_Graph1157->GetXaxis()->SetTitleSize(0.035);
   Graph_Graph1157->GetXaxis()->SetTitleFont(42);
   Graph_Graph1157->GetYaxis()->SetLabelFont(42);
   Graph_Graph1157->GetYaxis()->SetLabelSize(0.035);
   Graph_Graph1157->GetYaxis()->SetTitleSize(0.035);
   Graph_Graph1157->GetYaxis()->SetTitleFont(42);
   Graph_Graph1157->GetZaxis()->SetLabelFont(42);
   Graph_Graph1157->GetZaxis()->SetLabelSize(0.035);
   Graph_Graph1157->GetZaxis()->SetTitleSize(0.035);
   Graph_Graph1157->GetZaxis()->SetTitleFont(42);
   gre->SetHistogram(Graph_Graph1157);
   
   
   TF1 *myfit1158 = new TF1("myfit","[0]*sin(x*3.1416/180.0)/(1 + [1]*cos(x*3.1416/180.0))",0,368.38);
   myfit1158->SetFillColor(19);
   myfit1158->SetFillStyle(0);
   myfit1158->SetLineColor(2);
   myfit1158->SetLineWidth(2);
   myfit1158->SetChisquare(6.955655);
   myfit1158->SetNDF(7);
   myfit1158->GetXaxis()->SetLabelFont(42);
   myfit1158->GetXaxis()->SetLabelSize(0.035);
   myfit1158->GetXaxis()->SetTitleSize(0.035);
   myfit1158->GetXaxis()->SetTitleFont(42);
   myfit1158->GetYaxis()->SetLabelFont(42);
   myfit1158->GetYaxis()->SetLabelSize(0.035);
   myfit1158->GetYaxis()->SetTitleSize(0.035);
   myfit1158->GetYaxis()->SetTitleFont(42);
   myfit1158->SetParameter(0,0.1721707);
   myfit1158->SetParError(0,0.0324291);
   myfit1158->SetParLimits(0,0,0);
   myfit1158->SetParameter(1,0.001708824);
   myfit1158->SetParError(1,0.4101565);
   myfit1158->SetParLimits(1,0,0);
   gre->GetListOfFunctions()->Add(myfit1158);
   
   ptstats = new TPaveStats(0.27,0.74,0.9,0.9,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   AText = ptstats->AddText("#chi^{2} / ndf = 6.956 / 7");
   AText = ptstats->AddText("p0       = 0.1722 #pm 0.03243 ");
   AText = ptstats->AddText("p1       = 0.001709 #pm 0.4102 ");
   ptstats->SetOptStat(0);
   ptstats->SetOptFit(111);
   ptstats->Draw();
   gre->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(gre->GetListOfFunctions());
   multigraph->Add(gre,"");
   multigraph->Draw("AP");
   multigraph->GetXaxis()->SetTitle("#phi [deg.]");
   multigraph->GetXaxis()->SetLabelFont(42);
   multigraph->GetXaxis()->SetLabelSize(0.035);
   multigraph->GetXaxis()->SetTitleSize(0.035);
   multigraph->GetXaxis()->SetTitleFont(42);
   multigraph->GetYaxis()->SetLabelFont(42);
   multigraph->GetYaxis()->SetLabelSize(0.035);
   multigraph->GetYaxis()->SetTitleSize(0.035);
   multigraph->GetYaxis()->SetTitleFont(42);
     gPad->Modified();  
   multigraph->GetYaxis()->SetRangeUser(-0.35, 0.35);  



   pt = new TPaveText(0.2194177,0.9304839,0.7805823,0.995,"blNDC");
   pt->SetName("title");
   pt->SetBorderSize(0);
   pt->SetFillColor(0);
   pt->SetFillStyle(0);
   pt->SetTextFont(42);
   AText = pt->AddText("0.21<-t<0.36 [GeV^{2}/c^{2}]");
   pt->Draw();
   c17_2->Modified();
   c17->cd();
  
// ------------>Primitives in pad: c17_3
   TPad *c17_3 = new TPad("c17_3", "Incoherent channe_3",0.5008721,0,0.7388081,0.9);
   c17_3->Draw();
   c17_3->cd();
   c17_3->Range(7.121854,-0.4888889,349.9594,0.4);
   c17_3->SetFillColor(0);
   c17_3->SetBorderMode(0);
   c17_3->SetBorderSize(2);
   c17_3->SetGridx();
   c17_3->SetGridy();
   c17_3->SetLeftMargin(0);
   c17_3->SetRightMargin(0);
   c17_3->SetTopMargin(0);
   c17_3->SetFrameBorderMode(0);
   c17_3->SetFrameBorderMode(0);
   
   multigraph = new TMultiGraph();
   multigraph->SetName("");
   multigraph->SetTitle("0.36<-t<0.67 [GeV^{2}/c^{2}]");
   
   Double_t Graph_fx1160[9] = {
   22.70538,
   60.97743,
   94.23011,
   138.1892,
   183.0975,
   222.79,
   259.8951,
   302.6808,
   334.3759};
   Double_t Graph_fy1160[9] = {
   0.1761498,
   0.1945204,
   0.1034809,
   -0.09380414,
   0.2967375,
   -0.1094475,
   -0.1583282,
   -0.1819771,
   -0.09543453};
   Double_t Graph_fex1160[9] = {
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0};
   Double_t Graph_fey1160[9] = {
   0.06358895,
   0.0584754,
   0.07622601,
   0.115077,
   0.1268505,
   0.1278475,
   0.07389284,
   0.04701977,
   0.07415904};
   gre = new TGraphErrors(9,Graph_fx1160,Graph_fy1160,Graph_fex1160,Graph_fey1160);
   gre->SetName("Graph");
   gre->SetTitle("Graph");
   gre->SetFillColor(1);

   ci = TColor::GetColor("#00ff00");
   gre->SetMarkerColor(ci);
   gre->SetMarkerStyle(21);
   
   TH1F *Graph_Graph1160 = new TH1F("Graph_Graph1160","Graph",100,0,365.5429);
   Graph_Graph1160->SetMinimum(-0.3033832);
   Graph_Graph1160->SetMaximum(0.4896763);
   Graph_Graph1160->SetDirectory(0);
   Graph_Graph1160->SetStats(0);

   ci = TColor::GetColor("#000099");
   Graph_Graph1160->SetLineColor(ci);
   Graph_Graph1160->GetXaxis()->SetLabelFont(42);
   Graph_Graph1160->GetXaxis()->SetLabelSize(0.035);
   Graph_Graph1160->GetXaxis()->SetTitleSize(0.035);
   Graph_Graph1160->GetXaxis()->SetTitleFont(42);
   Graph_Graph1160->GetYaxis()->SetLabelFont(42);
   Graph_Graph1160->GetYaxis()->SetLabelSize(0.035);
   Graph_Graph1160->GetYaxis()->SetTitleSize(0.035);
   Graph_Graph1160->GetYaxis()->SetTitleFont(42);
   Graph_Graph1160->GetZaxis()->SetLabelFont(42);
   Graph_Graph1160->GetZaxis()->SetLabelSize(0.035);
   Graph_Graph1160->GetZaxis()->SetTitleSize(0.035);
   Graph_Graph1160->GetZaxis()->SetTitleFont(42);
   gre->SetHistogram(Graph_Graph1160);
   
   
   TF1 *myfit1161 = new TF1("myfit","[0]*sin(x*3.1416/180.0)/(1 + [1]*cos(x*3.1416/180.0))",0,365.5429);
   myfit1161->SetFillColor(19);
   myfit1161->SetFillStyle(0);
   myfit1161->SetLineColor(2);
   myfit1161->SetLineWidth(2);
   myfit1161->SetChisquare(8.926216);
   myfit1161->SetNDF(7);
   myfit1161->GetXaxis()->SetLabelFont(42);
   myfit1161->GetXaxis()->SetLabelSize(0.035);
   myfit1161->GetXaxis()->SetTitleSize(0.035);
   myfit1161->GetXaxis()->SetTitleFont(42);
   myfit1161->GetYaxis()->SetLabelFont(42);
   myfit1161->GetYaxis()->SetLabelSize(0.035);
   myfit1161->GetYaxis()->SetTitleSize(0.035);
   myfit1161->GetYaxis()->SetTitleFont(42);
   myfit1161->SetParameter(0,0.1371093);
   myfit1161->SetParError(0,0.03383483);
   myfit1161->SetParLimits(0,0,0);
   myfit1161->SetParameter(1,-0.6800102);
   myfit1161->SetParError(1,0.1832383);
   myfit1161->SetParLimits(1,0,0);
   gre->GetListOfFunctions()->Add(myfit1161);
   
   ptstats = new TPaveStats(0.27,0.74,0.9,0.9,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   AText = ptstats->AddText("#chi^{2} / ndf = 8.926 / 7");
   AText = ptstats->AddText("p0       = 0.1371 #pm 0.03383 ");
   AText = ptstats->AddText("p1       = -0.68 #pm 0.1832 ");
   ptstats->SetOptStat(0);
   ptstats->SetOptFit(111);
   ptstats->Draw();
   gre->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(gre->GetListOfFunctions());
   multigraph->Add(gre,"");
   multigraph->Draw("AP");
   multigraph->GetXaxis()->SetTitle("#phi [deg.]");
   multigraph->GetXaxis()->SetLabelFont(42);
   multigraph->GetXaxis()->SetLabelSize(0.035);
   multigraph->GetXaxis()->SetTitleSize(0.035);
   multigraph->GetXaxis()->SetTitleFont(42);
   multigraph->GetYaxis()->SetLabelFont(42);
   multigraph->GetYaxis()->SetLabelSize(0.035);
   multigraph->GetYaxis()->SetTitleSize(0.035);
   multigraph->GetYaxis()->SetTitleFont(42);
     gPad->Modified();  
   multigraph->GetYaxis()->SetRangeUser(-0.35, 0.35);  




   pt = new TPaveText(0.2194177,0.9304839,0.7805823,0.995,"blNDC");
   pt->SetName("title");
   pt->SetBorderSize(0);
   pt->SetFillColor(0);
   pt->SetFillStyle(0);
   pt->SetTextFont(42);
   AText = pt->AddText("0.36<-t<0.67 [GeV^{2}/c^{2}]");
   pt->Draw();
   c17_3->Modified();
   c17->cd();
  
// ------------>Primitives in pad: c17_4
   TPad *c17_4 = new TPad("c17_4", "Incoherent channe_4",0.7388081,0,0.9767442,0.9);
   c17_4->Draw();
   c17_4->cd();
   c17_4->Range(7.951117,-0.4888889,350.3641,0.4);
   c17_4->SetFillColor(0);
   c17_4->SetBorderMode(0);
   c17_4->SetBorderSize(2);
   c17_4->SetGridx();
   c17_4->SetGridy();
   c17_4->SetLeftMargin(0);
   c17_4->SetRightMargin(0);
   c17_4->SetTopMargin(0);
   c17_4->SetFrameBorderMode(0);
   c17_4->SetFrameBorderMode(0);
   
   multigraph = new TMultiGraph();
   multigraph->SetName("");
   multigraph->SetTitle("0.67<-t<0.90 [GeV^{2}/c^{2}]");
   
   Double_t Graph_fx1163[9] = {
   23.51534,
   59.3759,
   90.55341,
   131.0631,
   176.9476,
   229.0094,
   260.8643,
   304.7922,
   334.7999};
   Double_t Graph_fy1163[9] = {
   0.0123906,
   0.195403,
   0.18963,
   -0.1677207,
   -0.8232306,
   -0.7760588,
   -0.2579708,
   -0.2579435,
   -0.08614626};
   Double_t Graph_fex1163[9] = {
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0};
   Double_t Graph_fey1163[9] = {
   0.09527872,
   0.1168373,
   0.1651642,
   0.3137499,
   0.3909388,
   0.4596559,
   0.1665094,
   0.09339681,
   0.09961735};
   gre = new TGraphErrors(9,Graph_fx1163,Graph_fy1163,Graph_fex1163,Graph_fey1163);
   gre->SetName("Graph");
   gre->SetTitle("Graph");
   gre->SetFillColor(1);

   ci = TColor::GetColor("#00ff00");
   gre->SetMarkerColor(ci);
   gre->SetMarkerStyle(21);
   
   TH1F *Graph_Graph1163 = new TH1F("Graph_Graph1163","Graph",100,0,365.9283);
   Graph_Graph1163->SetMinimum(-1.394766);
   Graph_Graph1163->SetMaximum(0.5138451);
   Graph_Graph1163->SetDirectory(0);
   Graph_Graph1163->SetStats(0);

   ci = TColor::GetColor("#000099");
   Graph_Graph1163->SetLineColor(ci);
   Graph_Graph1163->GetXaxis()->SetLabelFont(42);
   Graph_Graph1163->GetXaxis()->SetLabelSize(0.035);
   Graph_Graph1163->GetXaxis()->SetTitleSize(0.035);
   Graph_Graph1163->GetXaxis()->SetTitleFont(42);
   Graph_Graph1163->GetYaxis()->SetLabelFont(42);
   Graph_Graph1163->GetYaxis()->SetLabelSize(0.035);
   Graph_Graph1163->GetYaxis()->SetTitleSize(0.035);
   Graph_Graph1163->GetYaxis()->SetTitleFont(42);
   Graph_Graph1163->GetZaxis()->SetLabelFont(42);
   Graph_Graph1163->GetZaxis()->SetLabelSize(0.035);
   Graph_Graph1163->GetZaxis()->SetTitleSize(0.035);
   Graph_Graph1163->GetZaxis()->SetTitleFont(42);
   gre->SetHistogram(Graph_Graph1163);
   
   
   TF1 *myfit1164 = new TF1("myfit","[0]*sin(x*3.1416/180.0)/(1 + [1]*cos(x*3.1416/180.0))",0,365.9283);
   myfit1164->SetFillColor(19);
   myfit1164->SetFillStyle(0);
   myfit1164->SetLineColor(2);
   myfit1164->SetLineWidth(2);
   myfit1164->SetChisquare(8.810638);
   myfit1164->SetNDF(7);
   myfit1164->GetXaxis()->SetLabelFont(42);
   myfit1164->GetXaxis()->SetLabelSize(0.035);
   myfit1164->GetXaxis()->SetTitleSize(0.035);
   myfit1164->GetXaxis()->SetTitleFont(42);
   myfit1164->GetYaxis()->SetLabelFont(42);
   myfit1164->GetYaxis()->SetLabelSize(0.035);
   myfit1164->GetYaxis()->SetTitleSize(0.035);
   myfit1164->GetYaxis()->SetTitleFont(42);
   myfit1164->SetParameter(0,0.2352442);
   myfit1164->SetParError(0,0.0807391);
   myfit1164->SetParLimits(0,0,0);
   myfit1164->SetParameter(1,0.003684647);
   myfit1164->SetParError(1,0.5673774);
   myfit1164->SetParLimits(1,0,0);
   gre->GetListOfFunctions()->Add(myfit1164);
   
   ptstats = new TPaveStats(0.27,0.74,0.9,0.9,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   AText = ptstats->AddText("#chi^{2} / ndf = 8.811 / 7");
   AText = ptstats->AddText("p0       = 0.2352 #pm 0.08074 ");
   AText = ptstats->AddText("p1       = 0.003685 #pm 0.5674 ");
   ptstats->SetOptStat(0);
   ptstats->SetOptFit(111);
   ptstats->Draw();
   gre->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(gre->GetListOfFunctions());
   multigraph->Add(gre,"");
   multigraph->Draw("AP");
   multigraph->GetXaxis()->SetTitle("#phi [deg.]");
   multigraph->GetXaxis()->SetLabelFont(42);
   multigraph->GetXaxis()->SetLabelSize(0.035);
   multigraph->GetXaxis()->SetTitleSize(0.035);
   multigraph->GetXaxis()->SetTitleFont(42);
   multigraph->GetYaxis()->SetLabelFont(42);
   multigraph->GetYaxis()->SetLabelSize(0.035);
   multigraph->GetYaxis()->SetTitleSize(0.035);
   multigraph->GetYaxis()->SetTitleFont(42);
     gPad->Modified();  
   multigraph->GetYaxis()->SetRangeUser(-0.35, 0.35);  




   pt = new TPaveText(0.2194177,0.9304839,0.7805823,0.995,"blNDC");
   pt->SetName("title");
   pt->SetBorderSize(0);
   pt->SetFillColor(0);
   pt->SetFillStyle(0);
   pt->SetTextFont(42);
   AText = pt->AddText("0.67<-t<0.90 [GeV^{2}/c^{2}]");
   pt->Draw();
   c17_4->Modified();
   c17->cd();
   c17->Modified();
   c17->cd();
   c17->SetSelected(c17);
}
void BSA_InCoherent_xB()
{
//=========Macro generated from canvas: c16/Incoherent channe
//=========  (Tue Aug 21 12:00:25 2018) by ROOT version6.09/01
   TCanvas *c16 = new TCanvas("c16", "Incoherent channe",0,0,1200,400);
   gStyle->SetOptFit(1);
   c16->Range(0,0,1,1);
   c16->SetFillColor(0);
   c16->SetBorderMode(0);
   c16->SetBorderSize(2);
   c16->SetLeftMargin(0.025);
   c16->SetRightMargin(0.02325581);
   c16->SetFrameBorderMode(0);
  
// ------------>Primitives in pad: c16_1
   TPad *c16_1 = new TPad("c16_1", "Incoherent channe_1",0,0,0.262936,0.9);
   c16_1->Draw();
   c16_1->cd();
   c16_1->Range(-29.34641,-0.4888889,350.2581,0.4);
   c16_1->SetFillColor(0);
   c16_1->SetBorderMode(0);
   c16_1->SetBorderSize(2);
   c16_1->SetGridx();
   c16_1->SetGridy();
   c16_1->SetRightMargin(0);
   c16_1->SetTopMargin(0);
   c16_1->SetFrameBorderMode(0);
   c16_1->SetFrameBorderMode(0);
   
   TMultiGraph *multigraph = new TMultiGraph();
   multigraph->SetName("");
   multigraph->SetTitle("0.12<x_{B}<0.21 ");
   
   Double_t Graph_fx1134[9] = {
   24.14331,
   62.70082,
   96.14623,
   141.7289,
   180.8857,
   220.5862,
   258.7856,
   303.3336,
   334.7288};
   Double_t Graph_fy1134[9] = {
   0.1330996,
   -0.03883743,
   0.1388413,
   0.2120595,
   0.03749243,
   -0.09129921,
   -0.1273289,
   -0.1643618,
   0.03103783};
   Double_t Graph_fex1134[9] = {
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0};
   Double_t Graph_fey1134[9] = {
   0.07077824,
   0.06445297,
   0.05939535,
   0.06833722,
   0.08559024,
   0.08401363,
   0.06136237,
   0.05845869,
   0.08718727};
   TGraphErrors *gre = new TGraphErrors(9,Graph_fx1134,Graph_fy1134,Graph_fex1134,Graph_fey1134);
   gre->SetName("Graph");
   gre->SetTitle("Graph");
   gre->SetFillColor(1);

   Int_t ci;      // for color index setting
   TColor *color; // for color definition with alpha
   ci = TColor::GetColor("#00ff00");
   gre->SetMarkerColor(ci);
   gre->SetMarkerStyle(21);
   
   TH1F *Graph_Graph1134 = new TH1F("Graph_Graph1134","Graph",100,0,365.7873);
   Graph_Graph1134->SetMinimum(-0.2731422);
   Graph_Graph1134->SetMaximum(0.3307184);
   Graph_Graph1134->SetDirectory(0);
   Graph_Graph1134->SetStats(0);

   ci = TColor::GetColor("#000099");
   Graph_Graph1134->SetLineColor(ci);
   Graph_Graph1134->GetXaxis()->SetLabelFont(42);
   Graph_Graph1134->GetXaxis()->SetLabelSize(0.035);
   Graph_Graph1134->GetXaxis()->SetTitleSize(0.035);
   Graph_Graph1134->GetXaxis()->SetTitleFont(42);
   Graph_Graph1134->GetYaxis()->SetLabelFont(42);
   Graph_Graph1134->GetYaxis()->SetLabelSize(0.035);
   Graph_Graph1134->GetYaxis()->SetTitleSize(0.035);
   Graph_Graph1134->GetYaxis()->SetTitleFont(42);
   Graph_Graph1134->GetZaxis()->SetLabelFont(42);
   Graph_Graph1134->GetZaxis()->SetLabelSize(0.035);
   Graph_Graph1134->GetZaxis()->SetTitleSize(0.035);
   Graph_Graph1134->GetZaxis()->SetTitleFont(42);
   gre->SetHistogram(Graph_Graph1134);
   
   
   TF1 *myfit1135 = new TF1("myfit","[0]*sin(x*3.1416/180.0)/(1 + [1]*cos(x*3.1416/180.0))",0,365.7873);
   myfit1135->SetFillColor(19);
   myfit1135->SetFillStyle(0);
   myfit1135->SetLineColor(2);
   myfit1135->SetLineWidth(2);
   myfit1135->SetChisquare(10.13595);
   myfit1135->SetNDF(7);
   myfit1135->GetXaxis()->SetLabelFont(42);
   myfit1135->GetXaxis()->SetLabelSize(0.035);
   myfit1135->GetXaxis()->SetTitleSize(0.035);
   myfit1135->GetXaxis()->SetTitleFont(42);
   myfit1135->GetYaxis()->SetLabelFont(42);
   myfit1135->GetYaxis()->SetLabelSize(0.035);
   myfit1135->GetYaxis()->SetTitleSize(0.035);
   myfit1135->GetYaxis()->SetTitleFont(42);
   myfit1135->SetParameter(0,0.1205343);
   myfit1135->SetParError(0,0.03387604);
   myfit1135->SetParLimits(0,0,0);
   myfit1135->SetParameter(1,0.6858633);
   myfit1135->SetParError(1,0.2646153);
   myfit1135->SetParLimits(1,0,0);
   gre->GetListOfFunctions()->Add(myfit1135);
   
   TPaveStats *ptstats = new TPaveStats(0.27,0.74,0.9,0.9,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   TText *AText = ptstats->AddText("#chi^{2} / ndf = 10.14 / 7");
   AText = ptstats->AddText("p0       = 0.1205 #pm 0.03388 ");
   AText = ptstats->AddText("p1       = 0.6859 #pm 0.2646 ");
   ptstats->SetOptStat(0);
   ptstats->SetOptFit(111);
   ptstats->Draw();
   gre->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(gre->GetListOfFunctions());
   multigraph->Add(gre,"");
   multigraph->Draw("AP");
   multigraph->GetXaxis()->SetTitle("#phi [deg.]");
   multigraph->GetXaxis()->SetLabelFont(42);
   multigraph->GetXaxis()->SetLabelSize(0.035);
   multigraph->GetXaxis()->SetTitleSize(0.035);
   multigraph->GetXaxis()->SetTitleFont(42);
   multigraph->GetYaxis()->SetTitle("A_{LU}");
   multigraph->GetYaxis()->SetLabelFont(42);
   multigraph->GetYaxis()->SetLabelSize(0.035);
   multigraph->GetYaxis()->SetTitleSize(0.035);
   multigraph->GetYaxis()->SetTitleFont(42);
     gPad->Modified();  
   multigraph->GetYaxis()->SetRangeUser(-0.35, 0.35);  




   c16_1->Modified();
   c16->cd();
  
// ------------>Primitives in pad: c16_2
   TPad *c16_2 = new TPad("c16_2", "Incoherent channe_2",0.262936,0,0.5008721,0.9);
   c16_2->Draw();
   c16_2->cd();
   c16_2->Range(5.85529,-0.4888889,352.0975,0.4);
   c16_2->SetFillColor(0);
   c16_2->SetBorderMode(0);
   c16_2->SetBorderSize(2);
   c16_2->SetGridx();
   c16_2->SetGridy();
   c16_2->SetLeftMargin(0);
   c16_2->SetRightMargin(0);
   c16_2->SetTopMargin(0);
   c16_2->SetFrameBorderMode(0);
   c16_2->SetFrameBorderMode(0);
   
   multigraph = new TMultiGraph();
   multigraph->SetName("");
   multigraph->SetTitle("0.21<x_{B}<0.31 ");
   
   Double_t Graph_fx1137[9] = {
   21.59357,
   60.08662,
   95.00395,
   140.4897,
   181.0443,
   224.9978,
   260.1264,
   302.891,
   336.3592};
   Double_t Graph_fy1137[9] = {
   0.0984356,
   0.1891659,
   0.2419886,
   0.08897874,
   0.2077051,
   -0.3071227,
   -0.1933684,
   -0.2875592,
   -0.08265727};
   Double_t Graph_fex1137[9] = {
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0};
   Double_t Graph_fey1137[9] = {
   0.04446748,
   0.058618,
   0.06898028,
   0.1082398,
   0.135301,
   0.1152745,
   0.0716065,
   0.04680018,
   0.05547391};
   gre = new TGraphErrors(9,Graph_fx1137,Graph_fy1137,Graph_fex1137,Graph_fey1137);
   gre->SetName("Graph");
   gre->SetTitle("Graph");
   gre->SetFillColor(1);

   ci = TColor::GetColor("#00ff00");
   gre->SetMarkerColor(ci);
   gre->SetMarkerStyle(21);
   
   TH1F *Graph_Graph1137 = new TH1F("Graph_Graph1137","Graph",100,0,367.8358);
   Graph_Graph1137->SetMinimum(-0.4989376);
   Graph_Graph1137->SetMaximum(0.4195464);
   Graph_Graph1137->SetDirectory(0);
   Graph_Graph1137->SetStats(0);

   ci = TColor::GetColor("#000099");
   Graph_Graph1137->SetLineColor(ci);
   Graph_Graph1137->GetXaxis()->SetLabelFont(42);
   Graph_Graph1137->GetXaxis()->SetLabelSize(0.035);
   Graph_Graph1137->GetXaxis()->SetTitleSize(0.035);
   Graph_Graph1137->GetXaxis()->SetTitleFont(42);
   Graph_Graph1137->GetYaxis()->SetLabelFont(42);
   Graph_Graph1137->GetYaxis()->SetLabelSize(0.035);
   Graph_Graph1137->GetYaxis()->SetTitleSize(0.035);
   Graph_Graph1137->GetYaxis()->SetTitleFont(42);
   Graph_Graph1137->GetZaxis()->SetLabelFont(42);
   Graph_Graph1137->GetZaxis()->SetLabelSize(0.035);
   Graph_Graph1137->GetZaxis()->SetTitleSize(0.035);
   Graph_Graph1137->GetZaxis()->SetTitleFont(42);
   gre->SetHistogram(Graph_Graph1137);
   
   
   TF1 *myfit1138 = new TF1("myfit","[0]*sin(x*3.1416/180.0)/(1 + [1]*cos(x*3.1416/180.0))",0,367.8358);
   myfit1138->SetFillColor(19);
   myfit1138->SetFillStyle(0);
   myfit1138->SetLineColor(2);
   myfit1138->SetLineWidth(2);
   myfit1138->SetChisquare(7.336971);
   myfit1138->SetNDF(7);
   myfit1138->GetXaxis()->SetLabelFont(42);
   myfit1138->GetXaxis()->SetLabelSize(0.035);
   myfit1138->GetXaxis()->SetTitleSize(0.035);
   myfit1138->GetXaxis()->SetTitleFont(42);
   myfit1138->GetYaxis()->SetLabelFont(42);
   myfit1138->GetYaxis()->SetLabelSize(0.035);
   myfit1138->GetYaxis()->SetTitleSize(0.035);
   myfit1138->GetYaxis()->SetTitleFont(42);
   myfit1138->SetParameter(0,0.2508538);
   myfit1138->SetParError(0,0.03583101);
   myfit1138->SetParLimits(0,0,0);
   myfit1138->SetParameter(1,-0.1422748);
   myfit1138->SetParError(1,0.2426713);
   myfit1138->SetParLimits(1,0,0);
   gre->GetListOfFunctions()->Add(myfit1138);
   
   ptstats = new TPaveStats(0.27,0.74,0.9,0.9,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   AText = ptstats->AddText("#chi^{2} / ndf = 7.337 / 7");
   AText = ptstats->AddText("p0       = 0.2509 #pm 0.03583 ");
   AText = ptstats->AddText("p1       = -0.1423 #pm 0.2427 ");
   ptstats->SetOptStat(0);
   ptstats->SetOptFit(111);
   ptstats->Draw();
   gre->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(gre->GetListOfFunctions());
   multigraph->Add(gre,"");
   multigraph->Draw("AP");
   multigraph->GetXaxis()->SetTitle("#phi [deg.]");
   multigraph->GetXaxis()->SetLabelFont(42);
   multigraph->GetXaxis()->SetLabelSize(0.035);
   multigraph->GetXaxis()->SetTitleSize(0.035);
   multigraph->GetXaxis()->SetTitleFont(42);
   multigraph->GetYaxis()->SetLabelFont(42);
   multigraph->GetYaxis()->SetLabelSize(0.035);
   multigraph->GetYaxis()->SetTitleSize(0.035);
   multigraph->GetYaxis()->SetTitleFont(42);
     gPad->Modified();  
   multigraph->GetYaxis()->SetRangeUser(-0.35, 0.35);  



   c16_2->Modified();
   c16->cd();
  
// ------------>Primitives in pad: c16_3
   TPad *c16_3 = new TPad("c16_3", "Incoherent channe_3",0.5008721,0,0.7388081,0.9);
   c16_3->Draw();
   c16_3->cd();
   c16_3->Range(4.159976,-0.4888889,357.6921,0.4);
   c16_3->SetFillColor(0);
   c16_3->SetBorderMode(0);
   c16_3->SetBorderSize(2);
   c16_3->SetGridx();
   c16_3->SetGridy();
   c16_3->SetLeftMargin(0);
   c16_3->SetRightMargin(0);
   c16_3->SetTopMargin(0);
   c16_3->SetFrameBorderMode(0);
   c16_3->SetFrameBorderMode(0);
   
   multigraph = new TMultiGraph();
   multigraph->SetName("");
   multigraph->SetTitle("0.31<x_{B}<0.39 ");
   
   Double_t Graph_fx1140[9] = {
   20.22962,
   57.37981,
   95.86069,
   135.3486,
   182.9227,
   229.5531,
   263.4275,
   301.2495,
   341.6225};
   Double_t Graph_fy1140[9] = {
   0.09662004,
   0.06965272,
   0.269744,
   -0.170935,
   -0.1509905,
   0.6309487,
   0.06270791,
   -0.2582676,
   -0.152689};
   Double_t Graph_fex1140[9] = {
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0};
   Double_t Graph_fey1140[9] = {
   0.05297617,
   0.09107484,
   0.121636,
   0.2287053,
   0.3066164,
   0.3879093,
   0.1400804,
   0.07623737,
   0.06739512};
   gre = new TGraphErrors(9,Graph_fx1140,Graph_fy1140,Graph_fex1140,Graph_fey1140);
   gre->SetName("Graph");
   gre->SetTitle("Graph");
   gre->SetFillColor(1);

   ci = TColor::GetColor("#00ff00");
   gre->SetMarkerColor(ci);
   gre->SetMarkerStyle(21);
   
   TH1F *Graph_Graph1140 = new TH1F("Graph_Graph1140","Graph",100,0,373.7618);
   Graph_Graph1140->SetMinimum(-0.6052533);
   Graph_Graph1140->SetMaximum(1.166504);
   Graph_Graph1140->SetDirectory(0);
   Graph_Graph1140->SetStats(0);

   ci = TColor::GetColor("#000099");
   Graph_Graph1140->SetLineColor(ci);
   Graph_Graph1140->GetXaxis()->SetLabelFont(42);
   Graph_Graph1140->GetXaxis()->SetLabelSize(0.035);
   Graph_Graph1140->GetXaxis()->SetTitleSize(0.035);
   Graph_Graph1140->GetXaxis()->SetTitleFont(42);
   Graph_Graph1140->GetYaxis()->SetLabelFont(42);
   Graph_Graph1140->GetYaxis()->SetLabelSize(0.035);
   Graph_Graph1140->GetYaxis()->SetTitleSize(0.035);
   Graph_Graph1140->GetYaxis()->SetTitleFont(42);
   Graph_Graph1140->GetZaxis()->SetLabelFont(42);
   Graph_Graph1140->GetZaxis()->SetLabelSize(0.035);
   Graph_Graph1140->GetZaxis()->SetTitleSize(0.035);
   Graph_Graph1140->GetZaxis()->SetTitleFont(42);
   gre->SetHistogram(Graph_Graph1140);
   
   
   TF1 *myfit1141 = new TF1("myfit","[0]*sin(x*3.1416/180.0)/(1 + [1]*cos(x*3.1416/180.0))",0,373.7618);
   myfit1141->SetFillColor(19);
   myfit1141->SetFillStyle(0);
   myfit1141->SetLineColor(2);
   myfit1141->SetLineWidth(2);
   myfit1141->SetChisquare(10.84482);
   myfit1141->SetNDF(7);
   myfit1141->GetXaxis()->SetLabelFont(42);
   myfit1141->GetXaxis()->SetLabelSize(0.035);
   myfit1141->GetXaxis()->SetTitleSize(0.035);
   myfit1141->GetXaxis()->SetTitleFont(42);
   myfit1141->GetYaxis()->SetLabelFont(42);
   myfit1141->GetYaxis()->SetLabelSize(0.035);
   myfit1141->GetYaxis()->SetTitleSize(0.035);
   myfit1141->GetYaxis()->SetTitleFont(42);
   myfit1141->SetParameter(0,0.124049);
   myfit1141->SetParError(0,0.05069177);
   myfit1141->SetParLimits(0,0,0);
   myfit1141->SetParameter(1,-0.6977989);
   myfit1141->SetParError(1,0.2049165);
   myfit1141->SetParLimits(1,0,0);
   gre->GetListOfFunctions()->Add(myfit1141);
   
   ptstats = new TPaveStats(0.27,0.74,0.9,0.9,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   AText = ptstats->AddText("#chi^{2} / ndf = 10.84 / 7");
   AText = ptstats->AddText("p0       = 0.124 #pm 0.05069 ");
   AText = ptstats->AddText("p1       = -0.6978 #pm 0.2049 ");
   ptstats->SetOptStat(0);
   ptstats->SetOptFit(111);
   ptstats->Draw();
   gre->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(gre->GetListOfFunctions());
   multigraph->Add(gre,"");
   multigraph->Draw("AP");
   multigraph->GetXaxis()->SetTitle("#phi [deg.]");
   multigraph->GetXaxis()->SetLabelFont(42);
   multigraph->GetXaxis()->SetLabelSize(0.035);
   multigraph->GetXaxis()->SetTitleSize(0.035);
   multigraph->GetXaxis()->SetTitleFont(42);
   multigraph->GetYaxis()->SetLabelFont(42);
   multigraph->GetYaxis()->SetLabelSize(0.035);
   multigraph->GetYaxis()->SetTitleSize(0.035);
   multigraph->GetYaxis()->SetTitleFont(42);
     gPad->Modified();  
   multigraph->GetYaxis()->SetRangeUser(-0.35, 0.35);  




   c16_3->Modified();
   c16->cd();
  
// ------------>Primitives in pad: c16_4
   TPad *c16_4 = new TPad("c16_4", "Incoherent channe_4",0.7388081,0,0.9767442,0.9);
   c16_4->Draw();
   c16_4->cd();
   c16_4->Range(-17.15326,-0.4888889,360.2184,0.4);
   c16_4->SetFillColor(0);
   c16_4->SetBorderMode(0);
   c16_4->SetBorderSize(2);
   c16_4->SetGridx();
   c16_4->SetGridy();
   c16_4->SetLeftMargin(0);
   c16_4->SetRightMargin(0);
   c16_4->SetTopMargin(0);
   c16_4->SetFrameBorderMode(0);
   c16_4->SetFrameBorderMode(0);
   
   multigraph = new TMultiGraph();
   multigraph->SetName("");
   multigraph->SetTitle("0.39<x_{B}<0.60 ");
   
   Double_t Graph_fx1143[9] = {
   19.13311,
   55.36321,
   90.36243,
   127.5684,
   0,
   232.109,
   268.7816,
   302.6639,
   343.0651};
   Double_t Graph_fy1143[9] = {
   0.1307559,
   0.1996612,
   0.006608881,
   -2.830736,
   0,
   -2.034047,
   0.1276631,
   -0.2950426,
   -0.003784223};
   Double_t Graph_fex1143[9] = {
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0,
   0};
   Double_t Graph_fey1143[9] = {
   0.05218982,
   0.09871893,
   0.1820512,
   4.457049,
   0,
   1.502801,
   0.207584,
   0.0825667,
   0.06276702};
   gre = new TGraphErrors(9,Graph_fx1143,Graph_fy1143,Graph_fex1143,Graph_fey1143);
   gre->SetName("Graph");
   gre->SetTitle("Graph");
   gre->SetFillColor(1);

   ci = TColor::GetColor("#00ff00");
   gre->SetMarkerColor(ci);
   gre->SetMarkerStyle(21);
   
   TH1F *Graph_Graph1143 = new TH1F("Graph_Graph1143","Graph",100,0,377.3716);
   Graph_Graph1143->SetMinimum(-8.179195);
   Graph_Graph1143->SetMaximum(2.517722);
   Graph_Graph1143->SetDirectory(0);
   Graph_Graph1143->SetStats(0);

   ci = TColor::GetColor("#000099");
   Graph_Graph1143->SetLineColor(ci);
   Graph_Graph1143->GetXaxis()->SetLabelFont(42);
   Graph_Graph1143->GetXaxis()->SetLabelSize(0.035);
   Graph_Graph1143->GetXaxis()->SetTitleSize(0.035);
   Graph_Graph1143->GetXaxis()->SetTitleFont(42);
   Graph_Graph1143->GetYaxis()->SetLabelFont(42);
   Graph_Graph1143->GetYaxis()->SetLabelSize(0.035);
   Graph_Graph1143->GetYaxis()->SetTitleSize(0.035);
   Graph_Graph1143->GetYaxis()->SetTitleFont(42);
   Graph_Graph1143->GetZaxis()->SetLabelFont(42);
   Graph_Graph1143->GetZaxis()->SetLabelSize(0.035);
   Graph_Graph1143->GetZaxis()->SetTitleSize(0.035);
   Graph_Graph1143->GetZaxis()->SetTitleFont(42);
   gre->SetHistogram(Graph_Graph1143);
   
   
   TF1 *myfit1144 = new TF1("myfit","[0]*sin(x*3.1416/180.0)/(1 + [1]*cos(x*3.1416/180.0))",0,377.3716);
   myfit1144->SetFillColor(19);
   myfit1144->SetFillStyle(0);
   myfit1144->SetLineColor(2);
   myfit1144->SetLineWidth(2);
   myfit1144->SetChisquare(8.6938);
   myfit1144->SetNDF(7);
   myfit1144->GetXaxis()->SetLabelFont(42);
   myfit1144->GetXaxis()->SetLabelSize(0.035);
   myfit1144->GetXaxis()->SetTitleSize(0.035);
   myfit1144->GetXaxis()->SetTitleFont(42);
   myfit1144->GetYaxis()->SetLabelFont(42);
   myfit1144->GetYaxis()->SetLabelSize(0.035);
   myfit1144->GetYaxis()->SetTitleSize(0.035);
   myfit1144->GetYaxis()->SetTitleFont(42);
   myfit1144->SetParameter(0,0.1663497);
   myfit1144->SetParError(0,0.06722025);
   myfit1144->SetParLimits(0,0,0);
   myfit1144->SetParameter(1,-0.5093054);
   myfit1144->SetParError(1,0.2952021);
   myfit1144->SetParLimits(1,0,0);
   gre->GetListOfFunctions()->Add(myfit1144);
   
   ptstats = new TPaveStats(0.27,0.74,0.9,0.9,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   AText = ptstats->AddText("#chi^{2} / ndf = 8.694 / 7");
   AText = ptstats->AddText("p0       = 0.1663 #pm 0.06722 ");
   AText = ptstats->AddText("p1       = -0.5093 #pm 0.2952 ");
   ptstats->SetOptStat(0);
   ptstats->SetOptFit(111);
   ptstats->Draw();
   gre->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(gre->GetListOfFunctions());
   multigraph->Add(gre,"");
   multigraph->Draw("AP");
   multigraph->GetXaxis()->SetTitle("#phi [deg.]");
   multigraph->GetXaxis()->SetLabelFont(42);
   multigraph->GetXaxis()->SetLabelSize(0.035);
   multigraph->GetXaxis()->SetTitleSize(0.035);
   multigraph->GetXaxis()->SetTitleFont(42);
   multigraph->GetYaxis()->SetLabelFont(42);
   multigraph->GetYaxis()->SetLabelSize(0.035);
   multigraph->GetYaxis()->SetTitleSize(0.035);
   multigraph->GetYaxis()->SetTitleFont(42);
    gPad->Modified();  
   multigraph->GetYaxis()->SetRangeUser(-0.35, 0.35);  

 


   c16_4->Modified();
   c16->cd();
   c16->Modified();
   c16->cd();
   c16->SetSelected(c16);
}
Beispiel #14
0
void yz-plane-length()
{
//=========Macro generated from canvas: c/
//=========  (Tue Jul 28 19:55:12 2015) by ROOT version6.04/00
   TCanvas *c = new TCanvas("c", "",0,45,600,500);
   c->SetHighLightColor(2);
   c->Range(-187.5,-2928.319,187.5,26354.87);
   c->SetFillColor(0);
   c->SetBorderMode(0);
   c->SetBorderSize(2);
   c->SetFrameBorderMode(0);
   c->SetFrameBorderMode(0);
   
   TH1D *hist__1 = new TH1D("hist__1","Worry Later",100,-150,150);
   hist__1->SetBinContent(0,14);
   hist__1->SetBinContent(1,1);
   hist__1->SetBinContent(3,1);
   hist__1->SetBinContent(4,2);
   hist__1->SetBinContent(5,4);
   hist__1->SetBinContent(6,4);
   hist__1->SetBinContent(7,9);
   hist__1->SetBinContent(8,20);
   hist__1->SetBinContent(9,20);
   hist__1->SetBinContent(10,19);
   hist__1->SetBinContent(11,21);
   hist__1->SetBinContent(12,41);
   hist__1->SetBinContent(13,42);
   hist__1->SetBinContent(14,72);
   hist__1->SetBinContent(15,82);
   hist__1->SetBinContent(16,124);
   hist__1->SetBinContent(17,144);
   hist__1->SetBinContent(18,204);
   hist__1->SetBinContent(19,254);
   hist__1->SetBinContent(20,298);
   hist__1->SetBinContent(21,353);
   hist__1->SetBinContent(22,426);
   hist__1->SetBinContent(23,534);
   hist__1->SetBinContent(24,636);
   hist__1->SetBinContent(25,718);
   hist__1->SetBinContent(26,800);
   hist__1->SetBinContent(27,817);
   hist__1->SetBinContent(28,856);
   hist__1->SetBinContent(29,901);
   hist__1->SetBinContent(30,928);
   hist__1->SetBinContent(31,930);
   hist__1->SetBinContent(32,1032);
   hist__1->SetBinContent(33,1025);
   hist__1->SetBinContent(34,1121);
   hist__1->SetBinContent(35,1070);
   hist__1->SetBinContent(36,1200);
   hist__1->SetBinContent(37,1355);
   hist__1->SetBinContent(38,1453);
   hist__1->SetBinContent(39,1633);
   hist__1->SetBinContent(40,1926);
   hist__1->SetBinContent(41,2337);
   hist__1->SetBinContent(42,2676);
   hist__1->SetBinContent(43,3487);
   hist__1->SetBinContent(44,4580);
   hist__1->SetBinContent(45,5833);
   hist__1->SetBinContent(46,7742);
   hist__1->SetBinContent(47,10511);
   hist__1->SetBinContent(48,13797);
   hist__1->SetBinContent(49,17765);
   hist__1->SetBinContent(50,22311);
   hist__1->SetBinContent(51,22160);
   hist__1->SetBinContent(52,17962);
   hist__1->SetBinContent(53,14130);
   hist__1->SetBinContent(54,10947);
   hist__1->SetBinContent(55,8303);
   hist__1->SetBinContent(56,6081);
   hist__1->SetBinContent(57,4643);
   hist__1->SetBinContent(58,3602);
   hist__1->SetBinContent(59,2825);
   hist__1->SetBinContent(60,2235);
   hist__1->SetBinContent(61,1955);
   hist__1->SetBinContent(62,1716);
   hist__1->SetBinContent(63,1461);
   hist__1->SetBinContent(64,1266);
   hist__1->SetBinContent(65,1191);
   hist__1->SetBinContent(66,1098);
   hist__1->SetBinContent(67,1054);
   hist__1->SetBinContent(68,999);
   hist__1->SetBinContent(69,957);
   hist__1->SetBinContent(70,982);
   hist__1->SetBinContent(71,980);
   hist__1->SetBinContent(72,932);
   hist__1->SetBinContent(73,910);
   hist__1->SetBinContent(74,873);
   hist__1->SetBinContent(75,812);
   hist__1->SetBinContent(76,785);
   hist__1->SetBinContent(77,748);
   hist__1->SetBinContent(78,649);
   hist__1->SetBinContent(79,593);
   hist__1->SetBinContent(80,459);
   hist__1->SetBinContent(81,400);
   hist__1->SetBinContent(82,321);
   hist__1->SetBinContent(83,244);
   hist__1->SetBinContent(84,198);
   hist__1->SetBinContent(85,180);
   hist__1->SetBinContent(86,147);
   hist__1->SetBinContent(87,93);
   hist__1->SetBinContent(88,73);
   hist__1->SetBinContent(89,50);
   hist__1->SetBinContent(90,43);
   hist__1->SetBinContent(91,37);
   hist__1->SetBinContent(92,22);
   hist__1->SetBinContent(93,15);
   hist__1->SetBinContent(94,10);
   hist__1->SetBinContent(95,7);
   hist__1->SetBinContent(96,7);
   hist__1->SetBinContent(97,3);
   hist__1->SetBinContent(98,2);
   hist__1->SetBinContent(99,3);
   hist__1->SetBinContent(100,3);
   hist__1->SetBinContent(101,28);
   hist__1->SetEntries(227323);
   
   TPaveStats *ptstats = new TPaveStats(0.78,0.775,0.98,0.935,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   TText *AText = ptstats->AddText("hist");
   AText->SetTextSize(0.0368);
   AText = ptstats->AddText("Entries = 227323 ");
   AText = ptstats->AddText("Mean  = 0.5797");
   AText = ptstats->AddText("Std Dev   =  28.66");
   ptstats->SetOptStat(1111);
   ptstats->SetOptFit(0);
   ptstats->Draw();
   hist__1->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(hist__1);

   Int_t ci;      // for color index setting
   TColor *color; // for color definition with alpha
   ci = TColor::GetColor("#000099");
   hist__1->SetLineColor(ci);
   hist__1->GetXaxis()->SetTitle("#DeltaZ [cm]");
   hist__1->GetXaxis()->SetLabelFont(42);
   hist__1->GetXaxis()->SetLabelSize(0.035);
   hist__1->GetXaxis()->SetTitleSize(0.035);
   hist__1->GetXaxis()->SetTitleFont(42);
   hist__1->GetYaxis()->SetLabelFont(42);
   hist__1->GetYaxis()->SetLabelSize(0.035);
   hist__1->GetYaxis()->SetTitleSize(0.035);
   hist__1->GetYaxis()->SetTitleFont(42);
   hist__1->GetZaxis()->SetLabelFont(42);
   hist__1->GetZaxis()->SetLabelSize(0.035);
   hist__1->GetZaxis()->SetTitleSize(0.035);
   hist__1->GetZaxis()->SetTitleFont(42);
   hist__1->Draw("");
   
   TPaveText *pt = new TPaveText(0.3779599,0.9368947,0.6220401,0.995,"blNDC");
   pt->SetName("title");
   pt->SetBorderSize(0);
   pt->SetFillColor(0);
   pt->SetFillStyle(0);
   pt->SetTextFont(42);
   AText = pt->AddText("Worry Later");
   pt->Draw();
   c->Modified();
   c->cd();
   c->SetSelected(c);
}
Beispiel #15
0
void DrawAllHistos(TString filename,Bool_t isMC,TString format){
  
  //  setTDRStyle("logredblue");

  std::vector<TH1F*> h1vec;
  std::vector<TH2F*> h2vec;
  
  h1vec.clear();
  h2vec.clear();

  TFile *file = TFile::Open(filename);

  // to get the names of the conditions
  TObjArray *conditions_from_name = filename.Tokenize("_"); 
  TString sa = conditions_from_name->At(1)->GetName();
  TString sb = conditions_from_name->At(3)->GetName();
  sb.ReplaceAll(".root","");

  file->cd();
  
  TDirectory *stardir = gDirectory;
  TObject *thesourcedir;
  TIter nextdir(stardir->GetListOfKeys());

  while((thesourcedir=nextdir())){
    
    TString dirName = thesourcedir->GetName();
    
    stardir->cd(dirName);
    TDirectory *current_sourcedir = gDirectory;
    TH1::AddDirectory(kFALSE);

    std::cout << "*************************" <<std::endl;
    std::cout << "Reading Directory: " << dirName <<std::endl;
    
    TObject *obj;
    TIter next(current_sourcedir->GetListOfKeys());

    while ((obj=next())) {
      
      TString objName =obj->GetName();

      if(objName.Contains("pfx")) continue;

      if (objName.Contains("h2") && !objName.Contains("pfx")) {

	//std::cout << "Reading: " << obj->GetName() <<std::endl;

	TH2F* h2 = (TH2F*)file->Get(dirName+"/"+objName);
	h2->SetName(objName+dirName);
	h2vec.push_back(h2);

	TCanvas *c = new TCanvas(h2->GetName(),h2->GetName(),800,600);
	c->cd();
	gPad->SetTopMargin(0.08);
	gPad->SetRightMargin(0.15);
	h2->SetStats(kFALSE);
	h2->Draw("colz");
	c->Draw();
	
	c->cd();
	TProfile *hpfx_tmp = (TProfile*) h2->ProfileX("_pfx",1,-1,"o");
	hpfx_tmp->SetStats(kFALSE);
	//hpfx_tmp->SetMarkerColor(kBlack);
	hpfx_tmp->SetMarkerColor(kRed);
	hpfx_tmp->SetMarkerSize(1.2); 
	hpfx_tmp->SetMarkerStyle(20); 
	hpfx_tmp->Draw("psame");
	
	c->Draw();
	cmsPrel(60.,sa,sb, isMC);
	
	TString canvName = h2->GetName();
	c->cd()->SetLogz();
	c->SaveAs(canvName+"."+format);
	  
      } else { 
	
	TH1F* h1 = (TH1F*)file->Get(dirName+"/"+objName);
	h1->SetName(objName+dirName);
	h1vec.push_back(h1);
	
	TCanvas *c = new TCanvas(h1->GetName(),h1->GetName(),600,600);
	c->cd()->SetLogy();
	
	h1->SetMarkerColor(kBlack);
	h1->SetMarkerStyle(20);
	h1->SetLineWidth(1.5); 
	h1->SetFillColor(393);
	//h1->SetFillStyle(3005);
	h1->Draw("hist");
	h1->Draw("e1same");
	c->Draw();
	
	TObject    *statObj;
	TPaveStats *stats;
  
	statObj = h1->GetListOfFunctions()->FindObject("stats");
	stats= static_cast<TPaveStats*>(statObj);
	stats->SetFillColor(10);
	stats->SetLineWidth(1);
	stats->SetShadowColor(0);
	stats->SetTextFont(42);
	stats->SetTextSize(0.025);
	//stats->SetLineColor(LineColors);
	//stats->SetTextColor(LineColors);
	stats->SetX1NDC(0.75);
	stats->SetY1NDC(0.72);
	stats->SetX2NDC(0.97);
	stats->SetY2NDC(0.92);
	stats->Draw("same"); 
		
	cmsPrel(60.,sa,sb,isMC);
	TString canvName = h1->GetName();
	c->SaveAs(canvName+"."+format);
       	
      }
    }
  }
}
Beispiel #16
0
void JetEtaBC(void){
    std::cout << "Hellowww!!" << std::endl;
    
    TFile *file1;
    file1 = TFile::Open("PF_second.root");
    TH1F* f1 = (TH1F*)file1->FindObjectAny("JetEtaBC");

    TFile *file2;
    file2 = TFile::Open("PAT_second.root");
    TH1F* f2 = (TH1F*)file2->FindObjectAny("JetEtaBC");

    TFile *file3;
    file3 = TFile::Open("PF_IC5_Jets_Corrected.root");
    TH1F* f3 = (TH1F*)file3->FindObjectAny("JetEtaBC");

    TFile *file4;
    file4 = TFile::Open("PF_ak5_tot.root");
    TH1F* f4 = (TH1F*)file4->FindObjectAny("JetEtaBC");

    TCanvas *c1 = new TCanvas("canvas","Plotting Canvas",150,10,990,660);
    c1->Range(-0.1486535,-622.7141,1.350808,5500.641);
    c1->SetFillColor(0);
    c1->SetBorderSize(2);
    c1->SetLogy();
    c1->SetTickx(1);
    c1->SetTicky(1);

    f1->SetStats(kFALSE);
    f4->GetXaxis()->SetTitle("#eta");
    f4->GetXaxis()->SetLabelFont(42);
    f4->GetXaxis()->SetTitleFont(42);
    f4->GetYaxis()->SetTitle("Events");
    f4->GetYaxis()->SetLabelFont(42);
    f4->GetYaxis()->SetTitleOffset(1.19);
    f4->GetYaxis()->SetTitleFont(42);
    f4->SetLineWidth(4);
    f1->SetLineColor(1);

    f2->SetStats(kFALSE);
    f2->SetLineColor(2);
    f2->SetLineWidth(3);

    f3->SetStats(kFALSE);
    f3->SetLineColor(3);
    f3->SetLineWidth(2);

    f4->SetStats(kFALSE);
    f4->SetLineColor(4);
    f1->SetLineWidth(1);
    
    int entries = f1->GetEntries();
    double mean =  f1->GetMean();
    double RMS =  f1->GetRMS();

    int entries1 = f2->GetEntries();
    double mean1 =  f2->GetMean();
    double RMS1 =  f2->GetRMS();

    int entries2 = f3->GetEntries();
    double mean2 =  f3->GetMean();
    double RMS2 =  f3->GetRMS();

    int entries3 = f4->GetEntries();
    double mean3 =  f4->GetMean();
    double RMS3 =  f4->GetRMS();

    TPaveStats *ptstats = new TPaveStats(0.8314943,0.7488136,0.9926437,0.8877119,"brNDC");
    ptstats->SetName("stats");
    ptstats->SetBorderSize(1);
    ptstats->SetFillColor(0);
    ptstats->SetTextAlign(12);
    ptstats->SetTextFont(42);
    ptstats->SetTextColor(1);

    TPaveStats *ptstats1 = new TPaveStats(0.8314943,0.5988136,0.9926437,0.7377119,"brNDC");
    ptstats1->SetName("stats");
    ptstats1->SetBorderSize(1);
    ptstats1->SetFillColor(0);
    ptstats1->SetTextAlign(12);
    ptstats1->SetTextFont(42);
    ptstats1->SetTextColor(2);

    TPaveStats *ptstats2 = new TPaveStats(0.8314943,0.4488136,0.9926437,0.5877119,"brNDC");
    ptstats2->SetName("stats");
    ptstats2->SetBorderSize(1);
    ptstats2->SetFillColor(0);
    ptstats2->SetTextAlign(12);
    ptstats2->SetTextFont(42);
    ptstats2->SetTextColor(3);

    TPaveStats *ptstats3 = new TPaveStats(0.8314943,0.2988136,0.9926437,0.4377119,"brNDC");
    ptstats3->SetName("stats");
    ptstats3->SetBorderSize(1);
    ptstats3->SetFillColor(0);
    ptstats3->SetTextAlign(12);
    ptstats3->SetTextFont(42);
    ptstats3->SetTextColor(4);

    #include <sstream>
    std::string s,s1,s2;
    std::stringstream out,out1,out2;
    out << "Entries = " << entries << " ";
    out1 << "Mean = " << mean << " ";
    out2 << "RMS = " << RMS << " ";
    s = out.str();
    s1 = out1.str();
    s2 = out2.str();

    std::string s_1,s1_1,s2_1;
    std::stringstream out_1,out1_1,out2_1;
    out_1 << "Entries = " << entries1 << " ";
    out1_1 << "Mean = " << mean1 << " ";
    out2_1 << "RMS = " << RMS1 << " ";
    s_1 = out_1.str();
    s1_1 = out1_1.str();
    s2_1 = out2_1.str();

    std::string s_2,s1_2,s2_2;
    std::stringstream out_2,out1_2,out2_2;
    out_2 << "Entries = " << entries2 << " ";
    out1_2 << "Mean = " << mean2 << " ";
    out2_2 << "RMS = " << RMS2 << " ";
    s_2 = out_2.str();
    s1_2 = out1_2.str();
    s2_2 = out2_2.str();

    std::string s_3,s1_3,s2_3;
    std::stringstream out_3,out1_3,out2_3;
    out_3 << "Entries = " << entries3 << " ";
    out1_3 << "Mean = " << mean3 << " ";
    out2_3 << "RMS = " << RMS3 << " ";
    s_3 = out_3.str();
    s1_3 = out1_3.str();
    s2_3 = out2_3.str();

    TText *text = ptstats->AddText(s.c_str());
    text = ptstats->AddText(s1.c_str());
    text = ptstats->AddText(s2.c_str());
    ptstats->SetOptStat(1110);
    ptstats->SetOptFit(0);

    TText *text1 = ptstats1->AddText(s_1.c_str());
    text1 = ptstats1->AddText(s1_1.c_str());
    text1 = ptstats1->AddText(s2_1.c_str());
    ptstats1->SetOptStat(1110);
    ptstats1->SetOptFit(0);

    TText *text2 = ptstats2->AddText(s_2.c_str());
    text2 = ptstats2->AddText(s1_2.c_str());
    text2 = ptstats2->AddText(s2_2.c_str());
    ptstats2->SetOptStat(1110);
    ptstats2->SetOptFit(0);

    TText *text3 = ptstats3->AddText(s_3.c_str());
    text3 = ptstats3->AddText(s1_3.c_str());
    text3 = ptstats3->AddText(s2_3.c_str());
    ptstats3->SetOptStat(1110);
    ptstats3->SetOptFit(0);

    TPaveText *pt = new TPaveText(0.3066092,0.8061864,0.7255747,0.87055085,"blNDC");
    pt->SetName("title");
    pt->SetBorderSize(0);
    pt->SetTextFont(42);
    pt->SetFillColor(0);
    pt->SetTextColor(1);
    text = pt->AddText("PF Number of Jets before cuts");
    text = pt->AddText("PF Jets Pt > 10 GeV  Before Cuts");
  
    TPaveText *pt1 = new TPaveText(0.3066092,0.7261864,0.7055747,0.77055085,"blNDC");
    pt1->SetName("title");
    pt1->SetBorderSize(0);
    pt1->SetTextFont(42);
    pt1->SetFillColor(0);
    pt1->SetTextColor(2);
    text1 = pt1->AddText("PAT Jets Eta Before Cuts");

    TPaveText *pt2 = new TPaveText(0.3066092,0.6561864,0.7055747,0.70055085,"blNDC");
    pt2->SetName("title");
    pt2->SetBorderSize(0);
    pt2->SetTextFont(42);
    pt2->SetFillColor(0);
    pt2->SetTextColor(3);
    text2 = pt2->AddText("PF IC5 Pt > 0 GeV Jets Eta Before Cuts");

    TPaveText *pt3 = new TPaveText(0.3266092,0.5861864,0.7055747,0.63055085,"blNDC");
    pt3->SetName("title");
    pt3->SetBorderSize(0);
    pt3->SetTextFont(42);
    pt3->SetFillColor(0);
    pt3->SetTextColor(4);
    text3 = pt3->AddText("PF ak5 Eta Before Cuts");

    c1->Modified();

    f4->Draw();
    f2->Draw("SAME");
    f3->Draw("SAME");
    f1->Draw("SAME");
    pt->Draw("SAME");
    ptstats->Draw("SAME");
    pt1->Draw("SAME");
    ptstats1->Draw("SAME");
    pt2->Draw("SAME");
    ptstats2->Draw("SAME");
    pt3->Draw("SAME");
    ptstats3->Draw("SAME");
    c1->SaveAs("JetEtaBeforeCutsComparisonAllIhaverightnow.gif");

    return 0;
};
Beispiel #17
0
int main(int argc, char** argv){
//=========Macro generated from canvas: Canvas_1/Canvas_1
//=========  (Wed Aug 27 23:28:50 2014) by ROOT version5.34/04
   TCanvas *Canvas_1 = new TCanvas("Canvas_1", "Canvas_1",258,73,1243,811);
   Canvas_1->Range(-0.0625,-0.0625,0.0625,0.0625);
   Canvas_1->SetFillColor(0);
   Canvas_1->SetBorderMode(0);
   Canvas_1->SetBorderSize(2);
   Canvas_1->SetFrameBorderMode(0);
   Canvas_1->SetFrameBorderMode(0);
   
   TFile f(argv[1],"r");
   TH2F *h1 = (TH2F*)f.Get("h2dir/h4");
/*  
   TPaletteAxis *palette = new TPaletteAxis(0.050625,-0.05,0.05625,0.05,h1);
palette->SetLabelColor(1);
palette->SetLabelFont(42);
palette->SetLabelOffset(0.005);
palette->SetLabelSize(0.035);
palette->SetTitleOffset(1);
palette->SetTitleSize(0.035);
   palette->SetFillColor(100);
   palette->SetFillStyle(1001);
   h1->GetListOfFunctions()->Add(palette,"br");
*/
   
   TPaveStats *ptstats = new TPaveStats(0.700565,0.6608696,0.9007264,0.9006211,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   TText *text = ptstats->AddText("h1");
   text->SetTextSize(0.03676191);
   text = ptstats->AddText("Entries = 101    ");
   text = ptstats->AddText("Mean x = -0.0003512");
   text = ptstats->AddText("Mean y = -0.0003318");
   text = ptstats->AddText("RMS x = 0.01432");
   text = ptstats->AddText("RMS y = 0.01428");
   ptstats->SetOptStat(1111);
   ptstats->SetOptFit(0);
   ptstats->Draw();
   h1->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(h1);

   Int_t ci;   // for color index setting
   ci = TColor::GetColor("#000099");
   h1->SetLineColor(ci);
   h1->GetXaxis()->SetTitle("mm");
   h1->GetXaxis()->SetLabelFont(42);
   h1->GetXaxis()->SetLabelSize(0.035);
   h1->GetXaxis()->SetTitleSize(0.035);
   h1->GetXaxis()->SetTitleFont(42);
   h1->GetYaxis()->SetTitle("mm");
   h1->GetYaxis()->SetLabelFont(42);
   h1->GetYaxis()->SetLabelSize(0.035);
   h1->GetYaxis()->SetTitleSize(0.035);
   h1->GetYaxis()->SetTitleFont(42);
   h1->GetZaxis()->SetLabelFont(42);
   h1->GetZaxis()->SetLabelSize(0.035);
   h1->GetZaxis()->SetTitleSize(0.035);
   h1->GetZaxis()->SetTitleFont(42);
   h1->Draw("COLZ ");
   
   TPaveText *pt = new TPaveText(0.1594915,0.9368634,0.8405085,0.995,"blNDC");
   pt->SetName("title");
   pt->SetBorderSize(0);
   pt->SetFillColor(0);
   pt->SetFillStyle(0);
   pt->SetTextFont(42);
   text = pt->AddText("2D Energy deposit distribution at z=-25um");
   pt->Draw();
   Canvas_1->Modified();
   Canvas_1->cd();
   Canvas_1->SetSelected(Canvas_1);
   std::cout<<argv[1]<<std::endl;
   Canvas_1->SaveAs(TString(argv[1])+"35#.png");
}
Beispiel #18
0
void initial_z_diff()
{
//=========Macro generated from canvas: c/
//=========  (Fri Jul 24 10:47:18 2015) by ROOT version6.04/00
   TCanvas *c = new TCanvas("c", "",0,45,600,500);
   c->SetHighLightColor(2);
   c->Range(-187.5,-3568.557,187.5,32117.01);
   c->SetFillColor(0);
   c->SetBorderMode(0);
   c->SetBorderSize(2);
   c->SetFrameBorderMode(0);
   c->SetFrameBorderMode(0);
   
   TH1D *hist__1 = new TH1D("hist__1","Difference in PMT-constructed position and mc-truth start position",100,-150,150);
   hist__1->SetBinContent(0,49);
   hist__1->SetBinContent(1,12);
   hist__1->SetBinContent(2,7);
   hist__1->SetBinContent(3,9);
   hist__1->SetBinContent(4,12);
   hist__1->SetBinContent(5,21);
   hist__1->SetBinContent(6,30);
   hist__1->SetBinContent(7,36);
   hist__1->SetBinContent(8,47);
   hist__1->SetBinContent(9,67);
   hist__1->SetBinContent(10,70);
   hist__1->SetBinContent(11,90);
   hist__1->SetBinContent(12,140);
   hist__1->SetBinContent(13,162);
   hist__1->SetBinContent(14,208);
   hist__1->SetBinContent(15,208);
   hist__1->SetBinContent(16,317);
   hist__1->SetBinContent(17,367);
   hist__1->SetBinContent(18,460);
   hist__1->SetBinContent(19,581);
   hist__1->SetBinContent(20,685);
   hist__1->SetBinContent(21,838);
   hist__1->SetBinContent(22,963);
   hist__1->SetBinContent(23,1079);
   hist__1->SetBinContent(24,1231);
   hist__1->SetBinContent(25,1281);
   hist__1->SetBinContent(26,1264);
   hist__1->SetBinContent(27,1318);
   hist__1->SetBinContent(28,1318);
   hist__1->SetBinContent(29,1265);
   hist__1->SetBinContent(30,1282);
   hist__1->SetBinContent(31,1235);
   hist__1->SetBinContent(32,1315);
   hist__1->SetBinContent(33,1290);
   hist__1->SetBinContent(34,1399);
   hist__1->SetBinContent(35,1363);
   hist__1->SetBinContent(36,1528);
   hist__1->SetBinContent(37,1700);
   hist__1->SetBinContent(38,1822);
   hist__1->SetBinContent(39,2053);
   hist__1->SetBinContent(40,2441);
   hist__1->SetBinContent(41,2903);
   hist__1->SetBinContent(42,3359);
   hist__1->SetBinContent(43,4326);
   hist__1->SetBinContent(44,5618);
   hist__1->SetBinContent(45,7284);
   hist__1->SetBinContent(46,9575);
   hist__1->SetBinContent(47,12857);
   hist__1->SetBinContent(48,16804);
   hist__1->SetBinContent(49,21562);
   hist__1->SetBinContent(50,27189);
   hist__1->SetBinContent(51,26947);
   hist__1->SetBinContent(52,21828);
   hist__1->SetBinContent(53,17254);
   hist__1->SetBinContent(54,13388);
   hist__1->SetBinContent(55,10171);
   hist__1->SetBinContent(56,7452);
   hist__1->SetBinContent(57,5752);
   hist__1->SetBinContent(58,4452);
   hist__1->SetBinContent(59,3522);
   hist__1->SetBinContent(60,2826);
   hist__1->SetBinContent(61,2449);
   hist__1->SetBinContent(62,2170);
   hist__1->SetBinContent(63,1855);
   hist__1->SetBinContent(64,1635);
   hist__1->SetBinContent(65,1515);
   hist__1->SetBinContent(66,1393);
   hist__1->SetBinContent(67,1344);
   hist__1->SetBinContent(68,1279);
   hist__1->SetBinContent(69,1232);
   hist__1->SetBinContent(70,1248);
   hist__1->SetBinContent(71,1277);
   hist__1->SetBinContent(72,1226);
   hist__1->SetBinContent(73,1247);
   hist__1->SetBinContent(74,1229);
   hist__1->SetBinContent(75,1187);
   hist__1->SetBinContent(76,1265);
   hist__1->SetBinContent(77,1253);
   hist__1->SetBinContent(78,1269);
   hist__1->SetBinContent(79,1210);
   hist__1->SetBinContent(80,1055);
   hist__1->SetBinContent(81,914);
   hist__1->SetBinContent(82,761);
   hist__1->SetBinContent(83,632);
   hist__1->SetBinContent(84,515);
   hist__1->SetBinContent(85,450);
   hist__1->SetBinContent(86,356);
   hist__1->SetBinContent(87,264);
   hist__1->SetBinContent(88,227);
   hist__1->SetBinContent(89,176);
   hist__1->SetBinContent(90,127);
   hist__1->SetBinContent(91,134);
   hist__1->SetBinContent(92,85);
   hist__1->SetBinContent(93,60);
   hist__1->SetBinContent(94,47);
   hist__1->SetBinContent(95,29);
   hist__1->SetBinContent(96,31);
   hist__1->SetBinContent(97,18);
   hist__1->SetBinContent(98,14);
   hist__1->SetBinContent(99,12);
   hist__1->SetBinContent(100,12);
   hist__1->SetBinContent(101,63);
   hist__1->SetEntries(289897);
   
   TPaveStats *ptstats = new TPaveStats(0.78,0.775,0.98,0.935,"brNDC");
   ptstats->SetName("stats");
   ptstats->SetBorderSize(1);
   ptstats->SetFillColor(0);
   ptstats->SetTextAlign(12);
   ptstats->SetTextFont(42);
   TText *AText = ptstats->AddText("hist");
   AText->SetTextSize(0.0368);
   AText = ptstats->AddText("Entries = 289897 ");
   AText = ptstats->AddText("Mean  = 0.6888");
   AText = ptstats->AddText("Std Dev   =  33.12");
   ptstats->SetOptStat(1111);
   ptstats->SetOptFit(0);
   ptstats->Draw();
   hist__1->GetListOfFunctions()->Add(ptstats);
   ptstats->SetParent(hist__1);

   Int_t ci;      // for color index setting
   TColor *color; // for color definition with alpha
   ci = TColor::GetColor("#000099");
   hist__1->SetLineColor(ci);
   hist__1->GetXaxis()->SetTitle("#DeltaZ [cm]");
   hist__1->GetXaxis()->SetLabelFont(42);
   hist__1->GetXaxis()->SetLabelSize(0.035);
   hist__1->GetXaxis()->SetTitleSize(0.035);
   hist__1->GetXaxis()->SetTitleFont(42);
   hist__1->GetYaxis()->SetLabelFont(42);
   hist__1->GetYaxis()->SetLabelSize(0.035);
   hist__1->GetYaxis()->SetTitleSize(0.035);
   hist__1->GetYaxis()->SetTitleFont(42);
   hist__1->GetZaxis()->SetLabelFont(42);
   hist__1->GetZaxis()->SetLabelSize(0.035);
   hist__1->GetZaxis()->SetTitleSize(0.035);
   hist__1->GetZaxis()->SetTitleFont(42);
   hist__1->Draw("");
   
   TPaveText *pt = new TPaveText(0.15,0.9368947,0.85,0.995,"blNDC");
   pt->SetName("title");
   pt->SetBorderSize(0);
   pt->SetFillColor(0);
   pt->SetFillStyle(0);
   pt->SetTextFont(42);
   AText = pt->AddText("Difference in PMT-constructed position and mc-truth start position");
   pt->Draw();
   c->Modified();
   c->cd();
   c->SetSelected(c);
}