]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/macros/AddTaskJCORRANTask.C
new correlation histogramming, Paul Constantin
[u/mrichter/AliRoot.git] / PWG4 / macros / AddTaskJCORRANTask.C
CommitLineData
6392490d 1
2//---------------------------------------------------
3// Macro to do analysis with AliJCORRANTask
4// Can be executed with Root and AliRoot
5//
6// ALICE Jyvaskyla group
7//
8//-------------------------------------------------
9
10
11const TString kInputData = "ESD";
12const TString kJCORRANInputFormat = "ESD"; // ESD, AODout, AODin
13
14
15AliJCORRANTask* AddTaskJCORRAN()
16{
17 //--------------------------------------
18 // Make the analysis manager
19 //-------------------------------------
20 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
21 if(!mgr){
22 ::Error("AddTaskJCORRAN", "No analysis manager to connect to.");
23 return NULL;
24 }
25
26 if (!mgr->GetInputEventHandler()) {
27 ::Error("AddTaskJets", "This task requires an input event handler");
28 return NULL;
29 }
30
31
32 //-------------------------------------------------------------------------
33 //Define task, put here any other task that you want to use.
34 //-------------------------------------------------------------------------
35 Int_t downscaling = 20; //downscaling of normal events
36 Double_t lowerCutOnLPmom = 2; // 3 GeV
37 Double_t lowerCutOnLeadingCaloClusterE = 1.; //GeV
38
39 // T R A C K S E L E C T I O N
40
41 // Apply loose track cuts //FK//
42 AliESDtrackCuts* esdTrackCutsLoose = new AliESDtrackCuts("AliESDtrackCuts", "Loose");
43 esdTrackCutsLoose->SetMinNClustersTPC(60);
44 esdTrackCutsLoose->SetMaxChi2PerClusterTPC(4.0);
45 esdTrackCutsLoose->SetRequireTPCRefit(kTRUE);
46 //esdTrackCutsLoose->SetMaxNsigmaToVertex(3);
47 //esdTrackCutsLoose->SetRequireSigmaToVertex(kTRUE);
48 esdTrackCutsLoose->SetAcceptKinkDaughters(kFALSE);
49 esdTrackCutsLoose->SetMaxDCAToVertexXY(3.5);
50 esdTrackCutsLoose->SetMaxDCAToVertexZ(3.5);
51 // hard
52 //AliESDtrackCuts* esdTrackCutsHard = new AliESDtrackCuts("AliESDtrackCuts", "Hard");
53 //esdTrackCutsHard->SetMinNClustersTPC(100);
54 //esdTrackCutsHard->SetMaxChi2PerClusterTPC(2.0);
55 //esdTrackCutsHard->SetMaxCovDiagonalElements(2,2,0.5,0.5,2);
56 //esdTrackCutsHard->SetRequireTPCRefit(kTRUE);
57 //esdTrackCutsHard->SetMaxNsigmaToVertex(2);
58 //esdTrackCutsHard->SetRequireSigmaToVertex(kTRUE);
59 //esdTrackCutsHard->SetAcceptKinkDaughters(kFALSE);
60
61 //---------------------------------------------------------------------------
62
63 // E V E N T S E L E C T I O N
64
65 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPhysicsSelection.C");
66 AliPhysicsSelectionTask* physSelTask = AddTaskPhysicsSelection();
67 AliPhysicsSelection* physSele = physSelTask->GetPhysicsSelection();
68
69 //tag as MB different trigger than CINT1B
70 //physSele->AddCollisionTriggerClass("+CSMBB-ABCE-NOPF-ALL"); // Put here trigger to be selected, default is CINT1B
71
72 AliJCORRANTask *jctask = new AliJCORRANTask("PWG4JCORRANTask",kJCORRANInputFormat, esdTrackCutsLoose, downscaling, lowerCutOnLPmom, lowerCutOnLeadingCaloClusterE); //FK//
73 jctask->SetDebugLevel(1);
74 mgr->AddTask(jctask);
75
76 jctask->SelectCollisionCandidates(); //Apply offline trigger selection by AliPhysicsSelectionTask
77
78
79 // Create containers for input:
80 AliAnalysisDataContainer *cinput0 = mgr->GetCommonInputContainer();
81
82 // JCORRAN output containers:
83 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("jcorrantree", TTree::Class(),
84 AliAnalysisManager::kOutputContainer, "jcorran.root");
85
86 AliAnalysisDataContainer *coutput2 = mgr->CreateContainer("jcorranQAlist", TList::Class(),
87 AliAnalysisManager::kOutputContainer, "jcorranQA.root");
88
89
90
91 // JCORRAN task
92 mgr->ConnectInput (jctask, 0, cinput0 );
93 mgr->ConnectOutput (jctask, 1, coutput1 );
94 mgr->ConnectOutput (jctask, 2, coutput2 );
95
96
97
98 return jctask;
99}
100
101