]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGHF/vertexingHF/macros/HFPtSpectrumRaa.C
Adding Tab values for QpPb analysis
[u/mrichter/AliRoot.git] / PWGHF / vertexingHF / macros / HFPtSpectrumRaa.C
index 18d2dd7fd05e6e75e3dcf4ad7f5fb3d24faaf578..903250fa34da3c516ff7b154c77bf139205daac4 100644 (file)
@@ -50,7 +50,8 @@
 //
 ///////////////////////////////////////////////////////////////////////////////
 
-enum centrality{ kpp, k07half, kpPb0100, k010, k1020, k020, k2040, k2030, k3040, k4050, k3050, k5060, k4060, k6080, k4080, k5080, k80100 };
+enum centrality{ kpp, k07half, kpPb0100, k010, k1020, k020, k2040, k2030, k3040, k4050, k3050, k5060, k4060, k6080, k4080, k5080, k80100, kpPb020, kpPb2040, kpPb4060, kpPb60100 };
+enum centestimator{ kV0M, kV0A, kZNA };
 enum energy{ k276, k5dot023, k55 };
 enum BFDSubtrMethod { kfc, kNb };
 enum RaavsEP {kPhiIntegrated, kInPlane, kOutOfPlane};
@@ -102,6 +103,7 @@ void HFPtSpectrumRaa(const char *ppfile="HFPtSpectrum_D0Kpi_method2_rebinnedth_2
                     Int_t fdMethod = kNb, Int_t cc=kpp, Int_t Energy=k276,
                     Double_t MinHypo=1./3., Double_t MaxHypo=3.0, Double_t MaxRb=6.0,
                     Bool_t isRbHypo=false, Double_t CentralHypo = 1.0,
+                    Int_t ccestimator = kV0M,
                     Bool_t isUseTaaForRaa=true, const char *shadRbcFile="", Int_t nSigmaShad=3.0,
                     Int_t isRaavsEP=kPhiIntegrated, Bool_t isScaledAndExtrapRef=kFALSE)
 {
@@ -121,44 +123,68 @@ void HFPtSpectrumRaa(const char *ppfile="HFPtSpectrum_D0Kpi_method2_rebinnedth_2
   }
   // Values from Alberica's twiki:
   //   https://twiki.cern.ch/twiki/bin/viewauth/ALICE/CentStudies
-  if ( cc == k07half ) {
-    Tab = 24.81; TabSyst = 0.8037;
-  } else if ( cc == k010 ) {
-    Tab = 23.48; TabSyst = 0.97;
-  } else if ( cc == k1020 ) {
-    Tab = 14.4318; TabSyst = 0.5733;
-  } else if ( cc == k020 ) {
-    Tab = 18.93; TabSyst = 0.74;
-  } else if ( cc == k2040 ) {
-    Tab = 6.86; TabSyst = 0.28;
-  } else if ( cc == k2030 ) {
-    Tab = 8.73769; TabSyst = 0.370219;
-  } else if ( cc == k3040 ) {
-    Tab = 5.02755; TabSyst = 0.22099;
-  } else if ( cc == k4050 ) {
-    Tab = 2.68327; TabSyst = 0.137073;
-  } else if ( cc == k3050 ) {
-    Tab = 3.87011; TabSyst = 0.183847;
-  } else if ( cc == k4060 ) {
-    Tab = 2.00;  TabSyst= 0.11;
-  } else if ( cc == k4080 ) {
-    Tab = 1.20451; TabSyst = 0.071843;
-  } else if ( cc == k5060 ) {
-    Tab = 1.32884; TabSyst = 0.0929536;
-  } else if ( cc == k6080 ) {
-    Tab = 0.419; TabSyst = 0.033;
-  } else if ( cc == k5080 ) {
-    Tab = 0.719; TabSyst = 0.054;
-  } else if ( cc == k80100 ){
-    Tab = 0.0690; TabSyst = 0.0062;
+  if( ccestimator == kV0M ) {
+    if ( cc == k07half ) {
+      Tab = 24.81; TabSyst = 0.8037;
+    } else if ( cc == k010 ) {
+      Tab = 23.48; TabSyst = 0.97;
+    } else if ( cc == k1020 ) {
+      Tab = 14.4318; TabSyst = 0.5733;
+    } else if ( cc == k020 ) {
+      Tab = 18.93; TabSyst = 0.74;
+    } else if ( cc == k2040 ) {
+      Tab = 6.86; TabSyst = 0.28;
+    } else if ( cc == k2030 ) {
+      Tab = 8.73769; TabSyst = 0.370219;
+    } else if ( cc == k3040 ) {
+      Tab = 5.02755; TabSyst = 0.22099;
+    } else if ( cc == k4050 ) {
+      Tab = 2.68327; TabSyst = 0.137073;
+    } else if ( cc == k3050 ) {
+      Tab = 3.87011; TabSyst = 0.183847;
+    } else if ( cc == k4060 ) {
+      Tab = 2.00;  TabSyst= 0.11;
+    } else if ( cc == k4080 ) {
+      Tab = 1.20451; TabSyst = 0.071843;
+    } else if ( cc == k5060 ) {
+      Tab = 1.32884; TabSyst = 0.0929536;
+    } else if ( cc == k6080 ) {
+      Tab = 0.419; TabSyst = 0.033;
+    } else if ( cc == k5080 ) {
+      Tab = 0.719; TabSyst = 0.054;
+    } else if ( cc == k80100 ){
+      Tab = 0.0690; TabSyst = 0.0062;
+    }
   }
 
   // pPb Glauber (A. Toia)
   // https://twiki.cern.ch/twiki/bin/viewauth/ALICE/PACentStudies#Glauber_Calculations_with_sigma
-  else if( cc == kpPb0100 ){
+  if( cc == kpPb0100 ){
     Tab = 0.098334; TabSyst = 0.0070679;
     A=207.2; B=1.;
   }
+  else if( ccestimator == kV0A ){
+    if ( cc == kpPb020 ) {
+      Tab = 0.183; TabSyst = 0.0201;
+    } else if ( cc == kpPb2040 ) {
+      Tab = 0.134; TabSyst = 0.0134;
+    } else if ( cc == kpPb4060 ) {
+      Tab = 0.0918; TabSyst = 0.0073;
+    } else if ( cc == kpPb60100 ) {
+      Tab = 0.0366; TabSyst = 0.00183;
+    }
+  }
+  else if( ccestimator == kZNA ){
+    if ( cc == kpPb020 ) {
+      Tab = 0.1650; TabSyst = 0.0550;
+    } else if ( cc == kpPb2040 ) {
+      Tab = 0.137; TabSyst = 0.0372;
+    } else if ( cc == kpPb4060 ) {
+      Tab = 0.1001; TabSyst = 0.0690;
+    } else if ( cc == kpPb60100 ) {
+      Tab = 0.045; TabSyst = 0.1029;
+    }
+  }
 
   //
   // Reading the pp file 
@@ -296,6 +322,10 @@ void HFPtSpectrumRaa(const char *ppfile="HFPtSpectrum_D0Kpi_method2_rebinnedth_2
     TH1D *hRbcShadCentral = (TH1D*)fshad->Get("hDfromBoverDfromc_L0");
     TH1D *hRbcShadMin = (TH1D*)fshad->Get("hDfromBoverDfromc_L0");
     TH1D *hRbcShadMax = (TH1D*)fshad->Get("hDfromBoverDfromc_L1");
+    if(!hRbcShadCentral || !hRbcShadMin || !hRbcShadMax) {
+      cout<< endl <<">> Shadowing input histograms are not ok !! "<<endl<<endl;
+      return;
+    }
     //       nSigmaShad
     //    nSigmaShad
     for(Int_t i=1; i<=nbins; i++) {
@@ -609,8 +639,6 @@ void HFPtSpectrumRaa(const char *ppfile="HFPtSpectrum_D0Kpi_method2_rebinnedth_2
     Double_t minFdSyst = 0., maxFdSyst = 0.;
     if ( ElossHypo == ElossCentral[ hABbin ] ) {
 
-      cout <<endl<<">>>>>>>>>>> tete >>>>>>>>>>>>>>"<<endl<<endl;
-
       //
       // Data stat uncertainty
       //
@@ -770,9 +798,11 @@ void HFPtSpectrumRaa(const char *ppfile="HFPtSpectrum_D0Kpi_method2_rebinnedth_2
     //
     // Filling Eloss scenarii information
     //
+    //    trick in case not fine enough Rb hypothesis to cope with the min/max range
+    //    if( RaaCharm>0 && ( (ElossHypo >= MinHypo && ElossHypo <=MaxHypo) || ElossHypo == ElossCentral[ hABbin ] ) && RaaBeauty<=MaxRb ) {
+    //      by default better not use it, to monitor when this happens (could affect results)
     if( RaaCharm>0 && ElossHypo >= MinHypo && ElossHypo <=MaxHypo && RaaBeauty<=MaxRb ) {
 
-      cout <<endl<<">>>>>>>>>>> tetuu >>>>>>>>>>>>>>"<<endl<<endl;
       Double_t Ehigh =  ElossMax[ hABbin ] ;
       Double_t Elow =  ElossMin[ hABbin ] ;
       if ( RaaCharm > Ehigh ) ElossMax[ hABbin ] = RaaCharm ;