]>
Commit | Line | Data |
---|---|---|
84a72bc1 | 1 | void AddTaskEMCALMesonGGSDM(Int_t calibration = 0) |
3a66195e | 2 | { |
3 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); | |
4 | if (!mgr) { | |
5 | ::Error("AddTaskAliEMCALMesonGGSDM", "No analysis manager to connect to."); | |
6 | return NULL; | |
7 | } | |
8 | ||
9 | //##################################################### | |
10 | // Private Recalibrator: | |
11 | Int_t GoodTasks [4] = {1, 0,0,0}; | |
84a72bc1 | 12 | Int_t RecalScheme[4] = {calibration, 3,5,7}; |
3a66195e | 13 | // |
84a72bc1 | 14 | // Int_t calibration: |
3a66195e | 15 | // 0: no recalibration! |
16 | // 1: constant scale factor. | |
17 | // 2: Symmetric Decay Method | |
18 | // 3: J's fit to LHC12f1a MC single photons, 4 Aug 2013 | |
19 | // 4: J's fit to the test beam data, 4 Aug 2013 | |
20 | // 5: Based on kSDM/kTBCv3 (for MC) | |
21 | // 6: kBeamTestCorrectedv2 - in AliROOT! | |
22 | // 7: kPi0MCv3 - in AliROOT! | |
23 | // 8: kSDMv5 - based on J's fit to the noNL MC/data and kPi0MCv5 - 28 Oct 2013 (call it kSDMv5) | |
24 | // 9: kPi0MCv5 - J's fit to LHC12f1a/b MC single photons, 28 Oct 2013 (call it kPi0MCv5) | |
25 | // 10: kBTCv6 - J played with test beam data - 19 Nov 2013 | |
26 | // 11: kPi0MCv6 - J played with test beam mc - 19 Nov 2013 | |
27 | // | |
28 | //##################################################### | |
29 | ||
30 | //##################################################### | |
31 | // MC Generator Types: | |
32 | // | |
33 | char MyMCType[50] = ""; | |
34 | // doesn't work yet... set below!!!!!! | |
35 | // | |
36 | // for all Primary particles, assign "ANY" | |
37 | // | |
38 | // lhc13e7: | |
39 | // hijing_0 | |
40 | // pi0_1 - flat pT, number varies with centrality | |
41 | // eta_2 - flat pT, number varies with centrality | |
42 | // pi0EMC_3 - flat pT, 1 pi0 into EMCal | |
43 | // pi0PHS_4 - flat pT, 1 pi0 into PHOS | |
44 | // etaEMC_5 - flat pT, 1 eta into EMCal | |
45 | // etaPHS_6 - flat pT, 1 eta into PHOS | |
46 | // | |
47 | // lhc12i3: | |
48 | // Pythia | |
49 | // BOX - flat pT, 10 pi0 into 2pi | |
50 | // BOX - flat pT, 10 eta into 2pi | |
51 | // PARAM - flat pT, 1 pi0 into EMCal | |
52 | // PARAM - flat pT, 1 pi0 into PHOS | |
53 | // PARAM - flat pT, 1 eta into EMCal | |
54 | // PARAM - flat pT, 1 eta into PHOS | |
55 | // | |
56 | // dangerous... right now, it will only take the first BOX that it finds. | |
57 | // | |
58 | //##################################################### | |
59 | ||
60 | AliAnalysisTaskEMCALMesonGGSDM* task[4]; | |
61 | AliAnalysisDataContainer* coutput[4]; | |
62 | char saythis[500]; | |
63 | ||
64 | for(int i=0; i<4; i++){ | |
65 | if(GoodTasks[i]==0) | |
66 | continue; | |
67 | ||
68 | sprintf(saythis,"EMCALMesonGGSDM_%d",i); | |
69 | task[i] = new AliAnalysisTaskEMCALMesonGGSDM(saythis); | |
70 | task[i]->SelectCollisionCandidates(AliVEvent::kMB);//LHC11a | |
71 | //task[i]->SelectCollisionCandidates(AliVEvent::kINT7);//LHC13b/c, LHC11c? | |
72 | //task[i]->SelectCollisionCandidates(AliVEvent::kAnyINT); | |
73 | task[i]->SetRecalScheme(RecalScheme[i]); | |
74 | ||
75 | task[i]->SetdRmin_ClustTrack(0.025);//not used at the moment! (Gustavo uses 0.04) | |
76 | task[i]->SetFidPhiMinMax(1.39626, 3.15);// from: emc->GetArm1PhiMin()*TMath::DegToRad()=1.39626 | |
77 | //task[i]->SetFidPhiMinMax(1.39626, 2.10); //pPb no TRD | |
78 | //task[i]->SetFidPhiMinMax(2.10, 3.15); //pPb with TRD | |
79 | task[i]->SetFidEtaMinMax(-0.65, 0.65); | |
80 | ||
81 | //task[i]->SetMyMCType(**MyMCType); | |
82 | //task[i]->SetMyMCType("hijing_0"); | |
83 | task[i]->SetMyMCType("Pythia"); | |
84 | ||
85 | mgr->AddTask(task[i]); | |
86 | sprintf(saythis,"cont_AliAnalysisTaskEMCALMesonGGSDM_%d",RecalScheme[i]); | |
87 | coutput[i] = | |
88 | mgr->CreateContainer(saythis, | |
89 | TList::Class(), | |
90 | AliAnalysisManager::kOutputContainer, | |
91 | "EMCALMesonGGSDM.root"); | |
92 | mgr->ConnectInput (task[i],0,mgr->GetCommonInputContainer()); | |
93 | mgr->ConnectOutput(task[i],1,coutput[i]); | |
94 | ||
3a66195e | 95 | //AliMCEventHandler* handler = new AliMCEventHandler; |
96 | //handler->SetReadTR(kFALSE); | |
97 | //mgr->SetMCtruthEventHandler(handler); | |
98 | } | |
99 | ||
100 | } |