Пример #1
0
void drawSample(TCanvas* C,TString Group1, TFile* F1,TString Group2, TFile* F2,TString channel, TString sample,bool PrintDiff){
  drawHisto(C,Group1,F1,Group2,F2,channel,"nobtag_low",sample,1&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,"nobtag_medium",sample,1&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,"nobtag_high",sample,1&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,"btag_low",sample,1&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,"btag_high",sample,1&&PrintDiff);

//   drawHisto(C,Group1,F1,Group2,F2,channel,"0jet_low",sample,1&&PrintDiff);
//   drawHisto(C,Group1,F1,Group2,F2,channel,"0jet_high",sample,1&&PrintDiff);
//   drawHisto(C,Group1,F1,Group2,F2,channel,"boost_low",sample,1&&PrintDiff);
//   drawHisto(C,Group1,F1,Group2,F2,channel,"boost_high",sample,1&&PrintDiff);
//   drawHisto(C,Group1,F1,Group2,F2,channel,"vbf",sample,1&&PrintDiff);
}
Пример #2
0
void drawCategory(TCanvas* C,TString Group1, TFile* F1,TString Group2, TFile* F2,TString channel, TString category,bool PrintDiff){
  drawHisto(C,Group1,F1,Group2,F2,channel,category,"data_obs",1&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,category,"ZTT",1&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,category,"W",1&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,category,"QCD",1&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,category,"TT",1&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,category,"ZL",0&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,category,"ZJ",0&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,category,"ZLL",0&&PrintDiff);
  drawHisto(C,Group1,F1,Group2,F2,channel,category,"VV",0&&PrintDiff);
//   drawHisto(C,Group1,F1,Group2,F2,channel,category,"ggH125",1&&PrintDiff);
//   drawHisto(C,Group1,F1,Group2,F2,channel,category,"qqH125",1&&PrintDiff);
//   drawHisto(C,Group1,F1,Group2,F2,channel,category,"VH125",0&&PrintDiff);

}
Пример #3
0
void drawFlattp(){

  gROOT->Reset();
  gStyle->SetOptStat(0);
  gStyle->SetTitleSize(0.08);

  std::string inputName[] = { "analyz_W01J_5F_NLO_FXFX.root",
			      "analyz_W0J_5F_NLO.root",
			      "analyz_W0J_5F_NLO_Herwig.root",
			      "analyz_W01JetLO_5F.root",
			      "analyz_W0Jet_5F_LO.root",
			      "analyz_W0Jet_5F_LO_Herwig.root" };

  std::string legName[] = { "W+0/1 jet NLO with Pythia 8",
			    "W+0 jet NLO with Pythia 8", 
			    "W+0 jet NLO with Herwig++",
			    "W+0/1 jet LO with Pythia 8", 
			    "W+0 jet LO with Pythia 8",   
			    "W+0 jet LO with Herwig++" };
		        
  Int_t N = sizeof(inputName)/sizeof(inputName[0]);
  Int_t cN = 9;

  TFile *f[N];
  TTree *t[N];
  TH1F *hnJet[N];
  TH1F *hjetPt[N];
  TH1F *hjetEta[N];
  TH1F *hMet[N]; 
  TH1F *hlepPt[N];
  TH1F *hplusYlepjet[N];
  TH1F *hminusYlepjet[N];
  TH1F *hplusYWjet[N];
  TH1F *hminusYWjet[N];

  for(Int_t i = 0; i < N; i++){

    f[i] = TFile::Open(inputName[i].data());
    t[i] = (TTree*) f[i]->Get("tree");
    hnJet[i]   = (TH1F*) f[i]->Get("hnJet");
    hjetPt[i]  = new TH1F(Form("hjetPt%d",i), "", 40, 0, 200);
    hjetEta[i] = new TH1F(Form("hjetEta%d",i), "", 20, -3, 3);
    hMet[i]    = new TH1F(Form("hMet%d",i), "", 40, 0, 200);
    hlepPt[i]  = new TH1F(Form("hlepPt%d",i), "", 40, 0, 200);
    hplusYlepjet[i]  = new TH1F(Form("hplusYlepjet%d",i), "", 50, -5, 5);
    hminusYlepjet[i] = new TH1F(Form("hminusYlepjet%d",i), "", 50, -5, 5);
    hplusYWjet[i]    = new TH1F(Form("hplusYWjet%d",i), "", 50, -5, 5);
    hminusYWjet[i]   = new TH1F(Form("hminusYWjet%d",i), "", 50, -5, 5);

    if( i > 1 ){

      hnJet[i]->Sumw2();
      hjetPt[i]->Sumw2();
      hjetEta[i]->Sumw2();
      hMet[i]->Sumw2();
      hlepPt[i]->Sumw2();
      hplusYlepjet[i]->Sumw2();
      hminusYlepjet[i]->Sumw2();
      hplusYWjet[i]->Sumw2();
      hminusYWjet[i]->Sumw2();

    }

    hnJet[i]->Scale(1./hnJet[i]->Integral());

    t[i]->Draw(Form("JetPt>>hjetPt%d",i), "(nJet>0)*weight");
    hjetPt[i]->Scale(1./hjetPt[i]->Integral());
    
    t[i]->Draw(Form("JetEta>>hjetEta%d",i), "(nJet>0)*weight");
    hjetEta[i]->Scale(1./hjetEta[i]->Integral());
  
    t[i]->Draw(Form("metPt>>hMet%d",i), "(nJet>0)*weight");
    hMet[i]->Scale(1./hMet[i]->Integral());

    t[i]->Draw(Form("LepPt>>hlepPt%d",i), "abs(LepId)==11", "(nJet>0)*weight");
    hlepPt[i]->Scale(1./hlepPt[i]->Integral());

    t[i]->Draw(Form("plusYLepJet>>hplusYlepjet%d",i), "(nJet>0)*weight");
    hplusYlepjet[i]->Scale(1./hplusYlepjet[i]->Integral());
   
    t[i]->Draw(Form("minusYLepJet>>hminusYlepjet%d",i), "(nJet>0)*weight");
    hminusYlepjet[i]->Scale(1./hminusYlepjet[i]->Integral());

    t[i]->Draw(Form("plusYWJet>>hplusYWjet%d",i), "(nJet>0)*weight");
    hplusYWjet[i]->Scale(1./hplusYWjet[i]->Integral());
   
    t[i]->Draw(Form("minusYWJet>>hminusYWjet%d",i), "(nJet>0)*weight");
    hminusYWjet[i]->Scale(1./hminusYWjet[i]->Integral());
    
  }

  TLegend *leg = new TLegend(0.6, 0.65, 0.85, 0.89);
  TCanvas *c[cN];

  for(Int_t i = 0; i < cN; i++){
    c[i] = new TCanvas(Form("c%d",i), "", 800, 600);
  }

  for(Int_t i = 0; i < N; i++){

    if( i < 2 ) leg->AddEntry(hnJet[i], legName[i].data(), "f");
    else leg->AddEntry(hnJet[i], legName[i].data(), "pl");

    c[0]->cd()->SetLogy();
    hnJet[i]->SetTitle("Jet multiplicity");
    hnJet[i]->GetXaxis()->SetTitle("Jet multiplicity");
    drawHisto(leg, hnJet, &i);

    c[1]->cd();
    hjetPt[i]->SetTitle("Leading Jet p_{T}");
    hjetPt[i]->GetXaxis()->SetTitle("Leading Jet p_{T} [GeV]");
    hjetPt[i]->GetYaxis()->SetRangeUser(0, 0.31);
    drawHisto(leg, hjetPt, &i);
   
    c[2]->cd();
    hjetEta[i]->SetTitle("Leading Jet #eta");
    hjetEta[i]->GetXaxis()->SetTitle("Leading Jet #eta");
    hjetEta[i]->GetYaxis()->SetRangeUser(0, 0.075);
    drawHisto(leg, hjetEta, &i);
 
    c[3]->cd();
    hMet[i]->SetTitle("Leading #slashE_{T}");
    hMet[i]->GetXaxis()->SetTitle("Leading #slashE_{T} [GeV]");
    hMet[i]->GetYaxis()->SetRangeUser(0, 0.3);
    drawHisto(leg, hMet, &i);

    c[4]->cd();
    hlepPt[i]->SetTitle("Leading p_{T}^{e}");
    hlepPt[i]->GetXaxis()->SetTitle("Leading p_{T}^{e} [GeV]");
    hlepPt[i]->GetYaxis()->SetRangeUser(0, 0.31);
    drawHisto(leg, hlepPt, &i);

    c[5]->cd();
    hplusYlepjet[i]->SetTitle("[Y_{lep} + Y_{jet}]/2");
    hplusYlepjet[i]->GetXaxis()->SetTitle("[Y_{lep} + Y_{jet}]/2");
    hplusYlepjet[i]->GetYaxis()->SetRangeUser(0, 0.055);
    drawHisto(leg, hplusYlepjet, &i);
 
    c[6]->cd();
    hminusYlepjet[i]->SetTitle("[Y_{lep} - Y_{jet}]/2");
    hminusYlepjet[i]->GetXaxis()->SetTitle("[Y_{lep} - Y_{jet}]/2");
    hminusYlepjet[i]->GetYaxis()->SetRangeUser(0, 0.13);
    drawHisto(leg, hminusYlepjet, &i);

    c[7]->cd();
    hplusYWjet[i]->SetTitle("[Y_{W} + Y_{jet}]/2");
    hplusYWjet[i]->GetXaxis()->SetTitle("[Y_{W} + Y_{jet}]/2");
    hplusYWjet[i]->GetYaxis()->SetRangeUser(0, 0.055);
    drawHisto(leg, hplusYWjet, &i);
 
    c[8]->cd();
    hminusYWjet[i]->SetTitle("[Y_{W} - Y_{jet}]/2");
    hminusYWjet[i]->GetXaxis()->SetTitle("[Y_{W} - Y_{jet}]/2");
    hminusYWjet[i]->GetYaxis()->SetRangeUser(0, 0.25);
    drawHisto(leg, hminusYWjet, &i);
    
  }
  
  c[0]->Print("WplusJet.pdf(", "pdf");
  for(Int_t i = 0; i < cN; i++){
    if( i > 0 && i < cN-1 ) c[i]->Print("WplusJet.pdf", "pdf");
  }
  c[cN-1]->Print("WplusJet.pdf)", "pdf");

}