]>
Commit | Line | Data |
---|---|---|
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 | ||
11 | const TString kInputData = "ESD"; | |
12 | const TString kJCORRANInputFormat = "ESD"; // ESD, AODout, AODin | |
13 | ||
14 | ||
15 | AliJCORRANTask* 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 |