]>
Commit | Line | Data |
---|---|---|
17f4943e | 1 | AliAnalysisTaskPartonDisc* AddTaskPartonDisc(const char* bRec = "jetsAOD_UA104_B0_Filter00128_Cut01000",const char* bRec2 = "jetsAOD_SISCONE04_B0_Filter00128_Cut00150",const char* bGen = "jetsAODMC2_UA104_B0_Filter00000_Cut01000",UInt_t filterMask = 128, Int_t iPhysicsSelectionFlag = AliVEvent::kMB, Int_t option=1, Int_t ntx=90, Double_t jetrad = 0.4, Double_t trackpTcut = 1.0, Double_t incrad = 0.0, Double_t minpTUM = 0.150, Double_t maxpTUM = 0.900, Bool_t skipsingletr = kFALSE, Bool_t notextendExcl = kFALSE, Double_t sqrts = 7000., Double_t minpTMc = 0.150, Bool_t enaEtaRest = kFALSE, Double_t minptglobmult = 0.150) |
0c9acc4c | 2 | { |
3 | ////options//// | |
4 | // 1: Real pp data | |
5 | // 2: MC | |
6 | // 3: PbPb | |
7 | ||
8 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); | |
9 | if (!mgr) | |
10 | { | |
11 | ::Error("AddTaskPartonDisc", "No analysis manager to connect to."); | |
12 | return NULL; | |
13 | } | |
14 | ||
15 | if (!mgr->GetInputEventHandler()) | |
16 | { | |
17 | ::Error("AddTaskPartonDisc", "This task requires an input event handler"); | |
18 | return NULL; | |
19 | } | |
20 | ||
17f4943e | 21 | AliAnalysisTaskPartonDisc* taskPD = new AliAnalysisTaskPartonDisc(Form("PartonDisc%s",bRec)); |
0c9acc4c | 22 | if(option==1) |
23 | { | |
24 | // Default settings in constructor | |
25 | } | |
26 | if(option==2) | |
27 | { | |
28 | taskPD->SetAODwithMC(kTRUE); | |
29 | taskPD->SetPhojetMC(kTRUE); | |
30 | taskPD->SetMCBranch(bGen); | |
31 | taskPD->SetFlavorRadius(0.3); //default is 0.3 | |
32 | taskPD->SetSqrtS(sqrts); | |
33 | taskPD->SetMinPtMC(minpTMc); // pT min for mc particles (V0 mips) | |
34 | } | |
35 | if(option==3) | |
36 | taskPD->SetHIEvent(kTRUE); | |
37 | ||
38 | if(iPhysicsSelectionFlag) | |
39 | taskPD->SelectCollisionCandidates(iPhysicsSelectionFlag); | |
019742c7 | 40 | taskPD->SetAODMCInput(kFALSE); // true when running over AODs, false on trains |
0c9acc4c | 41 | taskPD->SetRecBranch(bRec); |
42 | taskPD->SetSecondRecBranch(bRec2); | |
43 | taskPD->SetXNtX(ntx); | |
44 | taskPD->SetJetRadius(jetrad); | |
45 | taskPD->SetFilterBitTracks(filterMask); | |
46 | taskPD->SetMinPtTrackCut(trackpTcut); | |
47 | taskPD->SetMinPtUE(minpTUM); // for underlying event multiplicity counting | |
48 | taskPD->SetMaxPtUE(maxpTUM); // for underlying event multiplicity counting | |
49 | taskPD->SetIncreaseOfExclusionR(incrad); // increase to R+incrad | |
50 | taskPD->ForceNotUseTrackRefs(kFALSE); // kTRUE para ignorar las tracks refs(diferente bit del usado en jet finding) | |
51 | taskPD->NotExtendDiJetExclusion(notextendExcl); // kFALSE->extend radius in dijet area, kTRUE->don't extend the radius in dijet area | |
52 | taskPD->ForceSkipSingleTrackJets(skipsingletr); // kTRUE to force to skip single track jets | |
019742c7 | 53 | taskPD->SetEnableJetEtaRestriction(enaEtaRest); // If increase of exclusion radius =!0 -> kTRUE, if not kFALSE |
17f4943e | 54 | taskPD->SetTrackRandomRejectionPerc(0.); // Random rejection of tracks from the event |
55 | taskPD->SetTrackInJetRandomRejectionPerc(0.); // Random rejection of tracks from the jet | |
56 | taskPD->SetMinPtCutGlobMult(minptglobmult); // min pT used in the multiplicity estimation | |
0c9acc4c | 57 | mgr->AddTask(taskPD); |
58 | ||
17f4943e | 59 | AliAnalysisDataContainer *coutput_PartDisc = mgr->CreateContainer(Form("taskPD_%s_Soft%4.3f_to%4.3f_R%2.1f_EE%2.1f",bRec,minpTUM,maxpTUM,jetrad,incrad),TList::Class(),AliAnalysisManager::kOutputContainer,Form("%s:PWGJE_taskPD_%s_Soft%4.3f_to%4.3f_R%2.1f_EE%2.1f",AliAnalysisManager::GetCommonFileName(),bRec,minpTUM,maxpTUM,jetrad,incrad)); |
0c9acc4c | 60 | mgr->ConnectInput (taskPD, 0, mgr->GetCommonInputContainer()); |
61 | mgr->ConnectOutput (taskPD, 0, mgr->GetCommonOutputContainer()); // comment to run local | |
62 | mgr->ConnectOutput (taskPD, 1, coutput_PartDisc ); | |
63 | ||
64 | return taskPD; | |
65 | } |