]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGLF/FORWARD/analysis2/ForwardAODConfig.C
Segregated the Landau+Gaus function from the AliForwardUtil dumping ground. Other...
[u/mrichter/AliRoot.git] / PWGLF / FORWARD / analysis2 / ForwardAODConfig.C
index 8dba561586fec6a3652e81e4027d427f6226b8b5..0588d0fb0095dc3efed166ef898f840d7c5a83f4 100644 (file)
@@ -30,27 +30,21 @@ ForwardAODConfig(AliForwardMultiplicityBase* task)
   // Whether to enable low flux specific code 
   task->SetEnableLowFlux(kFALSE);
 
-  // --- Cuts --------------------------------------------------------
+  // --- Check for MC ------------------------------------------------
   // Would like to use dynamic cast but CINT interprets that as a 
   // static cast - sigh!
-  Bool_t   mc           = (task->IsA()==AliForwardMCMultiplicityTask::Class());
-  // Double_t nXi          = 2; 
-  // Bool_t   includeSigma = false; //true;
-  // Sharing cut
-  AliFMDMultCuts cSharingLow;
-  Double_t factor = 1.;
-  cSharingLow.SetMultCuts(0.3, 0.3, 0.3, 0.3, 0.3);
-  // Sharing cut
-  AliFMDMultCuts cSharingHigh;
-  cSharingHigh.SetMultCuts(-1);
-  cSharingHigh.SetNXi(0); // Was 2
-  cSharingHigh.SetIncludeSigma(false);
-  cSharingHigh.SetMPVFraction(0.6); 
-  // Density cut
-  AliFMDMultCuts cDensity;
-  // cDensity.SetMultCuts(0.3, 0.3, 0.3, 0.3, 0.3);
-  cDensity.SetMultCuts(-1);
-  cDensity.SetMPVFraction(0.6); // Was .7
+  Bool_t         mc = (task->IsA()==AliForwardMCMultiplicityTask::Class());
+
+  // --- Cuts --------------------------------------------------------
+  // Note, the absolute lowest signal to consider - ever -
+  // irrespective of MC or real data, is 0.15.  Signals below this
+  // will contain remenants of the pedestal (yes, the width of the
+  // pedestal is small, but there are many _many_ channels with only
+  // pedestal value in them, so the absolute number of high-value
+  // pedestal signals is large - despite the low probablity).
+  AliFMDMultCuts cSharingLow(AliFMDMultCuts::kFixed,0.15);
+  AliFMDMultCuts cSharingHigh(AliFMDMultCuts::kMPVFraction,0.8,0.8,0.8,0.8,0.8);
+  AliFMDMultCuts cDensity(AliFMDMultCuts::kMPVFraction,0.7);
   
   // --- Event inspector ---------------------------------------------
   // Set the number of SPD tracklets for which we consider the event a
@@ -72,23 +66,27 @@ ForwardAODConfig(AliForwardMultiplicityBase* task)
   task->GetEventInspector().SetCentralityMethod("V0M");
 
   // --- Sharing filter ----------------------------------------------
-  // If the following is uncommented, then the merging of shared
+  // If the following is set to true, then the merging of shared
   // signals is disabled completely
-  // task->GetSharingFilter().SetDisableMerging(true);
+  task->GetSharingFilter().SetDisableMerging(false);
   // Enable use of angle corrected signals in the algorithm 
   task->GetSharingFilter().SetUseAngleCorrectedSignals(true);
+  // Ignore the ESD information when angle correcting.
+  // 
+  // *IMPORTANT* 
+  // 
+  // This is to counter a known issue with AliESDFMD with ClassDef 
+  // version < 4, where the angle correction flag is incorrectly set.
+  // A fix is coming to AliESDFMD to handle it directly in the class. 
+  // Only set the flag below to true if you know it to be necessary for
+  // your data set.
+  task->GetSharingFilter().SetIgnoreESDWhenAngleCorrecting(false);
   // Disable use of angle corrected signals in the algorithm 
   task->GetSharingFilter().SetZeroSharedHitsBelowThreshold(false);
   // Whether to use simple merging algorithm
   task->GetSharingFilter().SetUseSimpleSharing(true);
-  // Whether to allow for 3 strip hits 
-  task->GetSharingFilter().SetAllow3Strips(!mc);
-  // Do not cut fixed/hard on multiplicity 
-  // task->GetSharingFilter().GetHCuts().SetMultCuts(-1);
-  // Set the number of xi's (width of landau peak) to stop at 
-  // task->GetSharingFilter().GetHCuts().SetNXi(nXi);
-  // Set whether or not to include sigma in cut
-  // task->GetSharingFilter().GetHCuts().SetIncludeSigma(includeSigma);
+  // Whether to allow for 3 strip hits - deprecated
+  task->GetSharingFilter().SetAllow3Strips(false);
   // Set upper sharing cut 
   task->GetSharingFilter().SetHCuts(cSharingHigh);
   // Enable use of angle corrected signals in the algorithm 
@@ -195,11 +193,11 @@ ForwardAODConfig(AliForwardMultiplicityBase* task)
   // If this option is enabled, then the summed per-vertex, per-ring
   // d2N/detadphi histograms will be stored in the output, as well as
   // copies of the secondary maps
-  // task->GetHistCollector().SetMakeBGHitMaps(true);
+  task->GetHistCollector().SetMakeBGHitMaps(false);
   //
   // If this option is enabled, then a 3D histogram will be made for
   // each ring, summing dN/deta for each centrality bin.
-  // task->GetHistCollector().SetMakeCentralitySums(true);
+  task->GetHistCollector().SetMakeCentralitySums(false);
 
   // --- Eventplane Finder -------------------------------------------
   task->GetEventPlaneFinder().SetUsePhiWeights(false);
@@ -209,7 +207,7 @@ ForwardAODConfig(AliForwardMultiplicityBase* task)
   // output AOD - one for each FMD ring.  The branches each contain a
   // TH2D object of the (primary) charged particle multiplicity per
   // (eta,phi)-bin in that event 
-  // task->SetStorePerRing(true);
+  task->SetStorePerRing(false);
 
   // --- Set limits on fits the energy -------------------------------
   // DO NOT CHANGE THESE UNLESS YOU KNOW WHAT YOU ARE DOING