]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
new add task for pPb
authorssakai <ssakai@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 25 Feb 2013 14:15:15 +0000 (14:15 +0000)
committerssakai <ssakai@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 25 Feb 2013 14:15:15 +0000 (14:15 +0000)
PWGHF/hfe/macros/AddTaskHFEnpepPb.C [new file with mode: 0644]

diff --git a/PWGHF/hfe/macros/AddTaskHFEnpepPb.C b/PWGHF/hfe/macros/AddTaskHFEnpepPb.C
new file mode 100644 (file)
index 0000000..2389db6
--- /dev/null
@@ -0,0 +1,109 @@
+AliAnalysisTask *AddTaskHFEnpepPb(){\r
+  // Switches\r
+  Bool_t kPhotonic                   = kTRUE;\r
+\r
+  // Default settings (TOF-TPC 7 TeV pp paper)\r
+  const int    kDefTPCcl       = 120;\r
+  const int    kDefTPCclPID    =  80;\r
+  const int    kDefITScl       =   4;\r
+  const double kDefDCAr        =   1.;\r
+  const double kDefDCAz        =   2.;\r
+  const double kDefTPCs        =   0.026;\r
+  const double kDefTPCu        =   2.8;\r
+  const double kDefTOFs        =   3.;\r
+\r
+  // Default setting for the associated electron for the NonPhotonic Analysis\r
+  const double kassETA         =   0.8;\r
+  const int    kassITS         =   2;\r
+  const int    kassTPCcl       = 100;\r
+  const int    kassTPCPIDcl    =  80;\r
+  const double kassDCAr        =   1.0;\r
+  const double kassDCAz        =   2.0;\r
+  const double kassTPCSminus   =  -3.0;\r
+  const double kassTPCSplus    =   3.0;\r
+\r
+  //get the current analysis manager\r
+  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();\r
+  if (!mgr) {\r
+    Error("AddTask_hfe_HFE", "No analysis manager found.");\r
+    return 0;\r
+  }\r
+\r
+  Bool_t MCthere=kTRUE;\r
+  AliMCEventHandler *mcH = dynamic_cast<AliMCEventHandler*>(mgr->GetMCtruthEventHandler());\r
+  if(!mcH) MCthere=kFALSE;\r
+\r
+  AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();\r
+\r
+  //@@ 0 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@\r
+\r
+  // Remember: (e.g. for 120 clusters) This is only an example to show how to calculate!\r
+  // effective mean m0=-0.113\r
+  // width w=1.03\r
+  // cut --> nsigma*w + m0\r
+  // e.g. 45% 0.122 sigma --> 0.122*1.03-0.113 = 0.013\r
+\r
+  if(kPhotonic)\r
+  {\r
+    // Task for pp @ 7 TeV\r
+    //RegisterTaskNPPID2( MCthere, kDefTPCcl, kDefTPCclPID, kDefITScl, kDefDCAr, kDefDCAz, kDefTPCs, kDefTPCu, kDefTOFs, AliHFEextraCuts::kFirst, kTRUE, kassETA, kassITS, kassTPCcl, kassTPCPIDcl, kassDCAr, kassDCAz, kassTPCSminus, kassTPCSplus);\r
+\r
+    // task for pPb @ 5.023 TeV\r
+    //RegisterTaskNPPID2( MCthere, 110, 80, 3, 1, 2, 0.045, 2.685, 3, AliHFEextraCuts::kBoth, kTRUE, kassETA, kassITS, kassTPCcl, kassTPCPIDcl, kassDCAr, kassDCAz, kassTPCSminus, kassTPCSplus);\r
+\r
+    //task for pp @ 2.76 TeV\r
+    RegisterTaskNPPID2( MCthere, 110, 80, 3, 1, 2, -1.35, 2.45, 3, AliHFEextraCuts::kBoth, kTRUE, kassETA, kassITS, kassTPCcl, kassTPCPIDcl, kassDCAr, kassDCAz, kassTPCSminus, kassTPCSplus);\r
+  }\r
+\r
+  return NULL;\r
+}\r
+\r
+//===============================================================================\r
+\r
+AliAnalysisTask *RegisterTaskNPPID2( Bool_t useMC, Int_t tpcCls=120, Int_t tpcClsPID=80, Int_t itsCls=4, Double_t dcaxy=1.0, Double_t dcaz=2.0, Double_t tpcs=-0.0113, Double_t tpcu=3.09, Double_t tofs=3., Int_t itshitpixel=0, Bool_t kNoPhotonic=kFALSE, Double_t assETA=0.8, Int_t assITS=2, Int_t assTPCcl=100, Int_t assTPCPIDcl=80, Double_t assDCAr=1.0, Double_t assDCAz=2.0, Double_t assTPCSminus=-3.0, Double_t assTPCSplus=3.0 )\r
+{\r
+  gROOT->LoadMacro("$ALICE_ROOT/PWGHF/hfe/macros/configs/pPb/ConfigHFEnpepPb.C");\r
+\r
+  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();\r
+  AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();\r
+  AliAnalysisTaskHFE *task = ConfigHFEnpepPb(useMC, tpcCls, tpcClsPID, itsCls, dcaxy, dcaz, tpcs, tpcu, tofs, itshitpixel, kNoPhotonic, assETA, assITS, assTPCcl, assTPCPIDcl, assDCAr, assDCAz, assTPCSminus, assTPCSplus);\r
+  task->SetESDAnalysis();\r
+\r
+  if (useMC)   task->SetHasMCData(kTRUE);\r
+  else         task->SetHasMCData(kFALSE);\r
+\r
+  task->SelectCollisionCandidates(AliVEvent::kINT7);\r
+\r
+  Int_t idcaxy = (Int_t)(dcaxy*10.);\r
+  Int_t idcaz  = (Int_t)(dcaz*10.);\r
+  Int_t itpcs  = (Int_t)(tpcs*1000.);\r
+  Int_t itofs  = (Int_t)(tofs*10.);\r
+  Int_t ipixelany   = itshitpixel;\r
+\r
+  Int_t iNoPhotonic = 0;\r
+  if(kNoPhotonic) iNoPhotonic = 1;\r
+\r
+  Int_t iassETA  = (Int_t)(assETA*10);\r
+  Int_t iassDCAr = (Int_t)(assDCAr*10);\r
+  Int_t iassDCAz = (Int_t)(assDCAz*10);\r
+  Int_t iassTPCSminus = (Int_t)(assTPCSminus*10);\r
+  Int_t iassTPCSplus  = (Int_t)(assTPCSplus*10);\r
+\r
+  TString appendix(TString::Format("Photonic%dEta%dITS%dTPCcl%dTPCPIDcl%dDCAr%dDCAz%dTPCSminus%dTPCSplus%d", iNoPhotonic, iassETA, assITS, assTPCcl, assTPCPIDcl, iassDCAr, iassDCAz, iassTPCSminus, iassTPCSplus));\r
+  //TString appendix(TString::Format("TPCc%dTPCp%dITS%dDCAr%dz%dTPCs%dTOFs%dpa%dNoPhotonic%d",tpcCls,tpcClsPID,itsCls,idcaxy,idcaz,itpcs,itofs,ipixelany,iNoPhotonic));\r
+  printf("Add macro appendix %s\n", appendix.Data());\r
+\r
+  TString containerName = mgr->GetCommonFileName();\r
+  containerName += ":HFEpPb";\r
+  containerName += appendix.Data();\r
+  printf("container name: %s\n", containerName.Data());\r
+\r
+  //create data containers\r
+  task->ConnectOutput(1, mgr->CreateContainer(Form("HFE_Results_%s", appendix.Data()), TList::Class(), AliAnalysisManager::kOutputContainer, containerName.Data() ));\r
+  task->ConnectOutput(2, mgr->CreateContainer(Form("HFE_QA_%s", appendix.Data()), TList::Class(), AliAnalysisManager::kOutputContainer, containerName.Data()));\r
+  mgr->ConnectInput(task,  0, cinput );\r
+\r
+  mgr->AddTask(task);\r
+\r
+  return NULL;\r
+}\r