Changed a cut, updated so one can use both v0 finders.
authorkaamodt <kaamodt@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 8 Dec 2009 00:03:15 +0000 (00:03 +0000)
committerkaamodt <kaamodt@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 8 Dec 2009 00:03:15 +0000 (00:03 +0000)
PWG4/GammaConv/AliAnalysisTaskGammaConversion.cxx
PWG4/GammaConv/AliV0Reader.cxx
PWG4/GammaConv/AliV0Reader.h
PWG4/macros/ConfigGammaConversion.C

index 63cd4da..09e77d1 100644 (file)
@@ -335,9 +335,10 @@ void AliAnalysisTaskGammaConversion::Exec(Option_t */*option*/)
   if(fDoNeutralMeson == kTRUE){
     ProcessGammasForNeutralMesonAnalysis();
   }
-       
-  CheckV0Efficiency();
-       
+
+  if(fDoMCTruth == kTRUE){
+    CheckV0Efficiency();
+  }
   //Process reconstructed gammas electrons for Chi_c Analysis
   if(fDoChic == kTRUE){
     ProcessGammaElectronsForChicAnalysis();
@@ -938,7 +939,8 @@ void AliAnalysisTaskGammaConversion::ProcessV0sNoCut(){
       continue;
     }
 
-    if( !fV0Reader->GetV0(i)->GetOnFlyStatus()){
+    //    if( !fV0Reader->GetV0(i)->GetOnFlyStatus()){
+    if( !fV0Reader->CheckV0FinderStatus(i)){
       continue;
     }
 
index 9e5b1f7..ceee3df 100644 (file)
@@ -100,6 +100,7 @@ AliV0Reader::AliV0Reader() :
   fUseImprovedVertex(kFALSE),
   fUseOwnXYZCalculation(kFALSE),
   fDoCF(kFALSE),
+  fUseOnFlyV0Finder(kTRUE),
   fUpdateV0AlreadyCalled(kFALSE),
   fCurrentEventGoodV0s(),
   fPreviousEventGoodV0s()
@@ -164,6 +165,7 @@ AliV0Reader::AliV0Reader(const AliV0Reader & original) :
   fUseImprovedVertex(original.fUseImprovedVertex),
   fUseOwnXYZCalculation(original.fUseOwnXYZCalculation),
   fDoCF(original.fDoCF),
+  fUseOnFlyV0Finder(original.fUseOnFlyV0Finder),
   fUpdateV0AlreadyCalled(original.fUpdateV0AlreadyCalled),
   fCurrentEventGoodV0s(original.fCurrentEventGoodV0s),
   fPreviousEventGoodV0s(original.fPreviousEventGoodV0s)
@@ -239,6 +241,27 @@ Bool_t AliV0Reader::CheckForPrimaryVertex(){
   return fESDEvent->GetPrimaryVertex()->GetNContributors()>0;
 }
 
+
+Bool_t AliV0Reader::CheckV0FinderStatus(Int_t index){
+
+  if(fUseOnFlyV0Finder){
+    cout<<"using on fly status"<<endl;
+    if(!GetV0(index)->GetOnFlyStatus()){
+      return kFALSE;
+    }
+  }
+  if(!fUseOnFlyV0Finder){
+    cout<<"using offline v0 finder"<<endl;
+    if(!GetV0(index)->GetOnFlyStatus()){
+      return kFALSE;
+    }
+  }
+  cout<<"returning true"<<endl;
+  return kTRUE;
+}
+
+
+
 Bool_t AliV0Reader::NextV0(){
   //see header file for documentation
        
index d85fcc3..e7f6ccd 100644 (file)
@@ -589,6 +589,11 @@ class AliV0Reader : public TObject {
 
   void SetDoCF(Bool_t flag){fDoCF = flag;}
 
+  Bool_t CheckV0FinderStatus(Int_t index);
+
+  void SetOnFlyFlag(Bool_t flag){fUseOnFlyV0Finder = flag;}
+
+
  private:
   AliStack * fMCStack;           // pointer to MonteCarlo particle stack 
   AliMCEventHandler* fMCTruth;   // for CF    pointer to the MC object
@@ -667,12 +672,14 @@ class AliV0Reader : public TObject {
 
   Bool_t fDoCF; //flag
 
+  Bool_t fUseOnFlyV0Finder;
+
   Bool_t fUpdateV0AlreadyCalled; //flag
        
   vector<AliKFParticle> fCurrentEventGoodV0s; //vector of good v0s
   vector<AliKFParticle> fPreviousEventGoodV0s; // vector of good v0s from prevous events
        
-  ClassDef(AliV0Reader,6)
+  ClassDef(AliV0Reader,7)
 };
 #endif
 
index 80ff672..623ac5e 100644 (file)
@@ -53,6 +53,8 @@ Double_t kGCsigmaCutGammaMass=0.0001;
 
 Bool_t kGCuseImprovedVertex = kTRUE;
 
+Bool_t kGCUseOnFlyV0Finder = kTRUE;
+
 // define masses of different particles, this will be used by the KF particle
 // together with the width to set mass constraints. Units in GeV.
 Double_t kGCelectronMass = 0.00051099892;
@@ -691,7 +693,7 @@ Bool_t kGCuseESDTrack   = kFALSE;
 /**------------------------------Flag to apply dEdx cut base on sigmas to electron line----------*/
 Bool_t kGCdodEdxSigmaCut= kTRUE;
 /**------------------------------end Flag to apply NsigmadEdx cut ----------*/
-Double_t kGCPIDnSigmaAboveElectronLine=6;
+Double_t kGCPIDnSigmaAboveElectronLine=10;
 Double_t kGCPIDnSigmaBelowElectronLine=-4;
 Double_t kGCPIDnSigmaAbovePionLine=0;
 Double_t kGCPIDMinPnSigmaAbovePionLine=5;
@@ -737,6 +739,9 @@ Bool_t scanArguments(TString arguments){
          cout<<"Setting output file name to: "<<kGCoutputFileName<<endl;
        }
       }
+      else if (argument.CompareTo("-use-offline-finder") == 0){
+       kGCUseOnFlyV0Finder = kFALSE;
+      }
       else if (argument.CompareTo("-write-ntuple") == 0){
        cout<<"Writing ntuple to file."<<endl;
        kGCwriteNtuple = kTRUE;
@@ -1089,7 +1094,7 @@ AliAnalysisTaskGammaConversion* ConfigGammaConversion(TString arguments,AliAnaly
   v0Reader->SetPIDnSigmaBelowElectronLine(kGCPIDnSigmaBelowElectronLine);
   v0Reader->SetPIDnSigmaAbovePionLine(kGCPIDnSigmaAbovePionLine);
   v0Reader->SetPIDMinPnSigmaAbovePionLine(kGCPIDMinPnSigmaAbovePionLine);
+  v0Reader->SetOnFlyFlag(kGCUseOnFlyV0Finder);
        
   // Create the GammaConversionTask
   AliAnalysisTaskGammaConversion *gammaconversion = new AliAnalysisTaskGammaConversion("GammaConversionTask");