]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGJE/macros/AddTaskPartonDisc.C
Merge remote-tracking branch 'origin/master' into mergingFlat
[u/mrichter/AliRoot.git] / PWGJE / macros / AddTaskPartonDisc.C
CommitLineData
17f4943e 1AliAnalysisTaskPartonDisc* 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}