]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Update (Zaida)
authordainese <dainese@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 19 Sep 2010 20:28:38 +0000 (20:28 +0000)
committerdainese <dainese@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 19 Sep 2010 20:28:38 +0000 (20:28 +0000)
PWG3/vertexingHF/macros/HFPtSpectrum.C

index b8f309f78696cbea0a01d43c0c4069fd22ae35fd..660a4a4ac7d5b6a86f4539b082fa00401d41fa18 100644 (file)
@@ -29,7 +29,7 @@ void HFPtSpectrum(const char *mcfilename="FeedDownCorrectionMC.root",
                  const char *efffilename="Efficiencies.root",
                  const char *recofilename="Reconstructed.root",
                  const char *outfilename="HFPtSpectrum.root",
-                 int option=1, double lumi=1.0, double eff_trig=1.0){
+                 int option=1, double lumi=1.0, double effTrig=1.0){
 
   //  Set if calculation considers asymmetric uncertainties or not 
   bool asym = true;
@@ -54,10 +54,10 @@ void HFPtSpectrum(const char *mcfilename="FeedDownCorrectionMC.root",
   //
   TH1D *hDirectMCpt;            // Input MC c-->D spectra
   TH1D *hFeedDownMCpt;          // Input MC b-->D spectra
-  TH1D *hDirectMCpt_max;        // Input MC maximum c-->D spectra
-  TH1D *hDirectMCpt_min;        // Input MC minimum c-->D spectra
-  TH1D *hFeedDownMCpt_max;      // Input MC maximum b-->D spectra
-  TH1D *hFeedDownMCpt_min;      // Input MC minimum b-->D spectra
+  TH1D *hDirectMCptMax;        // Input MC maximum c-->D spectra
+  TH1D *hDirectMCptMin;        // Input MC minimum c-->D spectra
+  TH1D *hFeedDownMCptMax;      // Input MC maximum b-->D spectra
+  TH1D *hFeedDownMCptMin;      // Input MC minimum b-->D spectra
   TH1D *hDirectEffpt;           // c-->D Acceptance and efficiency correction
   TH1D *hFeedDownEffpt;         // b-->D Acceptance and efficiency correction
   TH1D *hRECpt;                 // all reconstructed D
@@ -69,26 +69,26 @@ void HFPtSpectrum(const char *mcfilename="FeedDownCorrectionMC.root",
   if (isD0Kpi){
     hDirectMCpt = (TH1D*)mcfile->Get("hD0Kpipred_central");
     hFeedDownMCpt = (TH1D*)mcfile->Get("hD0KpifromBpred_central");
-    hDirectMCpt_max = (TH1D*)mcfile->Get("hD0Kpipred_max");
-    hDirectMCpt_min = (TH1D*)mcfile->Get("hD0Kpipred_min");
-    hFeedDownMCpt_max = (TH1D*)mcfile->Get("hD0KpifromBpred_max");
-    hFeedDownMCpt_min = (TH1D*)mcfile->Get("hD0KpifromBpred_min");
+    hDirectMCptMax = (TH1D*)mcfile->Get("hD0Kpipred_max");
+    hDirectMCptMin = (TH1D*)mcfile->Get("hD0Kpipred_min");
+    hFeedDownMCptMax = (TH1D*)mcfile->Get("hD0KpifromBpred_max");
+    hFeedDownMCptMin = (TH1D*)mcfile->Get("hD0KpifromBpred_min");
   }
   else if (isDplusKpipi){
     hDirectMCpt = (TH1D*)mcfile->Get("hDpluskpipipred_central");
     hFeedDownMCpt = (TH1D*)mcfile->Get("hDpluskpipifromBpred_central");
-    hDirectMCpt_max = (TH1D*)mcfile->Get("hDpluskpipipred_max");
-    hDirectMCpt_min = (TH1D*)mcfile->Get("hDpluskpipipred_min");
-    hFeedDownMCpt_max = (TH1D*)mcfile->Get("hDpluskpipifromBpred_max");
-    hFeedDownMCpt_min = (TH1D*)mcfile->Get("hDpluskpipifromBpred_min");
+    hDirectMCptMax = (TH1D*)mcfile->Get("hDpluskpipipred_max");
+    hDirectMCptMin = (TH1D*)mcfile->Get("hDpluskpipipred_min");
+    hFeedDownMCptMax = (TH1D*)mcfile->Get("hDpluskpipifromBpred_max");
+    hFeedDownMCptMin = (TH1D*)mcfile->Get("hDpluskpipifromBpred_min");
   }
   //
   hDirectMCpt->SetNameTitle("hDirectMCpt","direct MC spectra");
   hFeedDownMCpt->SetNameTitle("hFeedDownMCpt","feed-down MC spectra");
-  hDirectMCpt_max->SetNameTitle("hDirectMCpt_max","max direct MC spectra");
-  hDirectMCpt_min->SetNameTitle("hDirectMCpt_min","min direct MC spectra");
-  hFeedDownMCpt_max->SetNameTitle("hFeedDownMCpt_max","max feed-down MC spectra");
-  hFeedDownMCpt_min->SetNameTitle("hFeedDownMCpt_min","min feed-down MC spectra");
+  hDirectMCptMax->SetNameTitle("hDirectMCptMax","max direct MC spectra");
+  hDirectMCptMin->SetNameTitle("hDirectMCptMin","min direct MC spectra");
+  hFeedDownMCptMax->SetNameTitle("hFeedDownMCptMax","max feed-down MC spectra");
+  hFeedDownMCptMin->SetNameTitle("hFeedDownMCptMin","min feed-down MC spectra");
   //
   TFile * efffile = new TFile(efffilename,"read");
   hDirectEffpt = (TH1D*)efffile->Get("hDirectEffpt");
@@ -109,15 +109,15 @@ void HFPtSpectrum(const char *mcfilename="FeedDownCorrectionMC.root",
   TH1D *histofc = (TH1D*)hRECpt->Clone();
   histofc->SetNameTitle("histofc","fc correction factor");
   histofc->Reset();
-  TH1D *histofc_max = (TH1D*)histofc->Clone();
-  TH1D *histofc_min = (TH1D*)histofc->Clone();
+  TH1D *histofcMax = (TH1D*)histofc->Clone();
+  TH1D *histofcMin = (TH1D*)histofc->Clone();
   TH1D *histoYieldCorr = (TH1D*)hRECpt->Clone();
   histoYieldCorr->SetNameTitle("histoYieldCorrFc","corrected yield");
   histoYieldCorr->Reset();
-  TH1D *histoYieldCorr_max = (TH1D*)histoYieldCorr->Clone();
-  histoYieldCorr_max->SetNameTitle("histoYieldCorr_max","max corrected yield");
-  TH1D *histoYieldCorr_min = (TH1D*)histoYieldCorr->Clone();
-  histoYieldCorr_min->SetNameTitle("histoYieldCorr_min","min corrected yield");
+  TH1D *histoYieldCorrMax = (TH1D*)histoYieldCorr->Clone();
+  histoYieldCorrMax->SetNameTitle("histoYieldCorrMax","max corrected yield");
+  TH1D *histoYieldCorrMin = (TH1D*)histoYieldCorr->Clone();
+  histoYieldCorrMin->SetNameTitle("histoYieldCorrMin","min corrected yield");
   TH1D *histoSigmaCorr = (TH1D*)hRECpt->Clone();
   histoSigmaCorr->SetNameTitle("histoSigmaCorr","corrected invariant cross-section");
   histoSigmaCorr->Reset();
@@ -143,22 +143,23 @@ void HFPtSpectrum(const char *mcfilename="FeedDownCorrectionMC.root",
   // option specific histos
   if(option==1){
     spectra->SetMCptSpectra(hDirectMCpt,hFeedDownMCpt);
-    if(asym) spectra->SetMCptDistributionsBounds(hDirectMCpt_max,hDirectMCpt_min,hFeedDownMCpt_max,hFeedDownMCpt_min);
+    if(asym) spectra->SetMCptDistributionsBounds(hDirectMCptMax,hDirectMCptMin,hFeedDownMCptMax,hFeedDownMCptMin);
   }
   else if(option==2){
     spectra->SetFeedDownMCptSpectra(hFeedDownMCpt);
-    if(asym) spectra->SetFeedDownMCptDistributionsBounds(hFeedDownMCpt_max,hFeedDownMCpt_min);
+    if(asym) spectra->SetFeedDownMCptDistributionsBounds(hFeedDownMCptMax,hFeedDownMCptMin);
   }
   
   // Set normalization factors (uncertainties set to 0. as example)
   spectra->SetLuminosity(lumi,0.);
-  spectra->SetTriggerEfficiency(eff_trig,0.);
+  spectra->SetTriggerEfficiency(effTrig,0.);
 
   // Do the calculations
   cout << " Doing the calculation... "<< endl;
-  double delta_y = 1.0;
-  double BR_c=1.0, BR_b_decay=1.0;
-  spectra->ComputeHFPtSpectrum(delta_y,BR_c,BR_b_decay);
+  double deltaY = 1.0;
+  double branchingRatioC = 1.0;
+  double branchingRatioBintoFinalDecay = 1.0; // this is relative to the input theoretical prediction
+  spectra->ComputeHFPtSpectrum(deltaY,branchingRatioC,branchingRatioBintoFinalDecay);
   cout << "   ended the calculation, getting the histograms back " << endl;
 
   //
@@ -167,8 +168,8 @@ void HFPtSpectrum(const char *mcfilename="FeedDownCorrectionMC.root",
   // the corrected yield and cross-section
   histoYieldCorr = (TH1D*)spectra->GetHistoFeedDownCorrectedSpectrum();
   histoSigmaCorr = (TH1D*)spectra->GetHistoCrossSectionFromYieldSpectrum();
-  histoYieldCorr_max = (TH1D*)spectra->GetHistoUpperLimitFeedDownCorrectedSpectrum(); 
-  histoYieldCorr_min = (TH1D*)spectra->GetHistoLowerLimitFeedDownCorrectedSpectrum(); 
+  histoYieldCorrMax = (TH1D*)spectra->GetHistoUpperLimitFeedDownCorrectedSpectrum(); 
+  histoYieldCorrMin = (TH1D*)spectra->GetHistoLowerLimitFeedDownCorrectedSpectrum(); 
   if (asym) {
     gSigmaCorr = spectra->GetCrossSectionFromYieldSpectrum();
     gYieldCorr = spectra->GetFeedDownCorrectedSpectrum(); 
@@ -180,13 +181,13 @@ void HFPtSpectrum(const char *mcfilename="FeedDownCorrectionMC.root",
   }
   if (option==1){
     // fc histos
-    histofc = (TH1D*)spectra->GetHistoFeedDownCorrection_fc();
-    histofc_max = (TH1D*)spectra->GetHistoUpperLimitFeedDownCorrection_fc();
-    histofc_min = (TH1D*)spectra->GetHistoLowerLimitFeedDownCorrection_fc();
-    histofc_max->SetNameTitle("hfc_max","max fc correction factor");
-    histofc_min->SetNameTitle("histofc_min","min fc correction factor");
+    histofc = (TH1D*)spectra->GetHistoFeedDownCorrectionFc();
+    histofcMax = (TH1D*)spectra->GetHistoUpperLimitFeedDownCorrectionFc();
+    histofcMin = (TH1D*)spectra->GetHistoLowerLimitFeedDownCorrectionFc();
+    histofcMax->SetNameTitle("hfcMax","max fc correction factor");
+    histofcMin->SetNameTitle("histofcMin","min fc correction factor");
     if (asym) {
-      gFc = spectra->GetFeedDownCorrection_fc();
+      gFc = spectra->GetFeedDownCorrectionFc();
       gFc->SetNameTitle("gFc","gFc");
       gYieldCorr->SetNameTitle("gYieldCorr","gYieldCorr (by fc)");
       gSigmaCorr->SetNameTitle("gSigmaCorr","gSigmaCorr (by fc)");
@@ -206,28 +207,28 @@ void HFPtSpectrum(const char *mcfilename="FeedDownCorrectionMC.root",
   if (option==1) {
 
     TCanvas * cfc = new TCanvas("cfc","Fc");
-    histofc_max->Draw("c");
+    histofcMax->Draw("c");
     histofc->Draw("csame");
-    histofc_min->Draw("csame");
+    histofcMin->Draw("csame");
     cfc->Update();
 
     if (asym) {
-      TH2F *histofc_draw= new TH2F("histofc_draw","histofc (for drawing)",100,0,33.25,100,0.01,1.25);
-      histofc_draw->SetStats(0);
-      histofc_draw->GetXaxis()->SetTitle("p_{T}  [GeV]");
-      histofc_draw ->GetXaxis()->SetTitleSize(0.05);
-      histofc_draw->GetXaxis()->SetTitleOffset(0.95);
-      histofc_draw->GetYaxis()->SetTitle(" fc ");
-      histofc_draw->GetYaxis()->SetTitleSize(0.05);
-      TCanvas *cfc_asym = new TCanvas("cfc_asym","Asymmetric fc (TGraphAsymmErr)");
+      TH2F *histofcDraw= new TH2F("histofcDraw","histofc (for drawing)",100,0,33.25,100,0.01,1.25);
+      histofcDraw->SetStats(0);
+      histofcDraw->GetXaxis()->SetTitle("p_{T}  [GeV]");
+      histofcDraw ->GetXaxis()->SetTitleSize(0.05);
+      histofcDraw->GetXaxis()->SetTitleOffset(0.95);
+      histofcDraw->GetYaxis()->SetTitle(" fc ");
+      histofcDraw->GetYaxis()->SetTitleSize(0.05);
+      TCanvas *cfcAsym = new TCanvas("cfcAsym","Asymmetric fc (TGraphAsymmErr)");
       gFc->SetFillStyle(3001);
       gFc->SetLineWidth(3);
       gFc->SetMarkerStyle(20);
       gFc->SetFillColor(3);
-      histofc_draw->Draw();
+      histofcDraw->Draw();
       gFc->Draw("3Csame");
       gFc->Draw("Xsame");
-      cfc_asym->Update();
+      cfcAsym->Update();
     }
 
   }
@@ -253,45 +254,45 @@ void HFPtSpectrum(const char *mcfilename="FeedDownCorrectionMC.root",
 
   if (asym) { 
 
-      TH2F *histo_draw = new TH2F("histo_draw","histo (for drawing)",100,0,33.25,100,50.,1e7);
+      TH2F *histoDraw = new TH2F("histoDraw","histo (for drawing)",100,0,33.25,100,50.,1e7);
       float max = 1.1*gYieldCorr->GetMaximum();
-      histo_draw->SetAxisRange(0.1,max,"Y");
-      histo_draw->SetStats(0);
-      histo_draw->GetXaxis()->SetTitle("p_{T}  [GeV]");
-      histo_draw->GetXaxis()->SetTitleSize(0.05);
-      histo_draw->GetXaxis()->SetTitleOffset(0.95);
-      histo_draw->GetYaxis()->SetTitle("#frac{d#N}{dp_{T}} |_{|y|<1} [L & trigger uncorr]");
-      histo_draw->GetYaxis()->SetTitleSize(0.05);
-      TCanvas * cyield_asym = new TCanvas("cyield_asym","Asymmetric corrected yield (TGraphAsymmErr)");
+      histoDraw->SetAxisRange(0.1,max,"Y");
+      histoDraw->SetStats(0);
+      histoDraw->GetXaxis()->SetTitle("p_{T}  [GeV]");
+      histoDraw->GetXaxis()->SetTitleSize(0.05);
+      histoDraw->GetXaxis()->SetTitleOffset(0.95);
+      histoDraw->GetYaxis()->SetTitle("#frac{d#N}{dp_{T}} |_{|y|<1} [L & trigger uncorr]");
+      histoDraw->GetYaxis()->SetTitleSize(0.05);
+      TCanvas * cyieldAsym = new TCanvas("cyieldAsym","Asymmetric corrected yield (TGraphAsymmErr)");
       gYieldCorr->SetFillStyle(3001);
       gYieldCorr->SetLineWidth(3);
       gYieldCorr->SetMarkerStyle(20);
       gYieldCorr->SetFillColor(3);
-      histo_draw->Draw();
+      histoDraw->Draw();
       gYieldCorr->Draw("3Csame");
       gYieldCorr->Draw("Xsame");
-      cyield_asym->SetLogy();
-      cyield_asym->Update();
+      cyieldAsym->SetLogy();
+      cyieldAsym->Update();
 
-      TH2F *histo2_draw = new TH2F("histo2_draw","histo2 (for drawing)",100,0,33.25,100,50.,1e9);
+      TH2F *histo2Draw = new TH2F("histo2Draw","histo2 (for drawing)",100,0,33.25,100,50.,1e9);
       max = 1.1*gSigmaCorr->GetMaximum();
-      histo2_draw->SetAxisRange(0.1,max,"Y");
-      histo2_draw->SetStats(0);
-      histo2_draw->GetXaxis()->SetTitle("p_{T}  [GeV]");
-      histo2_draw->GetXaxis()->SetTitleSize(0.05);
-      histo2_draw->GetXaxis()->SetTitleOffset(0.95);
-      histo2_draw->GetYaxis()->SetTitle("#frac{1}{BR} #times #frac{d#sigma}{dp_{T}} |_{|y|<1}");
-      histo2_draw->GetYaxis()->SetTitleSize(0.05);
-      TCanvas * csigma_asym = new TCanvas("csigma_asym","Asymmetric corrected sigma (TGraphAsymmErr)");
+      histo2Draw->SetAxisRange(0.1,max,"Y");
+      histo2Draw->SetStats(0);
+      histo2Draw->GetXaxis()->SetTitle("p_{T}  [GeV]");
+      histo2Draw->GetXaxis()->SetTitleSize(0.05);
+      histo2Draw->GetXaxis()->SetTitleOffset(0.95);
+      histo2Draw->GetYaxis()->SetTitle("#frac{1}{BR} #times #frac{d#sigma}{dp_{T}} |_{|y|<1}");
+      histo2Draw->GetYaxis()->SetTitleSize(0.05);
+      TCanvas * csigmaAsym = new TCanvas("csigmaAsym","Asymmetric corrected sigma (TGraphAsymmErr)");
       gSigmaCorr->SetFillStyle(3001);
       gSigmaCorr->SetLineWidth(3);
       gSigmaCorr->SetMarkerStyle(21);
       gSigmaCorr->SetFillColor(4);
-      histo2_draw->Draw();
+      histo2Draw->Draw();
       gSigmaCorr->Draw("3Csame");
       gSigmaCorr->Draw("Xsame");
-      csigma_asym->SetLogy();
-      csigma_asym->Update();
+      csigmaAsym->SetLogy();
+      csigmaAsym->Update();
   }
  
 
@@ -302,13 +303,13 @@ void HFPtSpectrum(const char *mcfilename="FeedDownCorrectionMC.root",
   out->cd();
   //
   hDirectMCpt->Write();         hFeedDownMCpt->Write();
-  hDirectMCpt_max->Write();     hDirectMCpt_min->Write();
-  hFeedDownMCpt_max->Write();   hFeedDownMCpt_min->Write();
+  hDirectMCptMax->Write();     hDirectMCptMin->Write();
+  hFeedDownMCptMax->Write();   hFeedDownMCptMin->Write();
   hDirectEffpt->Write();        hFeedDownEffpt->Write();
   hRECpt->Write();
   //
   histoYieldCorr->Write();
-  histoYieldCorr_max->Write();     histoYieldCorr_min->Write();   
+  histoYieldCorrMax->Write();     histoYieldCorrMin->Write();   
   histoSigmaCorr->Write();
 
   if(asym){
@@ -318,7 +319,7 @@ void HFPtSpectrum(const char *mcfilename="FeedDownCorrectionMC.root",
 
   if(option==1){
     histofc->Write();
-    histofc_max->Write();     histofc_min->Write();   
+    histofcMax->Write();     histofcMin->Write();   
     if(asym) gFc->Write();
   }