Mior fixes
[u/mrichter/AliRoot.git] / PWG2 / FORWARD / analysis2 / AddTaskFMDELoss.C
index e1dc641f975fc2aa16fdc8dc6c5e78cd827926a0..06b4d23f4c4abf25060ee9befcfd57883a7eb0a6 100644 (file)
@@ -1,33 +1,38 @@
-/** 
- * @defgroup pwg2_forward_scripts Scripts used in the analysis
- *
- * @ingroup pwg2_forward
- */
 /**
- * @file 
- * @ingroup pwg2_forward_scripts
+ * @file   AddTaskFMDELoss.C
+ * @author Christian Holm Christensen <cholm@dalsgaard.hehi.nbi.dk>
+ * @date   Wed Mar 23 12:14:03 2011
+ * 
+ * @brief  
  * 
+ * 
+ * @ingroup pwg2_forward_scripts_tasks
  */
+/**
+ * @defgroup pwg2_forward_eloss Energy Loss Fits
+ * @ingroup pwg2_forward_topical
+ */
+
 /**
  * This is the macro to include the FMD energy fitter in a train.  
  * 
- * @ingroup pwg2_forward_scripts
+ * @ingroup pwg2_forward_eloss
  */
 AliAnalysisTask*
-AddTaskFMDELoss(Bool_t mc, Float_t blow=0, Float_t bhigh=100)
+AddTaskFMDELoss(Bool_t mc, Bool_t useCent)
 {
   gSystem->Load("libPWG2forward2");
 
   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
   if (!mgr) {
-    Error("AddTaskFMD", "No analysis manager to connect to.");
+    Error("AddTaskFMDELoss", "No analysis manager to connect to.");
     return NULL;
   }   
   
   // --- Make the task and add it to the manager ---------------------
   AliFMDEnergyFitterTask* task = new AliFMDEnergyFitterTask("fmdEnergyFitter");
-  task->SetBLow(blow);
-  task->SetBLow(bhigh);
+  // task->SetBLow(blow);
+  // task->SetBLow(bhigh);
   mgr->AddTask(task);
   
   // --- Set parameters on the algorithms ----------------------------
@@ -43,7 +48,7 @@ AddTaskFMDELoss(Bool_t mc, Float_t blow=0, Float_t bhigh=100)
   // Set maximum energy loss to consider 
   task->GetEnergyFitter().SetMaxE(15); 
   // Set number of energy loss bins 
-  task->GetEnergyFitter().SetNEbins(450);
+  task->GetEnergyFitter().SetNEbins(500);
   // Set whether to use increasing bin sizes 
   task->GetEnergyFitter().SetUseIncreasingBins(true);
   // Set whether to do fit the energy distributions 
@@ -60,26 +65,30 @@ AddTaskFMDELoss(Bool_t mc, Float_t blow=0, Float_t bhigh=100)
   // Set the minimum number of entries in the distribution before
   // trying to fit to the data
   task->GetEnergyFitter().SetMinEntries(1000);
-  task->GetEnergyFitter().SetMaxRelativeParameterError(0.12);
-  task->GetEnergyFitter().SetMaxChi2PerNDF(10);
-  task->GetEnergyFitter().SetMinWeight(1e-5);
   // --- Set limits on fits the energy -------------------------------
   // Maximum relative error on parameters 
   AliFMDCorrELossFit::ELossFit::fgMaxRelError = .12;
   // Least weight to use 
   AliFMDCorrELossFit::ELossFit::fgLeastWeight = 1e-5;
   // Maximum value of reduced chi^2 
-  AliFMDCorrELossFit::ELossFit::fgMaxChi2nu   = 5;
+  AliFMDCorrELossFit::ELossFit::fgMaxChi2nu   = 20;
     
   // --- Make the output container and connect it --------------------
-  TString outputfile = AliAnalysisManager::GetCommonFileName();
+  TString outputfile = ;
   // outputfile += ":PWG2forwardDnDeta"; 
   // Form(":%s",pars->GetDndetaAnalysisName());
   AliAnalysisDataContainer* histOut = 
     mgr->CreateContainer("Forward", TList::Class(), 
-                        AliAnalysisManager::kOutputContainer,outputfile);
+                        AliAnalysisManager::kOutputContainer,
+                        AliAnalysisManager::GetCommonFileName());
+  AliAnalysisDataContainer *output = 
+    mgr->CreateContainer("ForwardResults", TList::Class(), 
+                        AliAnalysisManager::kParamContainer, 
+                        AliAnalysisManager::GetCommonFileName());
   mgr->ConnectInput(task, 0, mgr->GetCommonInputContainer());
   mgr->ConnectOutput(task, 1, histOut);
+  mgr->ConnectOutput(task, 2, output);
+
 
   return task;
 }