Updates
authormorsch <andreas.morsch@cern.ch>
Fri, 21 Mar 2014 15:34:30 +0000 (16:34 +0100)
committermorsch <andreas.morsch@cern.ch>
Fri, 21 Mar 2014 15:34:30 +0000 (16:34 +0100)
Alberica

ANALYSIS/AliCentralitySelectionTask.cxx
ANALYSIS/AliCentralitySelectionTask.h
OADB/AliOADBCentrality.h
STEER/STEERBase/AliCentrality.cxx
STEER/STEERBase/AliCentrality.h

index bfe0487..bef6748 100644 (file)
@@ -131,6 +131,7 @@ AliAnalysisTaskSE(),
   fCSEMIbit(0),
   fCentV0M(0),
   fCentV0A(0),
+  fCentV0A0(0),
   fCentV0A123(0),
   fCentV0C(0),
   fCentV0MEq(0),
@@ -168,6 +169,7 @@ AliAnalysisTaskSE(),
   fCentZPCtrue(0),
   fHtempV0M(0),
   fHtempV0A(0),
+  fHtempV0A0(0),
   fHtempV0A123(0),
   fHtempV0C(0),
   fHtempV0MEq(0),
@@ -206,6 +208,7 @@ AliAnalysisTaskSE(),
   fOutputList(0),
   fHOutCentV0M(0),
   fHOutCentV0A(0),
+  fHOutCentV0A0(0),
   fHOutCentV0A123(0),
   fHOutCentV0C(0),
   fHOutCentV0MEq(0),
@@ -272,6 +275,7 @@ AliAnalysisTaskSE(),
   fHOutMultV0AC(0),
   fHOutMultV0M(0),
   fHOutMultV0A(0),
+  fHOutMultV0A0(0),
   fHOutMultV0A123(0),
   fHOutMultV0C(0),
   fHOutMultV0MEq(0),
@@ -385,6 +389,7 @@ AliCentralitySelectionTask::AliCentralitySelectionTask(const char *name):
   fCSEMIbit(0),
   fCentV0M(0),
   fCentV0A(0),
+  fCentV0A0(0),
   fCentV0A123(0),
   fCentV0C(0),
   fCentV0MEq(0),
@@ -422,6 +427,7 @@ AliCentralitySelectionTask::AliCentralitySelectionTask(const char *name):
   fCentZPCtrue(0),
   fHtempV0M(0),
   fHtempV0A(0),
+  fHtempV0A0(0),
   fHtempV0A123(0),
   fHtempV0C(0),
   fHtempV0MEq(0),
@@ -460,6 +466,7 @@ AliCentralitySelectionTask::AliCentralitySelectionTask(const char *name):
   fOutputList(0),
   fHOutCentV0M(0),
   fHOutCentV0A(0),
+  fHOutCentV0A0(0),
   fHOutCentV0A123(0),
   fHOutCentV0C(0),
   fHOutCentV0MEq(0),
@@ -526,6 +533,7 @@ AliCentralitySelectionTask::AliCentralitySelectionTask(const char *name):
   fHOutMultV0AC(0),
   fHOutMultV0M(0),
   fHOutMultV0A(0),
+  fHOutMultV0A0(0),
   fHOutMultV0A123(0),
   fHOutMultV0C(0),
   fHOutMultV0MEq(0),
