]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
fixed argument steered background calculation
authorkaamodt <kaamodt@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 18 Jan 2010 15:20:38 +0000 (15:20 +0000)
committerkaamodt <kaamodt@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 18 Jan 2010 15:20:38 +0000 (15:20 +0000)
PWG4/GammaConv/AliV0Reader.cxx
PWG4/GammaConv/AliV0Reader.h
PWG4/macros/ConfigGammaConversion.C

index 85a38ecf8cabe188fd5cae9fc49973aaef2347fc..0ea9158361d86a585b0f3cbce3baadb8bbf67693 100644 (file)
@@ -105,6 +105,7 @@ AliV0Reader::AliV0Reader() :
   fUpdateV0AlreadyCalled(kFALSE),
   fCurrentEventGoodV0s(NULL),
 //  fPreviousEventGoodV0s(),
+  fCalculateBackground(kFALSE),
   fBGEventHandler(NULL),
   fBGEventInitialized(kFALSE)
 {
@@ -172,6 +173,7 @@ AliV0Reader::AliV0Reader(const AliV0Reader & original) :
   fUpdateV0AlreadyCalled(original.fUpdateV0AlreadyCalled),
   fCurrentEventGoodV0s(original.fCurrentEventGoodV0s),
   //  fPreviousEventGoodV0s(original.fPreviousEventGoodV0s),
+  fCalculateBackground(original.fCalculateBackground),
   fBGEventHandler(original.fBGEventHandler),
   fBGEventInitialized(original.fBGEventInitialized)
 {
@@ -254,28 +256,30 @@ void AliV0Reader::Initialize(){
   //  fCurrentEventGoodV0s = new TClonesArray("TClonesArray", 0);
   fCurrentEventGoodV0s = new TClonesArray("AliKFParticle", 0);
 
-  if(fBGEventInitialized == kFALSE){
-    Double_t *zBinLimitsArray = new Double_t[8];//{-7,-5,-3,-1,1,3,5,7};
-    zBinLimitsArray[0] = -7;
-    zBinLimitsArray[1] = -5;
-    zBinLimitsArray[2] = -3;
-    zBinLimitsArray[3] = -1;
-    zBinLimitsArray[4] = 1;
-    zBinLimitsArray[5] = 3;
-    zBinLimitsArray[6] = 5;
-    zBinLimitsArray[7] = 7;
-    
-    Double_t *multiplicityBinLimitsArray= new Double_t[4];//={0,10,20,500};
-    multiplicityBinLimitsArray[0] = 0;
-    multiplicityBinLimitsArray[1] = 10;
-    multiplicityBinLimitsArray[2] = 20;
-    multiplicityBinLimitsArray[3] = 500;
-    
-    
-    fBGEventHandler = new AliGammaConversionBGHandler(8,4,10);
-    
-    fBGEventHandler->Initialize(zBinLimitsArray, multiplicityBinLimitsArray);
-    fBGEventInitialized = kTRUE;
+  if(fCalculateBackground == kTRUE){
+    if(fBGEventInitialized == kFALSE){
+      Double_t *zBinLimitsArray = new Double_t[8];//{-7,-5,-3,-1,1,3,5,7};
+      zBinLimitsArray[0] = -7;
+      zBinLimitsArray[1] = -5;
+      zBinLimitsArray[2] = -3;
+      zBinLimitsArray[3] = -1;
+      zBinLimitsArray[4] = 1;
+      zBinLimitsArray[5] = 3;
+      zBinLimitsArray[6] = 5;
+      zBinLimitsArray[7] = 7;
+      
+      Double_t *multiplicityBinLimitsArray= new Double_t[4];//={0,10,20,500};
+      multiplicityBinLimitsArray[0] = 0;
+      multiplicityBinLimitsArray[1] = 10;
+      multiplicityBinLimitsArray[2] = 20;
+      multiplicityBinLimitsArray[3] = 500;
+      
+      
+      fBGEventHandler = new AliGammaConversionBGHandler(8,4,10);
+      
+      fBGEventHandler->Initialize(zBinLimitsArray, multiplicityBinLimitsArray);
+      fBGEventInitialized = kTRUE;
+    }
   }
 }
 
@@ -731,7 +735,9 @@ void AliV0Reader::GetPIDProbability(Double_t &negPIDProb,Double_t & posPIDProb){
 void AliV0Reader::UpdateEventByEventData(){
   //see header file for documentation
   if(fCurrentEventGoodV0s->GetEntriesFast() >0 ){
-    fBGEventHandler->AddEvent(fCurrentEventGoodV0s,fESDEvent->GetPrimaryVertex()->GetZ(),fESDEvent->GetNumberOfTracks());
+    if(fCalculateBackground){
+      fBGEventHandler->AddEvent(fCurrentEventGoodV0s,fESDEvent->GetPrimaryVertex()->GetZ(),fESDEvent->GetNumberOfTracks());
+    }
   }
   fCurrentEventGoodV0s->Delete();
   fCurrentV0IndexNumber=0;
@@ -1003,8 +1009,7 @@ Double_t AliV0Reader::GetConvPosZ(AliESDtrack* ptrack,AliESDtrack* ntrack, Doubl
    Double_t zphaseNeg = ntrack->GetZ() +  deltaUNeg * ntrack->GetTgl();
    Double_t zphasePos = ptrack->GetZ() +  deltaUPos * ptrack->GetTgl();
 
-   Double_t convposz =
-   (zphasePos*negtrackradius+zphaseNeg*postrackradius)/(negtrackradius+postrackradius);
+   Double_t convposz = (zphasePos*negtrackradius+zphaseNeg*postrackradius)/(negtrackradius+postrackradius);
 
    return convposz;
 }
index 9c34ca0fe256d6cb641d3f4d273e4c80160084cf..b7bef5dddfac5d9a4fc10d6b9ddabfe5a9222a07 100644 (file)
@@ -598,8 +598,10 @@ class AliV0Reader : public TObject {
   Bool_t CheckV0FinderStatus(Int_t index);
 
   void SetOnFlyFlag(Bool_t flag){fUseOnFlyV0Finder = flag;}
+  
+  Int_t GetNBGEvents(){return fBGEventHandler->GetNBGEvents();}
 
Int_t GetNBGEvents(){return fBGEventHandler->GetNBGEvents();}
 void SetCalculateBackground(Bool_t flag){fCalculateBackground=flag;}
 
  private:
   AliStack * fMCStack;           // pointer to MonteCarlo particle stack 
@@ -686,6 +688,7 @@ class AliV0Reader : public TObject {
   TClonesArray* fCurrentEventGoodV0s; //vector of good v0s
   //  vector<AliKFParticle> fPreviousEventGoodV0s; // vector of good v0s from prevous events
 
+  Bool_t fCalculateBackground;
   AliGammaConversionBGHandler *fBGEventHandler;
   Bool_t fBGEventInitialized;
        
index 47505a324dc165204990bb67a81d3b711418b06f..6ffdab1d0d18aaaaf0c6c23593664a6638256d30 100644 (file)
@@ -1105,7 +1105,7 @@ AliAnalysisTaskGammaConversion* ConfigGammaConversion(TString arguments,AliAnaly
   v0Reader->SetPIDnSigmaAbovePionLine(kGCPIDnSigmaAbovePionLine);
   v0Reader->SetPIDMinPnSigmaAbovePionLine(kGCPIDMinPnSigmaAbovePionLine);
   v0Reader->SetOnFlyFlag(kGCUseOnFlyV0Finder);
-       
+  v0Reader->SetCalculateBackground(kGCcalculateBackground);
   // Create the GammaConversionTask
   AliAnalysisTaskGammaConversion *gammaconversion = new AliAnalysisTaskGammaConversion("GammaConversionTask");
   gammaconversion->SetDebugLevel(0);