]>
Commit | Line | Data |
---|---|---|
7b17307f | 1 | AliAnalysisTaskFullpAJets *AddTaskFullpAJets(const char* proj_name, const Double_t jetRadius=0.4, Bool_t IsMC=kFALSE, const char* track_name="PicoTracks", const char* clus_name="caloClusters", const char* corrclus_name="caloClustersCorr", const char* mcpart_name="MCParticles", TString Centrality_name="V0A", Double_t scaleFactor = 1.28, Double_t nefJetCut = 1.0, Bool_t doNEF=kFALSE, Bool_t signalTrackBias=kFALSE, Bool_t doTrackQA=kFALSE, Bool_t doClusterQA=kFALSE, Int_t calcRhoJet=0, Bool_t doNEFSignalOnly=kTRUE, Bool_t doVertexRCut=kTRUE, Bool_t isMCParticleLevel=kFALSE, Double_t jetRAccept = 0.4, Bool_t doTHnSparse = kFALSE) |
155dada9 | 2 | { |
d812e269 | 3 | char *usedTracks = track_name; |
4 | char *usedClusters = clus_name; | |
5 | char *outClusName = corrclus_name; | |
6 | char *usedMCParticles = mcpart_name; | |
3aae667c | 7 | char *projName = proj_name; |
155dada9 | 8 | const Double_t minTrackPt=0.15; |
9 | const Double_t minClusterPt=0.30; | |
d812e269 | 10 | const Double_t minMCPartPt=0.00; |
d6cc4b0c | 11 | |
12 | TString centEst = Centrality_name; | |
13 | ||
2bfc734f | 14 | Double_t scaleFac = scaleFactor; // Obtained from previous runs... |
91d0893e | 15 | Double_t NEFSignalJetCut = nefJetCut; // Require signal jet to not exceed a Neutral Energy Fraction of this setting... |
155dada9 | 16 | |
17 | // Some constants for the jet finders | |
c6202663 | 18 | const Int_t cKT=0; |
19 | const Int_t cANTIKT=1; | |
20 | const Int_t cFULLJETS=0; | |
21 | const Int_t cCHARGEDJETS=1; | |
22 | const Int_t cNEUTRALJETS=2; | |
23 | ||
155dada9 | 24 | AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager(); |
25 | if (!mgr) | |
26 | { | |
27 | Error("AddTaskJetCommon","No analysis manager found."); | |
28 | return 0; | |
29 | } | |
30 | ||
c54b626a | 31 | // Determine the int of the jet radius for naming purposes |
32 | Int_t drjet=Int_t(100*jetRadius); | |
33 | if (drjet%10 == 0) | |
34 | { | |
35 | drjet/=10; | |
36 | } | |
37 | ||
38 | TString taskName = Form("AnalysisFullpAJetsR%d",drjet); | |
3aae667c | 39 | TString listName = Form("List%sR%d",projName,drjet); |
78246241 | 40 | TString fileName = Form("%s:FullpAJets", AliAnalysisManager::GetCommonFileName()); |
c54b626a | 41 | |
155dada9 | 42 | // Jet finders (RECONSTRUCTED DATA) |
43 | TString tmpTaskName(""); | |
44 | AliEmcalJetTask* jetFinderTask = NULL; | |
c54b626a | 45 | |
155dada9 | 46 | gROOT->LoadMacro("$ALICE_ROOT/PWGJE/EMCALJetTasks/macros/AddTaskEmcalJet.C"); |
c54b626a | 47 | |
d812e269 | 48 | // Add User Task |
49 | AliAnalysisTaskFullpAJets *task = new AliAnalysisTaskFullpAJets(taskName); | |
78246241 | 50 | |
6bda5230 CY |
51 | // Used for physics selection |
52 | task->SetUseAliAnaUtils(kTRUE); | |
53 | task->DoVertexRCut(doVertexRCut); | |
54 | ||
d812e269 | 55 | if (IsMC == kTRUE) |
56 | { | |
57 | task->SetTrackName(usedMCParticles); | |
58 | task->SetClusterName(""); | |
59 | task->SetTrackPtCut(minMCPartPt); | |
60 | task->SetClusterPtCut(minMCPartPt); | |
6bda5230 | 61 | task->SetMCParticleLevel(isMCParticleLevel); |
d812e269 | 62 | |
63 | // ########## CHARGED JETS ########## | |
e0efb3f6 | 64 | jetFinderTask = AddTaskEmcalJet(usedMCParticles,"",cKT,jetRadius,cCHARGEDJETS,minMCPartPt,minMCPartPt,0.005,1,"Jet"); |
d812e269 | 65 | task->SetkTChargedJetName(jetFinderTask->GetName()); |
66 | ||
e0efb3f6 | 67 | jetFinderTask = AddTaskEmcalJet(usedMCParticles,"",cANTIKT,jetRadius,cCHARGEDJETS,minMCPartPt,minMCPartPt,0.005,1,"Jet"); |
d812e269 | 68 | task->SetAkTChargedJetName(jetFinderTask->GetName()); |
69 | ||
70 | // ########## FULL JETS ########## | |
71 | // No Full jets or clusters are used if run over MCParticles! | |
72 | task->SetkTFullJetName(""); | |
73 | task->SetAkTFullJetName(""); | |
74 | } | |
75 | else | |
76 | { | |
77 | task->SetTrackName(usedTracks); | |
78 | task->SetClusterName(outClusName); | |
79 | task->SetTrackPtCut(minTrackPt); | |
80 | task->SetClusterPtCut(minClusterPt); | |
155dada9 | 81 | |
d812e269 | 82 | // ########## CHARGED JETS ########## |
e0efb3f6 | 83 | jetFinderTask = AddTaskEmcalJet(usedTracks,"",cKT,jetRadius,cCHARGEDJETS,minTrackPt,minClusterPt,0.005,1,"Jet"); |
d812e269 | 84 | task->SetkTChargedJetName(jetFinderTask->GetName()); |
85 | ||
e0efb3f6 | 86 | jetFinderTask = AddTaskEmcalJet(usedTracks,"",cANTIKT,jetRadius,cCHARGEDJETS,minTrackPt,minClusterPt,0.005,1,"Jet"); |
d812e269 | 87 | task->SetAkTChargedJetName(jetFinderTask->GetName()); |
88 | ||
89 | // ########## FULL JETS ########## | |
e0efb3f6 | 90 | jetFinderTask = AddTaskEmcalJet(usedTracks,outClusName,cKT,jetRadius,cFULLJETS,minTrackPt,minClusterPt,0.005,1,"Jet"); |
d812e269 | 91 | task->SetkTFullJetName(jetFinderTask->GetName()); |
155dada9 | 92 | |
e0efb3f6 | 93 | jetFinderTask = AddTaskEmcalJet(usedTracks,outClusName,cANTIKT,jetRadius,cFULLJETS,minTrackPt,minClusterPt,0.005,1,"Jet"); |
d812e269 | 94 | task->SetAkTFullJetName(jetFinderTask->GetName()); |
95 | } | |
155dada9 | 96 | |
c54b626a | 97 | task->SetRjet(drjet); |
e0efb3f6 | 98 | task->SetJetRAcceptance(jetRAccept); |
d6cc4b0c | 99 | task->SetCentralityTag(centEst.Data()); |
2bfc734f | 100 | task->SetScaleFactor(scaleFac); |
c6202663 | 101 | task->SelectCollisionCandidates(AliVEvent::kINT7); |
7acc3e04 | 102 | task->SetNColl(7); |
91d0893e | 103 | task->SetNEFSignalJetCut(NEFSignalJetCut); |
87a5edfe | 104 | task->DoNEFCalibration(doNEF); |
d2af75be | 105 | task->DoNEFSignalOnly(doNEFSignalOnly); |
3e43a01f | 106 | task->SetJetChargeBias(signalTrackBias); |
62620fff | 107 | task->DoTrackQA(doTrackQA); |
108 | task->DoClusterQA(doClusterQA); | |
109 | task->CalculateRhoJet(calcRhoJet); | |
7b17307f | 110 | task->DoTHnSparse(doTHnSparse); |
c6202663 | 111 | |
112 | mgr->AddTask(task); | |
113 | ||
c54b626a | 114 | AliAnalysisDataContainer *coutput = mgr->CreateContainer(listName,TList::Class(),AliAnalysisManager::kOutputContainer,fileName); |
115 | mgr->ConnectInput(task,0,mgr->GetCommonInputContainer()); | |
116 | mgr->ConnectOutput(task,1,coutput); | |
155dada9 | 117 | |
c54b626a | 118 | return task; |
155dada9 | 119 | } |