@@ -649,6 +657,7 @@ AliCentralitySelectionTask::AliCentralitySelectionTask(const AliCentralitySelect
   fCSEMIbit(ana.fCSEMIbit),
   fCentV0M(ana.fCentV0M),
   fCentV0A(ana.fCentV0A),
+  fCentV0A0(ana.fCentV0A0),
   fCentV0A123(ana.fCentV0A123),
   fCentV0C(ana.fCentV0C),
   fCentV0MEq(ana.fCentV0MEq),
@@ -686,6 +695,7 @@ AliCentralitySelectionTask::AliCentralitySelectionTask(const AliCentralitySelect
   fCentZPCtrue(ana.fCentZPCtrue),
   fHtempV0M(ana.fHtempV0M),
   fHtempV0A(ana.fHtempV0A),
+  fHtempV0A0(ana.fHtempV0A0),
   fHtempV0A123(ana.fHtempV0A123),
   fHtempV0C(ana.fHtempV0C),
   fHtempV0MEq(ana.fHtempV0MEq),
@@ -724,6 +734,7 @@ AliCentralitySelectionTask::AliCentralitySelectionTask(const AliCentralitySelect
   fOutputList(ana.fOutputList),
   fHOutCentV0M(ana.fHOutCentV0M),
   fHOutCentV0A(ana.fHOutCentV0A),
+  fHOutCentV0A0(ana.fHOutCentV0A0),
   fHOutCentV0A123(ana.fHOutCentV0A123),
   fHOutCentV0C(ana.fHOutCentV0C),
   fHOutCentV0MEq(ana.fHOutCentV0MEq),
@@ -790,6 +801,7 @@ AliCentralitySelectionTask::AliCentralitySelectionTask(const AliCentralitySelect
   fHOutMultV0AC(ana.fHOutMultV0AC),
   fHOutMultV0M(ana.fHOutMultV0M),
   fHOutMultV0A(ana.fHOutMultV0A),
+  fHOutMultV0A0(ana.fHOutMultV0A0),
   fHOutMultV0A123(ana.fHOutMultV0A123),
   fHOutMultV0C(ana.fHOutMultV0C),
   fHOutMultV0MEq(ana.fHOutMultV0MEq),
@@ -867,6 +879,7 @@ void AliCentralitySelectionTask::UserCreateOutputObjects()
     fOutputList->SetOwner();
     fHOutCentV0M     = new TH1F("fHOutCentV0M","fHOutCentV0M; Centrality V0",505,0,101);
     fHOutCentV0A    = new TH1F("fHOutCentV0A","fHOutCentV0A; Centrality V0A",505,0,101);
+    fHOutCentV0A0 = new TH1F("fHOutCentV0A0","fHOutCentV0A0; Centrality V0A-0",505,0,101);
     fHOutCentV0A123 = new TH1F("fHOutCentV0A123","fHOutCentV0A123; Centrality V0A-123",505,0,101);
     fHOutCentV0C    = new TH1F("fHOutCentV0C","fHOutCentV0C; Centrality V0C",505,0,101);
     fHOutCentV0MEq     = new TH1F("fHOutCentV0MEq","fHOutCentV0MEq; Centrality V0 equalized",505,0,101);
@@ -934,6 +947,7 @@ void AliCentralitySelectionTask::UserCreateOutputObjects()
     fHOutMultV0AC = new TH2F("fHOutMultV0AC","fHOutMultV0AC; Multiplicity V0A; Multiplicity V0C",1000,0,1000,1000,0,1000);
     fHOutMultV0M  = new TH1F("fHOutMultV0M","fHOutMultV0M; Multiplicity V0",25000,0,25000);
     fHOutMultV0A  = new TH1F("fHOutMultV0A","fHOutMultV0A; Multiplicity V0",25000,0,25000);
+    fHOutMultV0A0  = new TH1F("fHOutMultV0A0","fHOutMultV0A0; Multiplicity V0A-0",25000,0,25000);
     fHOutMultV0A123  = new TH1F("fHOutMultV0A123","fHOutMultV0A123; Multiplicity V0A-123",25000,0,25000);
     fHOutMultV0C  = new TH1F("fHOutMultV0C","fHOutMultV0C; Multiplicity V0",25000,0,25000);
     fHOutMultV0MEq  = new TH1F("fHOutMultV0MEq","fHOutMultV0MEq; Multiplicity V0",25000,0,25000);
@@ -993,6 +1007,7 @@ void AliCentralitySelectionTask::UserCreateOutputObjects()
   
     fOutputList->Add(fHOutCentV0M);
     fOutputList->Add(fHOutCentV0A);
+    fOutputList->Add(fHOutCentV0A0);
     fOutputList->Add(fHOutCentV0A123);
     fOutputList->Add(fHOutCentV0C);
     fOutputList->Add(fHOutCentV0MEq);
@@ -1060,6 +1075,7 @@ void AliCentralitySelectionTask::UserCreateOutputObjects()
     fOutputList->Add(fHOutMultV0AC); 
     fOutputList->Add(fHOutMultV0M); 
     fOutputList->Add(fHOutMultV0A); 
+    fOutputList->Add(fHOutMultV0A0); 
     fOutputList->Add(fHOutMultV0A123); 
     fOutputList->Add(fHOutMultV0C); 
     fOutputList->Add(fHOutMultV0MEq); 
@@ -1155,6 +1171,7 @@ void AliCentralitySelectionTask::UserExec(Option_t */*option*/)
   Float_t  spdCorr =0;              //  corrected spd2 multiplicity
   Int_t    multCND = 0;             //  no. tracks (candle condition)
 
+  Float_t  multV0A0 = 0;           //  multiplicity from V0 reco side A (ring 0)
   Float_t  multV0A123 = 0;          //  multiplicity from V0 reco side A (ring 1-2-3)
   Float_t  multV0A  = 0;            //  multiplicity from V0 reco side A
   Float_t  multV0C  = 0;            //  multiplicity from V0 reco side C
@@ -1203,8 +1220,7 @@ void AliCentralitySelectionTask::UserExec(Option_t */*option*/)
 
   if (esd) {
     if (strcmp(esd->GetESDRun()->GetBeamType(), "A-A") == 0) runType=0;
-    else runType=1;
-    if (strcmp(esd->GetESDRun()->GetBeamType(), "p-p") == 0) runType=2;
+    else runType=1;  
   } else {
     Int_t runNumber = event->GetRunNumber();
     if ((runNumber >= 136851 && runNumber <= 139517) ||  // LHC10h
@@ -1236,6 +1252,8 @@ void AliCentralitySelectionTask::UserExec(Option_t */*option*/)
   multV0C=esdV0->GetMTotV0C();
 
   // excluding innermost V0A ring
+  for (int i=32; i<40; i++)
+    multV0A0 += esdV0->GetMultiplicity(i);
   for (int i=40; i<64; i++)
     multV0A123 += esdV0->GetMultiplicity(i);
 
@@ -1553,6 +1571,7 @@ void AliCentralitySelectionTask::UserExec(Option_t */*option*/)
   // ***** Centrality Selection
   if(fHtempV0M) fCentV0M = fHtempV0M->GetBinContent(fHtempV0M->FindBin((v0Corr)));
   if(fHtempV0A) fCentV0A = fHtempV0A->GetBinContent(fHtempV0A->FindBin((multV0ACorr)));
+  if(fHtempV0A0) fCentV0A0 = fHtempV0A0->GetBinContent(fHtempV0A0->FindBin((multV0A0)));
   if(fHtempV0A123) fCentV0A123 = fHtempV0A123->GetBinContent(fHtempV0A123->FindBin((multV0A123)));
   if(fHtempV0C) fCentV0C = fHtempV0C->GetBinContent(fHtempV0C->FindBin((multV0CCorr)));
   if(fHtempV0MEq) fCentV0MEq = fHtempV0MEq->GetBinContent(fHtempV0MEq->FindBin((multV0AEq+multV0CEq)));
@@ -1641,6 +1660,7 @@ void AliCentralitySelectionTask::UserExec(Option_t */*option*/)
     esdCent->SetQuality(fQuality);
     esdCent->SetCentralityV0M(fCentV0M);
     esdCent->SetCentralityV0A(fCentV0A);
+    esdCent->SetCentralityV0A123(fCentV0A0);
     esdCent->SetCentralityV0A123(fCentV0A123);
     esdCent->SetCentralityV0C(fCentV0C);
     esdCent->SetCentralityV0MEq(fCentV0MEq);
@@ -1660,24 +1680,6 @@ void AliCentralitySelectionTask::UserExec(Option_t */*option*/)
     esdCent->SetCentralityV0MvsFMD(fCentV0MvsFMD);
     esdCent->SetCentralityTKLvsV0M(fCentTKLvsV0M);
     esdCent->SetCentralityZEMvsZDC(fCentZEMvsZDC);
-
-    esdCent->SetCentralityV0Mtrue(fCentV0Mtrue);
-    esdCent->SetCentralityV0Atrue(fCentV0Atrue);
-    esdCent->SetCentralityV0Ctrue(fCentV0Ctrue);
-    // no setters in AliCentrality for
-    // fCentV0MEqtrue
-    // fCentV0AEqtrue
-    // fCentV0CEqtrue
-    esdCent->SetCentralityFMDtrue(fCentFMDtrue);
-    esdCent->SetCentralityTRKtrue(fCentTRKtrue);
-    esdCent->SetCentralityTKLtrue(fCentTKLtrue);
-    esdCent->SetCentralityCL0true(fCentCL0true);
-    esdCent->SetCentralityCL1true(fCentCL1true);
-    esdCent->SetCentralityCNDtrue(fCentCNDtrue);
-    esdCent->SetCentralityZNAtrue(fCentZNAtrue);
-    esdCent->SetCentralityZNCtrue(fCentZNCtrue);
-    esdCent->SetCentralityZPAtrue(fCentZPAtrue);
-    esdCent->SetCentralityZPCtrue(fCentZPCtrue);
   }
 
   // filling QA histograms
@@ -1718,9 +1720,8 @@ void AliCentralitySelectionTask::UserExec(Option_t */*option*/)
     if (fPHS) fHOutCentV0MPHS->Fill(fCentV0M);
 
     if (((((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected() & AliVEvent::kMB) && (runType==0)) ||
-       ((((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected() & AliVEvent::kINT7) && (runType==1)) || 
-       ((((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected() & AliVEvent::kMB) && (runType==2)) ) { // fill the QA histograms only for MB events!
-      
+       ((((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected() & AliVEvent::kINT7) && (runType==1))) { // fill the QA histograms only for MB events!
+
       fHOutQuality->Fill(fQuality);
       fHOutVertex->Fill(zvtx);
       fHOutVertexT0->Fill(zvtxT0);
@@ -1728,6 +1729,7 @@ void AliCentralitySelectionTask::UserExec(Option_t */*option*/)
       if (fQuality==0) {  
        fHOutCentV0M->Fill(fCentV0M);
        fHOutCentV0A->Fill(fCentV0A);
+       fHOutCentV0A0->Fill(fCentV0A0);
        fHOutCentV0A123->Fill(fCentV0A123);
        fHOutCentV0C->Fill(fCentV0C);
        fHOutCentV0MEq->Fill(fCentV0MEq);
@@ -1786,6 +1788,7 @@ void AliCentralitySelectionTask::UserExec(Option_t */*option*/)
        fHOutMultV0AC->Fill(multV0A,multV0C);
        fHOutMultV0M->Fill(multV0ACorr+multV0CCorr);
        fHOutMultV0A->Fill(multV0ACorr);
+       fHOutMultV0A0->Fill(multV0A0);
        fHOutMultV0A123->Fill(multV0A123);
        fHOutMultV0C->Fill(multV0CCorr);
        fHOutMultV0MEq->Fill(multV0AEq+multV0CEq);
@@ -1896,6 +1899,7 @@ Int_t AliCentralitySelectionTask::SetupRun(const AliVEvent* const esd)
   // centrality histos
   fHtempV0M       = centOADB->V0hist(); 
   fHtempV0A       = centOADB->V0Ahist(); 
+  fHtempV0A0      = centOADB->V0A0hist(); 
   fHtempV0A123    = centOADB->V0A123hist(); 
   fHtempV0C       = centOADB->V0Chist(); 
   fHtempV0MEq     = centOADB->V0Eqhist(); 
index dcd8d29..b298c44 100644 (file)
@@ -107,6 +107,7 @@ class AliCentralitySelectionTask : public AliAnalysisTaskSE {
 
   Float_t  fCentV0M;            // percentile centrality from V0
   Float_t  fCentV0A;            // percentile centrality from V0A
+  Float_t  fCentV0A0;         // percentile centrality from V0A-123
   Float_t  fCentV0A123;         // percentile centrality from V0A-123
   Float_t  fCentV0C;            // percentile centrality from V0C
   Float_t  fCentV0MEq;          // percentile centrality from V0 equalized channel
@@ -147,6 +148,7 @@ class AliCentralitySelectionTask : public AliAnalysisTaskSE {
 
   TH1F    *fHtempV0M;           // histogram with centrality vs multiplicity using V0
   TH1F    *fHtempV0A;           // histogram with centrality vs multiplicity using V0A
+  TH1F    *fHtempV0A0;          // histogram with centrality vs multiplicity using V0A-123
   TH1F    *fHtempV0A123;        // histogram with centrality vs multiplicity using V0A-123
   TH1F    *fHtempV0C;           // histogram with centrality vs multiplicity using V0C
   TH1F    *fHtempV0MEq;         // histogram with centrality vs multiplicity using V0  equalized channel
@@ -189,6 +191,7 @@ class AliCentralitySelectionTask : public AliAnalysisTaskSE {
 
   TH1F *fHOutCentV0M    ;       //control histogram for centrality
   TH1F *fHOutCentV0A    ;       //control histogram for centrality
+  TH1F *fHOutCentV0A0   ;       //control histogram for centrality
   TH1F *fHOutCentV0A123 ;       //control histogram for centrality
   TH1F *fHOutCentV0C    ;       //control histogram for centrality
   TH1F *fHOutCentV0MEq  ;       //control histogram for centrality
@@ -256,6 +259,7 @@ class AliCentralitySelectionTask : public AliAnalysisTaskSE {
   TH2F *fHOutMultV0AC;          //control histogram for multiplicity
   TH1F *fHOutMultV0M ;          //control histogram for multiplicity
   TH1F *fHOutMultV0A ;          //control histogram for multiplicity
+  TH1F *fHOutMultV0A0 ;         //control histogram for multiplicity
   TH1F *fHOutMultV0A123 ;       //control histogram for multiplicity
   TH1F *fHOutMultV0C ;          //control histogram for multiplicity
   TH1F *fHOutMultV0MEq ;        //control histogram for multiplicity
index 210ae96..12d3b4d 100644 (file)
@@ -52,6 +52,7 @@ class AliOADBCentrality : public TNamed {
 
   TH1F*   V0hist()         const  {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0M_percentile")));}
   TH1F*   V0Ahist()        const  {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0A_percentile")));}
+  TH1F*   V0A0hist()       const  {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0A0_percentile")));}
   TH1F*   V0A123hist()     const  {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0A123_percentile")));}
   TH1F*   V0Chist()        const  {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0C_percentile")));}
   TH1F*   V0Eqhist()       const  {return ((TH1F*) (Hists1D()->FindObject("fHOutMultV0MEq_percentile")));}
index f309eb1..beabdeb 100644 (file)
@@ -27,6 +27,7 @@ AliCentrality::AliCentrality() : TNamed("Centrality", "Centrality"),
   fQuality(999),
   fCentralityV0M(0),
   fCentralityV0A(0),
+  fCentralityV0A0(0),
   fCentralityV0A123(0),
   fCentralityV0C(0),
   fCentralityV0MEq(0),
@@ -71,6 +72,7 @@ AliCentrality::AliCentrality(const AliCentrality& cnt) :
   fQuality(cnt.fQuality), 
   fCentralityV0M(cnt.fCentralityV0M),
   fCentralityV0A(cnt.fCentralityV0A),
+  fCentralityV0A0(cnt.fCentralityV0A0),
   fCentralityV0A123(cnt.fCentralityV0A123),
   fCentralityV0C(cnt.fCentralityV0C),
   fCentralityV0MEq(cnt.fCentralityV0MEq),
@@ -118,6 +120,7 @@ AliCentrality& AliCentrality::operator=(const AliCentrality& c)
     fQuality = c.fQuality;
     fCentralityV0M = c.fCentralityV0M;
     fCentralityV0A = c.fCentralityV0A;
+    fCentralityV0A0 = c.fCentralityV0A0;
     fCentralityV0A123 = c.fCentralityV0A123;
     fCentralityV0C = c.fCentralityV0C;
     fCentralityV0MEq = c.fCentralityV0MEq;
@@ -175,6 +178,7 @@ Float_t AliCentrality::GetCentralityPercentile(const char *x) const
     TString method = x;
     if(method.CompareTo("V0M")==0)      return fCentralityV0M;
     if(method.CompareTo("V0A")==0)      return fCentralityV0A;
+    if(method.CompareTo("V0A0")==0)   return fCentralityV0A0;
     if(method.CompareTo("V0A123")==0)   return fCentralityV0A123;
     if(method.CompareTo("V0C")==0)      return fCentralityV0C;
     if(method.CompareTo("V0MEq")==0)    return fCentralityV0MEq;
@@ -223,6 +227,7 @@ Int_t AliCentrality::GetCentralityClass10(const char *x) const
     TString method = x;
     if(method.CompareTo("V0M")==0)      return (Int_t) (fCentralityV0M / 10.0);
     if(method.CompareTo("V0A")==0)      return (Int_t) (fCentralityV0A / 10.0);
+    if(method.CompareTo("V0A0")==0)     return (Int_t) (fCentralityV0A0 / 10.0);
     if(method.CompareTo("V0A123")==0)   return (Int_t) (fCentralityV0A123 / 10.0);
     if(method.CompareTo("V0C")==0)      return (Int_t) (fCentralityV0C / 10.0);
     if(method.CompareTo("V0MEq")==0)    return (Int_t) (fCentralityV0MEq / 10.0);
@@ -271,6 +276,7 @@ Int_t AliCentrality::GetCentralityClass5(const char *x) const
     TString method = x;
     if(method.CompareTo("V0M")==0)      return (Int_t) (fCentralityV0M / 5.0);
     if(method.CompareTo("V0A")==0)      return (Int_t) (fCentralityV0A / 5.0);
+    if(method.CompareTo("V0A0")==0)     return (Int_t) (fCentralityV0A0 / 5.0);
     if(method.CompareTo("V0A123")==0)   return (Int_t) (fCentralityV0A123 / 5.0);
     if(method.CompareTo("V0C")==0)      return (Int_t) (fCentralityV0C / 5.0);
     if(method.CompareTo("V0MEq")==0)    return (Int_t) (fCentralityV0MEq / 5.0);
@@ -320,6 +326,7 @@ Bool_t AliCentrality::IsEventInCentralityClass(Float_t a, Float_t b, const char
     TString method = x;
     if ((method.CompareTo("V0M")==0) && (fCentralityV0M >=a && fCentralityV0M < b)) return kTRUE;
     if ((method.CompareTo("V0A")==0) && (fCentralityV0A >=a && fCentralityV0A < b)) return kTRUE;
+    if ((method.CompareTo("V0A0")==0) && (fCentralityV0A0 >=a && fCentralityV0A0 < b)) return kTRUE;
     if ((method.CompareTo("V0A123")==0) && (fCentralityV0A123 >=a && fCentralityV0A123 < b)) return kTRUE;
     if ((method.CompareTo("V0C")==0) && (fCentralityV0C >=a && fCentralityV0C < b)) return kTRUE;
     if ((method.CompareTo("V0MEq")==0) && (fCentralityV0MEq >=a && fCentralityV0MEq < b)) return kTRUE;
@@ -367,6 +374,7 @@ Float_t AliCentrality::GetCentralityPercentileUnchecked(const char *x) const
   TString method = x;
   if(method.CompareTo("V0M")==0)      return fCentralityV0M;
   if(method.CompareTo("V0A")==0)      return fCentralityV0A;
+  if(method.CompareTo("V0A0")==0)     return fCentralityV0A0;
   if(method.CompareTo("V0A123")==0)   return fCentralityV0A123;
   if(method.CompareTo("V0C")==0)      return fCentralityV0C;
   if(method.CompareTo("V0MEq")==0)    return fCentralityV0MEq;
@@ -411,7 +419,7 @@ Int_t AliCentrality::GetCentralityClass10Unchecked(const char *x) const
   TString method = x;
     if(method.CompareTo("V0M")==0)      return (Int_t) (fCentralityV0M / 10.0);
     if(method.CompareTo("V0A")==0)      return (Int_t) (fCentralityV0A / 10.0);
-    if(method.CompareTo("V0A123")==0)   return (Int_t) (fCentralityV0A123 / 10.0);
+    if(method.CompareTo("V0A0")==0)     return (Int_t) (fCentralityV0A0 / 10.0);
     if(method.CompareTo("V0C")==0)      return (Int_t) (fCentralityV0C / 10.0);
     if(method.CompareTo("V0MEq")==0)    return (Int_t) (fCentralityV0MEq / 10.0);
     if(method.CompareTo("V0AEq")==0)    return (Int_t) (fCentralityV0AEq / 10.0);
@@ -455,6 +463,7 @@ Int_t AliCentrality::GetCentralityClass5Unchecked(const char *x) const
   TString method = x;
     if(method.CompareTo("V0M")==0)      return (Int_t) (fCentralityV0M / 5.0);
     if(method.CompareTo("V0A")==0)      return (Int_t) (fCentralityV0A / 5.0);
+    if(method.CompareTo("V0A0")==0)     return (Int_t) (fCentralityV0A0 / 5.0);
     if(method.CompareTo("V0A123")==0)   return (Int_t) (fCentralityV0A123 / 5.0);
     if(method.CompareTo("V0C")==0)      return (Int_t) (fCentralityV0C / 5.0);
     if(method.CompareTo("V0MEq")==0)    return (Int_t) (fCentralityV0MEq / 5.0);
@@ -499,6 +508,7 @@ Bool_t AliCentrality::IsEventInCentralityClassUnchecked(Float_t a, Float_t b, co
   TString method = x;
     if ((method.CompareTo("V0M")==0) && (fCentralityV0M >=a && fCentralityV0M < b)) return kTRUE;
     if ((method.CompareTo("V0A")==0) && (fCentralityV0A >=a && fCentralityV0A < b)) return kTRUE;
+    if ((method.CompareTo("V0A0")==0) && (fCentralityV0A0 >=a && fCentralityV0A0 < b)) return kTRUE;
     if ((method.CompareTo("V0A123")==0) && (fCentralityV0A123 >=a && fCentralityV0A123 < b)) return kTRUE;
     if ((method.CompareTo("V0C")==0) && (fCentralityV0C >=a && fCentralityV0C < b)) return kTRUE;
     if ((method.CompareTo("V0MEq")==0) && (fCentralityV0MEq >=a && fCentralityV0MEq < b)) return kTRUE;
@@ -544,6 +554,7 @@ void AliCentrality::Reset()
   fQuality            =  999;
   fCentralityV0M      =  0;
   fCentralityV0A      =  0;
+  fCentralityV0A0     =  0;
   fCentralityV0A123   =  0;
   fCentralityV0C      =  0;
   fCentralityV0MEq    =  0;
index 173e940..d67e77f 100644 (file)
@@ -25,6 +25,7 @@ class AliCentrality : public TNamed
   void SetQuality(Int_t quality) {fQuality = quality;} 
   void SetCentralityV0M(Float_t cent) {fCentralityV0M = cent;} 
   void SetCentralityV0A(Float_t cent) {fCentralityV0A = cent;} 
+  void SetCentralityV0A0(Float_t cent) {fCentralityV0A0 = cent;} 
   void SetCentralityV0A123(Float_t cent) {fCentralityV0A123 = cent;} 
   void SetCentralityV0C(Float_t cent) {fCentralityV0C = cent;} 
   void SetCentralityV0MEq(Float_t cent) {fCentralityV0MEq = cent;} 
@@ -77,6 +78,7 @@ class AliCentrality : public TNamed
   Int_t   fQuality; // Quality of centrality determination
   Float_t fCentralityV0M;   // Centrality from V0A+V0C
   Float_t fCentralityV0A;   // Centrality from V0A
+  Float_t fCentralityV0A0;  // Centrality from V0A0
   Float_t fCentralityV0A123;// Centrality from V0A123
   Float_t fCentralityV0C;   // Centrality from V0C
   Float_t fCentralityV0MEq; // Centrality from V0A+V0C equalized channel