17 #include <TClonesArray.h> 19 #include <TObjString.h> 24 #include "TDatabasePDG.h" 29 #include "AliMCEvent.h" 34 #include "AliVParticle.h" 37 #include "AliVTrack.h" 38 #include "AliVCluster.h" 39 #include "AliESDEvent.h" 40 #include "AliAODEvent.h" 43 #include "AliEMCALGeometry.h" 44 #include "AliPHOSGeoUtils.h" 55 fIsoDetector(-1), fIsoDetectorString(
""),
56 fReMakeIC(0), fMakeSeveralIC(0),
57 fFillTMHisto(0), fFillSSHisto(1),
58 fFillPerSMHistograms(0),
59 fFillEMCALRegionHistograms(0), fFillUEBandSubtractHistograms(1),
60 fFillCellHistograms(0),
61 fFillOverlapHistograms(0),
62 fStudyTracksInCone(0), fStudyMCConversionRadius(0),
63 fFillTaggedDecayHistograms(0), fNDecayBits(0),
64 fDecayBits(), fDecayTagsM02Cut(0),
65 fFillNLMHistograms(0),
66 fLeadingOnly(0), fCheckLeadingWithNeutralClusters(0),
67 fSelectPrimariesInCone(0), fMakePrimaryPi0DecayStudy(0),
68 fFillBackgroundBinHistograms(0), fNBkgBin(0),
69 fFillPtTrigBinHistograms(0), fNPtTrigBin(0),
70 fMinCellsAngleOverlap(0),
72 fNCones(0), fNPtThresFrac(0),
73 fConeSizes(), fPtThresholds(),
74 fPtFractions(), fSumPtThresholds(),
75 fStudyPtCutInCone(0), fNPtCutsInCone(0),
76 fMinPtCutInCone(), fMaxPtCutInCone(),
77 fStudyEtaCutInCone(0), fNEtaCutsInCone(0), fEtaCutInCone(),
78 fStudyRCutInCone(0), fNRCutsInCone(0), fRCutInCone(),
79 fStudyNCellsCut(0), fNNCellsInCandidate(0), fNCellsInCandidate(),
80 fNCellsWithWeight(0), fTrigSupMod(-1),
81 fStudyExoticTrigger(0), fNExoCutInCandidate(0), fExoCutInCandidate(),
82 fMomentum(), fMomIso(),
83 fMomDaugh1(), fMomDaugh2(),
84 fTrackVector(), fProdVertex(),
85 fCluster(0), fClustersArr(0), fCaloCells(0),
86 fIsExoticTrigger(0), fClusterExoticity(1),
88 fhEIso(0), fhPtIso(0),
89 fhPtCentralityIso(0), fhPtEventPlaneIso(0),
91 fhPhiIso(0), fhEtaIso(0), fhEtaPhiIso(0),
93 fhENoIso(0), fhPtNoIso(0), fhPtNLocMaxNoIso(0),
94 fhEIsoExoTrigger(0), fhENoIsoExoTrigger(0),
95 fhPtIsoExoTrigger(0), fhPtNoIsoExoTrigger(0),
98 fhPtClusterInCone(0), fhPtCellInCone(0), fhPtTrackInCone(0),
99 fhPtInConeExoTrigger(0), fhPtClusterInConeExoTrigger(0), fhPtTrackInConeExoTrigger(0),
100 fhPtTrackInConeOtherBCPileUpSPD(0), fhPtTrackInConeVtxBC0(0),
101 fhPtTrackInConeBC0PileUpSPD(0),
102 fhPtInConePileUp(), fhPtInConeCent(0),
104 fhPerpConeSumPt(0), fhPerpConeSumPtTOFBC0(0),
105 fhPtInPerpCone(0), fhPtInPerpConeTOFBC0(0),
106 fhEtaPhiInConeCluster(0), fhEtaPhiCluster(0),
107 fhEtaPhiInConeTrack(0), fhEtaPhiTrack(0),
108 fhEtaPhiInPerpCone(0), fhEtaPhiInPerpConeTOFBC0(0),
109 fhEtaBandClusterEtaPhi(0), fhPhiBandClusterEtaPhi(0),
110 fhEtaBandTrackEtaPhi(0), fhPhiBandTrackEtaPhi(0),
111 fhEtaBandClusterPt(0), fhPhiBandClusterPt(0),
112 fhEtaBandTrackPt(0), fhPhiBandTrackPt(0),
113 fhEtaBandCell(0), fhPhiBandCell(0),
114 fhConePtLead(0), fhConePtLeadCluster(0), fhConePtLeadTrack(0),
115 fhConePtLeadClustervsTrack(0), fhConePtLeadClusterTrackFrac(0),
117 fhConeSumPtCellTrack(0),
118 fhConeSumPtCell(0), fhConeSumPtCluster(0), fhConeSumPtTrack(0),
119 fhConeSumPtExoTrigger(0), fhConeSumPtClusterExoTrigger(0), fhConeSumPtTrackExoTrigger(0),
121 fhConeSumPtEtaBandUECluster(0), fhConeSumPtPhiBandUECluster(0),
122 fhConeSumPtEtaBandUETrack(0), fhConeSumPtPhiBandUETrack(0),
123 fhConeSumPtEtaBandUECell(0), fhConeSumPtPhiBandUECell(0),
124 fhConeSumPtTrigEtaPhi(0),
125 fhConeSumPtCellTrackTrigEtaPhi(0),
126 fhConeSumPtEtaBandUEClusterTrigEtaPhi(0), fhConeSumPtPhiBandUEClusterTrigEtaPhi(0),
127 fhConeSumPtEtaBandUETrackTrigEtaPhi(0), fhConeSumPtPhiBandUETrackTrigEtaPhi(0),
128 fhConeSumPtEtaBandUECellTrigEtaPhi(0), fhConeSumPtPhiBandUECellTrigEtaPhi(0),
129 fhConeSumPtEtaUESub(0), fhConeSumPtPhiUESub(0),
130 fhConeSumPtEtaUESubTrigEtaPhi(0), fhConeSumPtPhiUESubTrigEtaPhi(0),
131 fhConeSumPtEtaUESubTrackCell(0), fhConeSumPtPhiUESubTrackCell(0),
132 fhConeSumPtEtaUESubTrackCellTrigEtaPhi(0), fhConeSumPtPhiUESubTrackCellTrigEtaPhi(0),
133 fhConeSumPtEtaUENormCluster(0), fhConeSumPtPhiUENormCluster(0),
134 fhConeSumPtEtaUESubCluster(0), fhConeSumPtPhiUESubCluster(0),
135 fhConeSumPtEtaUESubClusterTrigEtaPhi(0), fhConeSumPtPhiUESubClusterTrigEtaPhi(0),
136 fhConeSumPtEtaUESubCell(0), fhConeSumPtPhiUESubCell(0),
137 fhConeSumPtEtaUESubCellTrigEtaPhi(0), fhConeSumPtPhiUESubCellTrigEtaPhi(0),
138 fhConeSumPtEtaUENormTrack(0), fhConeSumPtPhiUENormTrack(0),
139 fhConeSumPtEtaUESubTrack(0), fhConeSumPtPhiUESubTrack(0),
140 fhConeSumPtEtaUESubTrackTrigEtaPhi(0), fhConeSumPtPhiUESubTrackTrigEtaPhi(0),
141 fhFractionTrackOutConeEta(0), fhFractionTrackOutConeEtaTrigEtaPhi(0),
142 fhFractionClusterOutConeEta(0), fhFractionClusterOutConeEtaTrigEtaPhi(0),
143 fhFractionClusterOutConePhi(0), fhFractionClusterOutConePhiTrigEtaPhi(0),
144 fhFractionCellOutConeEta(0), fhFractionCellOutConeEtaTrigEtaPhi(0),
145 fhFractionCellOutConePhi(0), fhFractionCellOutConePhiTrigEtaPhi(0),
146 fhConeSumPtClustervsTrack(0), fhConeSumPtClusterTrackFrac(0),
147 fhConeSumPtEtaUESubClustervsTrack(0), fhConeSumPtPhiUESubClustervsTrack(0),
148 fhConeSumPtCellvsTrack(0),
149 fhConeSumPtEtaUESubCellvsTrack(0), fhConeSumPtPhiUESubCellvsTrack(0),
150 fhEtaBandClustervsTrack(0), fhPhiBandClustervsTrack(0),
151 fhEtaBandNormClustervsTrack(0), fhPhiBandNormClustervsTrack(0),
152 fhEtaBandCellvsTrack(0), fhPhiBandCellvsTrack(0),
153 fhEtaBandNormCellvsTrack(0), fhPhiBandNormCellvsTrack(0),
154 fhConeSumPtSubvsConeSumPtTotPhiTrack(0), fhConeSumPtSubNormvsConeSumPtTotPhiTrack(0),
155 fhConeSumPtSubvsConeSumPtTotEtaTrack(0), fhConeSumPtSubNormvsConeSumPtTotEtaTrack(0),
156 fhConeSumPtSubvsConeSumPtTotPhiCluster(0), fhConeSumPtSubNormvsConeSumPtTotPhiCluster(0),
157 fhConeSumPtSubvsConeSumPtTotEtaCluster(0), fhConeSumPtSubNormvsConeSumPtTotEtaCluster(0),
158 fhConeSumPtSubvsConeSumPtTotPhiCell(0), fhConeSumPtSubNormvsConeSumPtTotPhiCell(0),
159 fhConeSumPtSubvsConeSumPtTotEtaCell(0), fhConeSumPtSubNormvsConeSumPtTotEtaCell(0),
160 fhConeSumPtVSUETracksEtaBand(0), fhConeSumPtVSUETracksPhiBand(0),
161 fhConeSumPtVSUEClusterEtaBand(0), fhConeSumPtVSUEClusterPhiBand(0),
162 fhPtPrimMCPi0DecayPairOutOfCone(0),
163 fhPtPrimMCPi0DecayPairOutOfAcceptance(0),
164 fhPtPrimMCPi0DecayPairOutOfAcceptanceNoOverlap(0),
165 fhPtPrimMCPi0DecayPairAcceptInConeLowPt(0),
166 fhPtPrimMCPi0DecayPairAcceptInConeLowPtNoOverlap(0),
167 fhPtPrimMCPi0DecayPairAcceptInConeLowPtNoOverlapCaloE(0),
168 fhPtPrimMCPi0DecayPairNoOverlap(0),
169 fhPtPrimMCPi0DecayIsoPairOutOfCone(0),
170 fhPtPrimMCPi0DecayIsoPairOutOfAcceptance(0),
171 fhPtPrimMCPi0DecayIsoPairOutOfAcceptanceNoOverlap(0),
172 fhPtPrimMCPi0DecayIsoPairAcceptInConeLowPt(0),
173 fhPtPrimMCPi0DecayIsoPairAcceptInConeLowPtNoOverlap(0),
174 fhPtPrimMCPi0DecayIsoPairAcceptInConeLowPtNoOverlapCaloE(0),
175 fhPtPrimMCPi0DecayIsoPairNoOverlap(0),
176 fhPtPrimMCPi0Overlap(0), fhPtPrimMCPi0IsoOverlap(0),
177 fhPtPrimMCEtaDecayPairOutOfCone(0),
178 fhPtPrimMCEtaDecayPairOutOfAcceptance(0),
179 fhPtPrimMCEtaDecayPairOutOfAcceptanceNoOverlap(0),
180 fhPtPrimMCEtaDecayPairAcceptInConeLowPt(0),
181 fhPtPrimMCEtaDecayPairAcceptInConeLowPtNoOverlap(0),
182 fhPtPrimMCEtaDecayPairAcceptInConeLowPtNoOverlapCaloE(0),
183 fhPtPrimMCEtaDecayPairNoOverlap(0),
184 fhPtPrimMCEtaDecayIsoPairOutOfCone(0),
185 fhPtPrimMCEtaDecayIsoPairOutOfAcceptance(0),
186 fhPtPrimMCEtaDecayIsoPairOutOfAcceptanceNoOverlap(0),
187 fhPtPrimMCEtaDecayIsoPairAcceptInConeLowPt(0),
188 fhPtPrimMCEtaDecayIsoPairAcceptInConeLowPtNoOverlap(0),
189 fhPtPrimMCEtaDecayIsoPairAcceptInConeLowPtNoOverlapCaloE(0),
190 fhPtPrimMCEtaDecayIsoPairNoOverlap(0),
191 fhPtPrimMCEtaOverlap(0), fhPtPrimMCEtaIsoOverlap(0),
192 fhPtLeadConeBin(0), fhSumPtConeBin(0),
193 fhSumPtConeAfterEtaBandUESubBin(0),
194 fhPtLeadConeBinMC(0),
195 fhSumPtConeAfterEtaBandUESubBinMC(0),
197 fhPtLeadConeBinDecay(0), fhSumPtConeBinDecay(0),
198 fhPtLeadConeBinLambda0(0), fhSumPtConeBinLambda0(0),
199 fhSumPtConeAfterEtaBandUESubBinLambda0(0), fhPtLeadConeBinLambda0MC(0),
200 fhSumPtConeAfterEtaBandUESubBinLambda0MC(0),fhSumPtConeBinLambda0MC(0),
201 fhPtTrigBinPtLeadCone(0), fhPtTrigBinSumPtCone(0),
203 fhPtTrigBinSumPtTrackCone(0), fhPtTrigBinSumPtClusterCone(0),
204 fhPtTrigBinPtLeadConeMC(0), fhPtTrigBinSumPtConeMC(0),
205 fhPtTrigBinSumPtTrackConeMC(0), fhPtTrigBinSumPtClusterConeMC(0),
206 fhPtTrigBinPtLeadConeDecay(0), fhPtTrigBinSumPtConeDecay(0),
207 fhPtTrigBinSumPtTrackConeDecay(0), fhPtTrigBinSumPtClusterConeDecay(0),
208 fhPtTrigBinLambda0vsPtLeadCone(0), fhPtTrigBinLambda0vsSumPtCone(0),
209 fhPtTrigBinLambda0vsSumPtTrackCone(0), fhPtTrigBinLambda0vsSumPtClusterCone(0),
210 fhPtTrigBinLambda0vsPtLeadConeMC(0), fhPtTrigBinLambda0vsSumPtConeMC(0),
211 fhPtTrigBinLambda0vsSumPtTrackConeMC(0), fhPtTrigBinLambda0vsSumPtClusterConeMC(0),
212 fhPtTrigBinLambda0vsSumPtConeMCNoOverlap(0),fhPtTrigBinLambda0vsSumPtTrackConeMCNoOverlap(0),
213 fhPtTrigBinLambda0vsSumPtClusterConeMCNoOverlap(0), fhPtTrigBinLambda0vsSumPtConeMC1Overlap(0),
214 fhPtTrigBinLambda0vsSumPtTrackConeMC1Overlap(0),fhPtTrigBinLambda0vsSumPtClusterConeMC1Overlap(0),
219 fhELambda0LocMax1(), fhELambda1LocMax1(),
220 fhELambda0LocMax2(), fhELambda1LocMax2(),
221 fhELambda0LocMaxN(), fhELambda1LocMaxN(),
223 fhEIsoPileUp(), fhPtIsoPileUp(),
224 fhENoIsoPileUp(), fhPtNoIsoPileUp(),
225 fhTimeENoCut(0), fhTimeESPD(0), fhTimeESPDMulti(0),
226 fhTimeNPileUpVertSPD(0), fhTimeNPileUpVertTrack(0),
227 fhTimeNPileUpVertContributors(0),
228 fhTimePileUpMainVertexZDistance(0), fhTimePileUpMainVertexZDiamond(0),
230 fhPtClusterInConePerRCut(0), fhPtClusterInConePerRCutLargePtTrig(0),
231 fhPtTrackInConePerRCut(0), fhPtTrackInConePerRCutLargePtTrig(0),
232 fhConeSumPtClusterPerRCut(0), fhConeSumPtClusterPerRCutLargePtTrig(0),
233 fhConeSumPtTrackPerRCut(0), fhConeSumPtTrackPerRCutLargePtTrig(0),
234 fhConeNClusterPerMinPtCut(0), fhConeNClusterPerMinPtCutLargePtTrig(0),
235 fhConeNTrackPerMinPtCut(0), fhConeNTrackPerMinPtCutLargePtTrig(0),
236 fhPerpConeNTrackPerMinPtCut(0), fhPerpConeNTrackPerMinPtCutLargePtTrig(0),
237 fhConeSumPtClusterPerMinPtCut(0), fhConeSumPtClusterPerMinPtCutLargePtTrig(0),
238 fhConeSumPtTrackPerMinPtCut(0), fhConeSumPtTrackPerMinPtCutLargePtTrig(0),
239 fhPerpConeSumPtTrackPerMinPtCut(0), fhPerpConeSumPtTrackPerMinPtCutLargePtTrig(0),
240 fhConeSumPtClusterPerMaxPtCut(0), fhConeSumPtClusterPerMaxPtCutLargePtTrig(0),
241 fhConeSumPtTrackPerMaxPtCut(0), fhConeSumPtTrackPerMaxPtCutLargePtTrig(0),
242 fhConeSumPtTrackPerEtaCut(0), fhConeSumPtTrackPerEtaCutLargePtTrig(0),
244 fhPtClusterInConePerNCellCut(0), fhPtClusterInConePerNCellCutLargePtTrig(0),
245 fhPtTrackInConePerNCellCut(0), fhPtTrackInConePerNCellCutLargePtTrig(0),
246 fhConeSumPtClusterPerNCellCut(0), fhConeSumPtClusterPerNCellCutLargePtTrig(0),
247 fhConeSumPtTrackPerNCellCut(0), fhConeSumPtTrackPerNCellCutLargePtTrig(0),
248 fhPtClusterInConePerExoCut(0), fhPtClusterInConePerExoCutLargePtTrig(0),
249 fhPtTrackInConePerExoCut(0), fhPtTrackInConePerExoCutLargePtTrig(0),
250 fhConeSumPtClusterPerExoCut(0), fhConeSumPtClusterPerExoCutLargePtTrig(0),
251 fhConeSumPtTrackPerExoCut(0), fhConeSumPtTrackPerExoCutLargePtTrig(0),
253 fhConeSumPtTrackTOFBC0(0), fhConeSumPtTrackTOFBCN(0), fhConeSumPtTrackTOFNo(0),
254 fhPtTrackInConeTOFBC0 (0), fhPtTrackInConeTOFBCN (0), fhPtTrackInConeTOFNo (0),
255 fhPhiTrackInCone(0), fhEtaTrackInCone(0), fhEtaPhiTrackInCone(0),
256 fhPhiTrackInConeTOFBC0(0), fhPhiTrackInConeTOFBCN(0), fhPhiTrackInConeTOFNo(0),
257 fhEtaTrackInConeTOFBC0(0), fhEtaTrackInConeTOFBCN(0), fhEtaTrackInConeTOFNo(0),
258 fhEtaPhiTrackInConeTOFBC0(0), fhEtaPhiTrackInConeTOFBCN(0), fhEtaPhiTrackInConeTOFNo(0),
259 fhTrackTOFInCone(0), fhTrackTOFInConeBC0(0), fhTrackTOFInConeExoTrigger(0),
261 fhConeSumPtTrackITSRefitOnSPDOn(0), fhConeSumPtTrackITSRefitOnSPDOff(0), fhConeSumPtTrackITSRefitOffSPDOff(0),
262 fhPtTrackInConeITSRefitOnSPDOn(0), fhPtTrackInConeITSRefitOnSPDOff(0) , fhPtTrackInConeITSRefitOffSPDOff(0),
263 fhPhiTrackInConeITSRefitOnSPDOn(0), fhPhiTrackInConeITSRefitOnSPDOff(0), fhPhiTrackInConeITSRefitOffSPDOff(0),
264 fhEtaTrackInConeITSRefitOnSPDOn(0), fhEtaTrackInConeITSRefitOnSPDOff(0), fhEtaTrackInConeITSRefitOffSPDOff(0),
265 fhEtaPhiTrackInConeITSRefitOnSPDOn(0),fhEtaPhiTrackInConeITSRefitOnSPDOff(0), fhEtaPhiTrackInConeITSRefitOffSPDOff(0),
266 fhConeSumPtTrackTOFBC0ITSRefitOnSPDOn(0), fhPtTrackInConeTOFBC0ITSRefitOnSPDOn(0),
267 fhPhiTrackInConeTOFBC0ITSRefitOnSPDOn(0), fhEtaTrackInConeTOFBC0ITSRefitOnSPDOn(0),fhEtaPhiTrackInConeTOFBC0ITSRefitOnSPDOn(0),
268 fhPerpConeSumPtITSRefitOnSPDOn (0), fhPtInPerpConeITSRefitOnSPDOn(0), fhEtaPhiInPerpConeITSRefitOnSPDOn(0),
269 fhPerpConeSumPtTOFBC0ITSRefitOnSPDOn (0), fhPtInPerpConeTOFBC0ITSRefitOnSPDOn (0), fhEtaPhiInPerpConeTOFBC0ITSRefitOnSPDOn(0)
273 for(
Int_t i = 0; i < 5 ; i++)
280 for(
Int_t j = 0; j < 5 ; j++)
315 for(
Int_t iso =0; iso < 2; iso++)
325 for(
Int_t i = 0; i < 5 ; i++)
344 for(
Int_t i = 0; i < 2 ; i++)
360 for(
Int_t imc = 0; imc < 4; imc++)
368 for(
Int_t i = 0; i < 2 ; i++)
384 for(
Int_t ieta = 0; ieta < 4; ieta++)
386 for(
Int_t iphi = 0; iphi < 3; iphi++)
397 for(
Int_t ism =0; ism < 20; ism++)
420 for(
Int_t i = 0 ; i < 7 ; i++)
429 for(
Int_t i = 0 ; i < 3 ; i++)
435 for(
Int_t i = 0 ; i < 4 ; i++)
445 for(
Int_t ism =0; ism < 20; ism++)
488 for(
Int_t icluster=0; icluster < pl->GetEntriesFast(); icluster++)
490 AliVCluster* cluster = (AliVCluster *) pl->At(icluster);
494 AliWarning(
"Cluster not available?");
500 cluster->GetID() == pCandidate->
GetCaloLabel(1) )
continue ;
564 if(phiTrig<0) phiTrig += TMath::TwoPi();
570 AliEMCALGeometry* eGeom = AliEMCALGeometry::GetInstance();
573 if (eGeom->GetAbsCellIdFromEtaPhi(etaTrig,phiTrig,absId))
575 if(!eGeom->CheckAbsCellId(absId))
return ;
578 Int_t nSupMod = eGeom->GetSuperModuleNumber(absId);
580 Int_t imEta=-1, imPhi=-1;
581 Int_t ieta =-1, iphi =-1;
583 if (eGeom->GetCellIndex(absId,nSupMod,nModule,imPhi,imEta))
585 eGeom->GetCellPhiEtaIndexInSModule(nSupMod,nModule,imPhi,imEta,iphi,ieta);
587 Int_t colTrig = ieta;
588 if (nSupMod % 2) colTrig = AliEMCALGeoParams::fgkEMCALCols + ieta ;
590 Int_t rowTrig = iphi + AliEMCALGeoParams::fgkEMCALRows*int(nSupMod/2);
592 Int_t sqrSize = int(conesize/0.0143);
596 Int_t nTotalRows = AliEMCALGeoParams::fgkEMCALRows*16/3 ;
597 Int_t nTotalCols = 2*AliEMCALGeoParams::fgkEMCALCols;
601 Int_t irowmin = rowTrig-sqrSize;
602 if ( irowmin < 0 ) irowmin = 0 ;
604 Int_t irowmax = rowTrig+sqrSize;
605 if ( irowmax > AliEMCALGeoParams::fgkEMCALRows ) irowmax = AliEMCALGeoParams::fgkEMCALRows;
607 for(
Int_t irow = irowmin; irow <irowmax; irow++)
609 for(
Int_t icol = 0; icol < nTotalCols; icol++)
611 Int_t inSector = int(irow/AliEMCALGeoParams::fgkEMCALRows);
612 if(inSector==5)
continue;
615 if(icol < AliEMCALGeoParams::fgkEMCALCols)
617 inSupMod = 2*inSector + 1;
620 else if(icol > AliEMCALGeoParams::fgkEMCALCols - 1)
622 inSupMod = 2*inSector;
623 icolLoc = icol-AliEMCALGeoParams::fgkEMCALCols;
626 Int_t irowLoc = irow - AliEMCALGeoParams::fgkEMCALRows*inSector ;
629 if(TMath::Abs(icol-colTrig) < sqrSize || TMath::Abs(irow-rowTrig) < sqrSize){
633 Int_t iabsId = eGeom->GetAbsCellIdFromCellIndexes(inSupMod,irowLoc,icolLoc);
634 if(!eGeom->CheckAbsCellId(iabsId))
continue;
636 etaBandPtSumCells += cells->GetCellAmplitude(iabsId);
644 Int_t icolmin = colTrig-sqrSize;
645 if ( icolmin < 0 ) icolmin = 0;
647 Int_t icolmax = colTrig+sqrSize;
648 if ( icolmax > AliEMCALGeoParams::fgkEMCALCols ) icolmax = AliEMCALGeoParams::fgkEMCALCols;
651 for(
Int_t icol = icolmin; icol < icolmax; icol++)
653 for(
Int_t irow = 0; irow < nTotalRows; irow++)
655 Int_t inSector = int(irow/AliEMCALGeoParams::fgkEMCALRows);
656 if ( inSector == 5 ) continue ;
662 if(icol < AliEMCALGeoParams::fgkEMCALCols)
665 inSupMod = 2*inSector + 1;
668 else if(icol > AliEMCALGeoParams::fgkEMCALCols - 1)
671 inSupMod = 2*inSector;
672 icolLoc = icol-AliEMCALGeoParams::fgkEMCALCols;
675 Int_t irowLoc = irow - AliEMCALGeoParams::fgkEMCALRows*inSector ;
678 if(TMath::Abs(icol-colTrig) < sqrSize) {
681 if(TMath::Abs(irow-rowTrig) < sqrSize) {
685 Int_t iabsId = eGeom->GetAbsCellIdFromCellIndexes(inSupMod,irowLoc,icolLoc);
686 if(!eGeom->CheckAbsCellId(iabsId))
688 AliWarning(Form(
"!eGeom->CheckAbsCellId(iabsId=%i) inSupMod %i irowLoc %i icolLoc %i",iabsId,inSupMod, irowLoc, icolLoc));
692 phiBandPtSumCells += cells->GetCellAmplitude(iabsId);
725 Float_t coneptsumPerpTrackPerMinCut[20];
726 Float_t coneNPerpTrackPerMinCut [20];
732 coneptsumPerpTrackPerMinCut[icut] = 0;
733 coneNPerpTrackPerMinCut [icut] = 0;
744 for(
Int_t itrack=0; itrack < trackList->GetEntriesFast(); itrack++)
746 AliVTrack* track = (AliVTrack *) trackList->At(itrack);
750 AliWarning(
"Track not available?");
760 Bool_t contained = kFALSE;
762 for(
Int_t i = 0; i < 4; i++)
764 if( trackID == pCandidate->
GetTrackLabel(i) ) contained = kTRUE;
767 if ( contained ) continue ;
785 if(track->Eta() > (etaTrig-conesize) && track->Eta() < (etaTrig+conesize))
787 phiBandPtSum+=track->Pt();
794 if(track->Phi() > (phiTrig-conesize) && track->Phi() < (phiTrig+conesize))
796 etaBandPtSum+=track->Pt();
804 Double_t dPhi = phiTrig - track->Phi() + TMath::PiOver2();
805 Double_t dEta = etaTrig - track->Eta();
806 Double_t arg = dPhi*dPhi + dEta*dEta;
808 if(TMath::Sqrt(arg) < conesize)
810 sumptPerp+=track->Pt();
818 ULong_t status = track->GetStatus();
819 Bool_t okTOF = (status & AliVTrack::kTOFout) == AliVTrack::kTOFout ;
820 Int_t trackBC = track->GetTOFBunchCrossing(bz);
823 if(okTOF && trackBC == 0)
828 sumptPerpBC0+=track->Pt();
831 Bool_t bConstrained = (!track->HasPointOnITSLayer(0) && !track->HasPointOnITSLayer(1));
838 sumptPerpITSSPD+=track->Pt();
841 if(okTOF && trackBC == 0 && !bConstrained)
846 sumptPerpBC0ITSSPD+=track->Pt();
852 dPhi = phiTrig - track->Phi() - TMath::PiOver2();
853 arg = dPhi*dPhi + dEta*dEta;
855 if(TMath::Sqrt(arg) < conesize)
857 sumptPerp+=track->Pt();
865 coneptsumPerpTrackPerMinCut[icut]+=track->Pt();
866 coneNPerpTrackPerMinCut [icut]++;
877 ULong_t status = track->GetStatus();
878 Bool_t okTOF = (status & AliVTrack::kTOFout) == AliVTrack::kTOFout ;
879 Int_t trackBC = track->GetTOFBunchCrossing(bz);
882 if(okTOF && trackBC == 0)
887 sumptPerpBC0+=track->Pt();
890 Bool_t bConstrained = (!track->HasPointOnITSLayer(0) && !track->HasPointOnITSLayer(1));
897 sumptPerpITSSPD+=track->Pt();
900 if(okTOF && trackBC == 0 && !bConstrained)
905 sumptPerpBC0ITSSPD+=track->Pt();
916 AliAODTrack * aodTrack =
dynamic_cast<AliAODTrack*
>(track);
917 dcaCons = aodTrack->DCA();
920 track->PropagateToDCA(
GetReader()->GetInputEvent()->GetPrimaryVertex(),bz,100.,dca,covar);
981 Float_t etaUEptsumCluster = 0 ;
982 Float_t phiUEptsumCluster = 0 ;
991 Float_t coneA = conesize*conesize*TMath::Pi();
1002 Float_t phiUEptsumTrackNorm = 0 ;
1003 Float_t etaUEptsumTrackNorm = 0 ;
1004 Float_t coneptsumTrackSubPhi = 0 ;
1005 Float_t coneptsumTrackSubEta = 0 ;
1006 Float_t coneptsumTrackSubPhiNorm = 0 ;
1007 Float_t coneptsumTrackSubEtaNorm = 0 ;
1021 Float_t correctConeSumTrack = 1;
1022 Float_t correctConeSumTrackPhi = 1;
1025 phiUEptsumTrack,etaUEptsumTrack,
1026 phiUEptsumTrackNorm,etaUEptsumTrackNorm,
1027 correctConeSumTrack,correctConeSumTrackPhi);
1029 coneptsumTrackSubPhi = coneptsumTrack - phiUEptsumTrackNorm;
1030 coneptsumTrackSubEta = coneptsumTrack - etaUEptsumTrackNorm;
1038 if(coneptsumTrack > 0)
1040 coneptsumTrackSubPhiNorm = coneptsumTrackSubPhi/coneptsumTrack;
1041 coneptsumTrackSubEtaNorm = coneptsumTrackSubEta/coneptsumTrack;
1062 Float_t phiUEptsumClusterNorm = 0 ;
1063 Float_t etaUEptsumClusterNorm = 0 ;
1064 Float_t coneptsumClusterSubPhi = 0 ;
1065 Float_t coneptsumClusterSubEta = 0 ;
1066 Float_t coneptsumClusterSubPhiNorm = 0 ;
1067 Float_t coneptsumClusterSubEtaNorm = 0 ;
1068 Float_t phiUEptsumCellNorm = 0 ;
1069 Float_t etaUEptsumCellNorm = 0 ;
1070 Float_t coneptsumCellSubPhi = 0 ;
1071 Float_t coneptsumCellSubEta = 0 ;
1072 Float_t coneptsumCellSubPhiNorm = 0 ;
1073 Float_t coneptsumCellSubEtaNorm = 0 ;
1091 Float_t correctConeSumClusterEta = 1;
1092 Float_t correctConeSumClusterPhi = 1;
1095 phiUEptsumCluster,etaUEptsumCluster,
1096 phiUEptsumClusterNorm,etaUEptsumClusterNorm,
1097 correctConeSumClusterEta,correctConeSumClusterPhi);
1108 coneptsumClusterSubPhi = coneptsumCluster - phiUEptsumClusterNorm;
1109 coneptsumClusterSubEta = coneptsumCluster - etaUEptsumClusterNorm;
1116 if(coneptsumCluster!=0)
1118 coneptsumClusterSubPhiNorm = coneptsumClusterSubPhi/coneptsumCluster;
1119 coneptsumClusterSubEtaNorm = coneptsumClusterSubEta/coneptsumCluster;
1151 Float_t emcPhiSize = TMath::DegToRad()*100.;
1153 if(((2*conesize*emcPhiSize)-coneA)!=0)phiUEptsumCellNorm = phiUEptsumCell*(coneA / ((2*conesize*emcPhiSize)-coneA));
1154 if(((2*conesize*emcEtaSize)-coneA)!=0)etaUEptsumCellNorm = etaUEptsumCell*(coneA / ((2*conesize*emcEtaSize)-coneA));
1158 Float_t correctConeSumCellEta = 1;
1159 if(TMath::Abs(etaTrig)+conesize > emcEtaSize/2.)
1161 Float_t excess = TMath::Abs(etaTrig) + conesize - emcEtaSize/2.;
1165 if(((2*(conesize-excess)*emcPhiSize)-(coneA-correctConeSumCellEta))!=0)phiUEptsumCellNorm = phiUEptsumCell*(coneA / ((2*(conesize-excess)*emcPhiSize)-(coneA-correctConeSumCellEta)));
1168 Float_t correctConeSumCellPhi = 1;
1170 if((phiTrig+conesize > 180*TMath::DegToRad()) ||
1171 (phiTrig-conesize < 80*TMath::DegToRad()))
1174 if( phiTrig+conesize > 180*TMath::DegToRad() ) excess = conesize + phiTrig - 180*TMath::DegToRad() ;
1175 else excess = conesize - phiTrig + 80*TMath::DegToRad() ;
1181 if(((2*(conesize-excess)*emcEtaSize)-(coneA-correctConeSumCellPhi))!=0)etaUEptsumCellNorm = etaUEptsumCell*(coneA / ((2*(conesize-excess)*emcEtaSize)-(coneA-correctConeSumCellPhi)));
1185 coneptsumCellSubPhi = coneptsumCell*correctConeSumCellEta*correctConeSumCellPhi - phiUEptsumCellNorm;
1186 coneptsumCellSubEta = coneptsumCell*correctConeSumCellEta*correctConeSumCellPhi - etaUEptsumCellNorm;
1197 if ( coneptsumCell > 0.01 )
1199 coneptsumCellSubPhiNorm = coneptsumCellSubPhi/coneptsumCell;
1200 coneptsumCellSubEtaNorm = coneptsumCellSubEta/coneptsumCell;
1210 sumPhiUESub = coneptsumClusterSubPhi + coneptsumTrackSubPhi;
1211 sumEtaUESub = coneptsumClusterSubEta + coneptsumTrackSubEta;
1241 Int_t ptsumAfterEtaBandUESubBin = -1;
1243 AliDebug(1,Form(
"pT cand: %2.2f, In cone pT: Sum %2.2f, n bins %d",pt,coneptsumTrack+coneptsumCluster,
fNBkgBin));
1252 if ( ptsumAfterEtaBandUESubBin >= 0 )
1254 AliDebug(1,Form(
"\t Sum bin %d [%2.2f,%2.2f]" , ptsumAfterEtaBandUESubBin ,
fBkgBinLimit[ptsumAfterEtaBandUESubBin] ,
fBkgBinLimit[ptsumAfterEtaBandUESubBin +1]));
1263 Int_t ptsumAfterEtaBandSubBinMC = ptsumAfterEtaBandUESubBin+mcIndex*
fNBkgBin;
1265 if( ptsumAfterEtaBandUESubBin >=0 )
1275 if( ptsumAfterEtaBandUESubBin >=0 )
1294 AliFatal(Form(
"Lost decay Bit assigned to bad case, mcIndex %d",mcIndex));
1296 if( ptsumAfterEtaBandUESubBin >=0 )
1315 Double_t sumPhiUESubTrackCell = coneptsumCellSubPhi + coneptsumTrackSubPhi;
1316 Double_t sumEtaUESubTrackCell = coneptsumCellSubEta + coneptsumTrackSubEta;
1340 coneptLeadCluster = 0;
1341 coneptsumCluster = 0;
1359 if(coneptLeadCluster > 0 || coneptsumCluster > 0)
1360 AliError(Form(
"No ref tracks!!! sum %f, lead %f",coneptsumCluster,coneptLeadCluster));
1371 Float_t coneNClusterPerMinCut [20];
1372 Float_t coneptsumClusterPerMinCut[20];
1373 Float_t coneptsumClusterPerMaxCut[20];
1374 Float_t coneptsumClusterPerRCut [10];
1376 Float_t coneptsumClusterPerNCellCut[20];
1377 Float_t coneptsumClusterPerExoCut [20];
1383 coneNClusterPerMinCut [icut] = 0;
1384 coneptsumClusterPerMinCut[icut] = 0;
1385 coneptsumClusterPerMaxCut[icut] = 0;
1393 coneptsumClusterPerRCut[icut] = 0;
1401 if ( m02 > 0.1 && m02 <= 0.3 ) ishsh = 0;
1402 else if ( m02 > 0.3 && m02 <= 0.4 ) ishsh = 1;
1403 else if ( m02 > 0.4 && m02 <= 1.0 ) ishsh = 2;
1404 else if ( m02 > 1.0 && m02 <= 3.0 ) ishsh = 3;
1408 coneptsumClusterPerNCellCut[icut] = 0;
1416 coneptsumClusterPerExoCut[icut] = 0;
1420 for(
Int_t icalo=0; icalo < refclusters->GetEntriesFast(); icalo++)
1422 AliVCluster* calo = (AliVCluster *) refclusters->At(icalo);
1455 coneptsumCluster+=ptcone;
1456 if(ptcone > coneptLeadCluster) coneptLeadCluster = ptcone;
1464 coneptsumClusterPerMinCut[icut]+=ptcone;
1465 coneNClusterPerMinCut [icut]++;
1468 if ( ptcone <
fMaxPtCutInCone[icut] ) coneptsumClusterPerMaxCut[icut]+=ptcone;
1479 coneptsumClusterPerRCut[icut]+=ptcone;
1488 if ( ptTrig > 8 && ptTrig < 12 && ishsh >=0 )
1495 coneptsumClusterPerNCellCut[icut]+=ptcone;
1508 coneptsumClusterPerExoCut[icut]+=ptcone;
1556 if ( ptTrig > 8 && ptTrig < 12 && ishsh >=0 )
1591 if(phiTrig<0) phiTrig += TMath::TwoPi();
1596 AliEMCALGeometry* eGeom = AliEMCALGeometry::GetInstance();
1599 if (eGeom->GetAbsCellIdFromEtaPhi(etaTrig,phiTrig,absId))
1601 if(!eGeom->CheckAbsCellId(absId))
return ;
1604 Int_t nSupMod = eGeom->GetSuperModuleNumber(absId);
1606 Int_t imEta=-1, imPhi=-1;
1607 Int_t ieta =-1, iphi =-1;
1609 if (eGeom->GetCellIndex(absId,nSupMod,nModule,imPhi,imEta))
1611 Int_t iEta=-1, iPhi=-1;
1612 eGeom->GetCellPhiEtaIndexInSModule(nSupMod,nModule,imPhi,imEta,iphi,ieta);
1614 Int_t colTrig = iEta;
1615 if (nSupMod % 2) colTrig = AliEMCALGeoParams::fgkEMCALCols + iEta ;
1616 Int_t rowTrig = iPhi + AliEMCALGeoParams::fgkEMCALRows*int(nSupMod/2);
1618 Int_t sqrSize = int(conesize/0.0143);
1623 for(
Int_t irow = rowTrig-sqrSize; irow < rowTrig+sqrSize; irow++)
1625 for(
Int_t icol = colTrig-sqrSize; icol < colTrig+sqrSize; icol++)
1627 Int_t inSector = int(irow/AliEMCALGeoParams::fgkEMCALRows);
1628 if(inSector==5)
continue;
1630 Int_t inSupMod = -1;
1632 if(icol < AliEMCALGeoParams::fgkEMCALCols)
1634 inSupMod = 2*inSector + 1;
1637 else if(icol > AliEMCALGeoParams::fgkEMCALCols - 1)
1639 inSupMod = 2*inSector;
1640 icolLoc = icol-AliEMCALGeoParams::fgkEMCALCols;
1643 Int_t irowLoc = irow - AliEMCALGeoParams::fgkEMCALRows*inSector ;
1645 Int_t iabsId = eGeom->GetAbsCellIdFromCellIndexes(inSupMod,irowLoc,icolLoc);
1646 if(!eGeom->CheckAbsCellId(iabsId))
continue;
1649 coneptsumCell += cells->GetCellAmplitude(iabsId);
1665 coneptLeadTrack = 0;
1696 if(coneptLeadTrack > 0 || coneptsumTrack > 0)
1697 AliError(Form(
"No ref tracks!!! sum %f, lead %f",coneptsumTrack,coneptLeadTrack));
1706 Float_t coneNTrackPerMinCut [20];
1707 Float_t coneptsumTrackPerMinCut[20];
1708 Float_t coneptsumTrackPerMaxCut[20];
1709 Float_t coneptsumTrackPerEtaCut[10];
1710 Float_t coneptsumTrackPerNCellCut[20];
1711 Float_t coneptsumTrackPerExoCut[20];
1712 Float_t coneptsumTrackPerRCut [10];
1713 Float_t coneptsumTrackTOFBC0 = 0;
1714 Float_t coneptsumTrackTOFBCN = 0;
1715 Float_t coneptsumTrackTOFNo = 0;
1716 Float_t coneptsumTrackITSRefitOnSPDOn = 0;
1717 Float_t coneptsumTrackITSRefitOnSPDOff = 0;
1718 Float_t coneptsumTrackITSRefitOffSPDOff = 0;
1719 Float_t coneptsumTrackTOFBC0ITSRefitOnSPDOn = 0;
1725 coneptsumTrackPerMinCut[icut] = 0;
1726 coneptsumTrackPerMaxCut[icut] = 0;
1727 coneNTrackPerMinCut [icut] = 0;
1735 coneptsumTrackPerEtaCut[icut] = 0;
1743 coneptsumTrackPerRCut[icut] = 0;
1751 if ( m02 > 0.1 && m02 <= 0.3 ) ishsh = 0;
1752 else if ( m02 > 0.3 && m02 <= 0.4 ) ishsh = 1;
1753 else if ( m02 > 0.4 && m02 <= 1.0 ) ishsh = 2;
1754 else if ( m02 > 1.0 && m02 <= 3.0 ) ishsh = 3;
1758 coneptsumTrackPerNCellCut[icut] = 0;
1766 coneptsumTrackPerExoCut[icut] = 0;
1770 for(
Int_t itrack=0; itrack < reftracks->GetEntriesFast(); itrack++)
1772 AliVTrack* track = (AliVTrack *) reftracks->At(itrack);
1774 pTtrack = track->Pt();
1787 Int_t trackLabel = TMath::Abs(track->GetLabel());
1789 AliVParticle * mcpart =
GetMC()->GetTrack(trackLabel);
1790 if( !mcpart )
continue;
1792 Int_t partInConeCharge = TMath::Abs(mcpart->Charge());
1793 Int_t partInConePDG = mcpart->PdgCode();
1794 Bool_t physPrimary = mcpart->IsPhysicalPrimary();
1796 if ( partInConeCharge > 0 && TMath::Abs(partInConePDG) != 11 )
1799 if ( TMath::Abs(partInConePDG) == 211 ) mcChTag = 0;
1800 else if ( TMath::Abs(partInConePDG) == 321 ) mcChTag = 1;
1801 else if ( TMath::Abs(partInConePDG) == 2212 ) mcChTag = 2;
1817 coneptsumTrack+=pTtrack;
1818 if(pTtrack > coneptLeadTrack) coneptLeadTrack = pTtrack;
1826 coneptsumTrackPerMinCut[icut]+=pTtrack;
1827 coneNTrackPerMinCut [icut]++;
1830 if ( pTtrack <
fMaxPtCutInCone[icut] ) coneptsumTrackPerMaxCut[icut]+=pTtrack;
1838 if ( TMath::Abs(track->Eta()) <
fEtaCutInCone[icut] ) coneptsumTrackPerEtaCut[icut]+=pTtrack;
1849 coneptsumTrackPerRCut[icut]+=pTtrack;
1860 if ( ptTrig > 8 && ptTrig < 12 && ishsh >=0 )
1865 coneptsumTrackPerNCellCut[icut]+=pTtrack;
1878 coneptsumTrackPerExoCut[icut]+=pTtrack;
1889 phitrack = track->Phi();
1890 etatrack = track->Eta();
1897 ULong_t status = track->GetStatus();
1898 okTOF = (status & AliVTrack::kTOFout) == AliVTrack::kTOFout ;
1899 trackBC = track->GetTOFBunchCrossing(bz);
1900 Double32_t tof = track->GetTOFsignal()*1e-3;
1919 coneptsumTrackTOFBC0 += pTtrack;
1927 coneptsumTrackTOFBCN += pTtrack;
1936 coneptsumTrackTOFNo += pTtrack;
1940 Bool_t bITSRefit = (status & AliVTrack::kITSrefit) == AliVTrack::kITSrefit;
1941 Bool_t bConstrained = (!track->HasPointOnITSLayer(0) && !track->HasPointOnITSLayer(1));
1949 coneptsumTrackITSRefitOnSPDOff += pTtrack;
1957 coneptsumTrackITSRefitOffSPDOff += pTtrack;
1966 coneptsumTrackITSRefitOnSPDOn += pTtrack;
1973 if(okTOF && trackBC == 0 && !bConstrained)
1979 coneptsumTrackTOFBC0ITSRefitOnSPDOn += pTtrack;
1992 AliAODTrack * aodTrack =
dynamic_cast<AliAODTrack*
>(track);
1993 dcaCons = aodTrack->DCA();
1996 track->PropagateToDCA(
GetReader()->GetInputEvent()->GetPrimaryVertex(),bz,100.,dca,covar);
2093 if ( ptTrig > 8 && ptTrig < 12 && ishsh >=0 )
2124 if(energy < 8)
return;
2130 Int_t nVerticesSPD = -1;
2131 Int_t nVerticesTracks = -1;
2135 nVerticesSPD = esdEv->GetNumberOfPileupVerticesSPD();
2136 nVerticesTracks = esdEv->GetNumberOfPileupVerticesTracks();
2141 nVerticesSPD = aodEv->GetNumberOfPileupVerticesSPD();
2142 nVerticesTracks = aodEv->GetNumberOfPileupVerticesTracks();
2154 for(
Int_t iVert=0; iVert<nVerticesSPD;iVert++)
2158 const AliESDVertex* pv=esdEv->GetPileupVertexSPD(iVert);
2159 ncont=pv->GetNContributors();
2160 z1 = esdEv->GetPrimaryVertexSPD()->GetZ();
2162 diamZ = esdEv->GetDiamondZ();
2166 AliAODVertex *pv=aodEv->GetVertex(iVert);
2167 if(pv->GetType()!=AliAODVertex::kPileupSPD)
continue;
2168 ncont=pv->GetNContributors();
2169 z1=aodEv->GetPrimaryVertexSPD()->GetZ();
2171 diamZ = aodEv->GetDiamondZ();
2174 Double_t distZ = TMath::Abs(z2-z1);
2175 diamZ = TMath::Abs(z2-diamZ);
2210 if(decayTag < 0) decayTag = 0;
2247 Int_t ptsumBin = -1;
2248 Int_t leadptBin = -1;
2250 AliDebug(1,Form(
"pT cand: %2.2f, In cone pT: Sum %2.2f, Lead %2.2f, n bins %d",pt,coneptsum,coneleadpt,
fNBkgBin));
2260 if ( leadptBin >= 0 )
2269 if ( leadptBin == 0 )
2270 AliDebug(1,Form(
"No track/clusters in isolation cone: cand pt %2.2f GeV/c, track multiplicity %d, N clusters %d",
2274 if ( ptsumBin >= 0 )
2287 if(decayTag < 0) decayTag = 0;
2349 AliFatal(Form(
"Lost decay Bit assigned to bad case, mcIndex %d",mcIndex));
2369 Int_t ptTrigBin = -1;
2378 if ( ptTrigBin >= 0 )
2407 if(decayTag < 0) decayTag = 0;
2496 Int_t noverlaps = 0;
2500 Int_t overpdg[nlabels];
2501 Int_t overlab[nlabels];
2503 GetMC(), overpdg, overlab);
2531 if ( noverlaps == 1 )
2558 else if (noverlaps == 0 )
2597 if ( ptTrigBin >= 0 )
2646 if ( noverlaps == 0 )
2691 else if ( noverlaps == 1 )
2797 if(TMath::Abs(dZ) < 0.05 && TMath::Abs(dR) < 0.05)
2803 Float_t dEdx = track->GetTPCsignal();
2843 const Int_t buffersize = 255;
2844 char onePar[buffersize] ;
2846 snprintf(onePar, buffersize,
"--- AliAnaParticleIsolation ---:") ;
2850 snprintf(onePar, buffersize,
"Isolation Cand. Detector: %s;",
fIsoDetectorString.Data()) ;
2854 snprintf(onePar, buffersize,
"fReMakeIC =%d (Flag for reisolation during histogram filling);",
fReMakeIC) ;
2856 snprintf(onePar, buffersize,
"fMakeSeveralIC=%d (Flag for isolation with several cuts at the same time );",
fMakeSeveralIC) ;
2858 snprintf(onePar, buffersize,
"fFillTMHisto=%d (Flag for track matching histograms);",
fFillTMHisto) ;
2860 snprintf(onePar, buffersize,
"fFillSSHisto=%d (Flag for shower shape histograms);",
fFillSSHisto) ;
2865 snprintf(onePar, buffersize,
"fNCones =%d (Number of cone sizes);",
fNCones) ;
2867 snprintf(onePar, buffersize,
"fNPtThresFrac=%d (Flag for isolation with several cuts at the same time);",
fNPtThresFrac) ;
2872 snprintf(onePar, buffersize,
"fConeSizes[%d]=%1.2f (isolation cone size);",icone,
fConeSizes[icone]) ;
2877 snprintf(onePar, buffersize,
"fPtThresholds[%d]=%1.2f (isolation pt threshold);",ipt,
fPtThresholds[ipt]) ;
2882 snprintf(onePar, buffersize,
"fPtFractions[%d]=%1.2f (isolation pt fraction threshold);",ipt,
fPtFractions[ipt]) ;
2887 snprintf(onePar, buffersize,
"fSumPtThresholds[%d]=%1.2f (isolation sum pt threshold);",ipt,
fSumPtThresholds[ipt]) ;
2898 return new TObjString(parList) ;
2908 outputContainer->SetName(
"IsolatedParticleHistos") ;
2952 Int_t cellBins = 15;
2970 sThreshold = Form(
", %2.2f < #Sigma #it{p}_{T}^{in cone} < %2.2f GeV/#it{c}",
2973 sThreshold = Form(
", #Sigma #it{p}_{T}^{in cone} = %2.2f GeV/#it{c}",
2978 sThreshold = Form(
", %2.2f < #it{p}_{T}^{th} < %2.2f GeV/#it{c}",
2981 sThreshold = Form(
", #it{p}_{T}^{th} = %2.2f GeV/#it{c}",
2985 sThreshold = Form(
", #Sigma #it{p}_{T}^{in cone}/#it{p}_{T}^{trig} = %2.2f" ,
2988 TString sParticle =
", x^{0,#pm}";
2992 TString parTitle = Form(
"#it{R} = %2.2f%s%s" ,
GetIsolationCut()->GetConeSize(),sThreshold.Data(),sParticle.Data());
2997 TString pileUpName[] = {
"SPD",
"EMCAL",
"SPDOrEMCAL",
"SPDAndEMCAL",
"SPDAndNotEMCAL",
"EMCALAndNotSPD",
"NotSPDAndNotEMCAL"} ;
3000 TString mcPartType[] = {
"#gamma" ,
"#gamma_{prompt}" ,
"#gamma_{fragmentation}",
3001 "#pi^{0} (merged #gamma)",
"#gamma_{#pi decay}" ,
"#gamma_{#pi decay} lost companion",
3002 "#eta (merged #gamma)" ,
"#gamma_{#eta decay}",
"#gamma_{#eta decay} lost companion",
3003 "#gamma_{other decay}" ,
"e^{#pm}" ,
"hadrons?"} ;
3005 TString mcPartName[] = {
"Photon",
"PhotonPrompt",
"PhotonFrag",
3006 "Pi0" ,
"Pi0Decay" ,
"Pi0DecayLostPair",
3007 "Eta" ,
"EtaDecay" ,
"EtaDecayLostPair",
3008 "OtherDecay",
"Electron",
"Hadron"} ;
3011 TString pptype[] = {
"#gamma" ,
"#gamma_{#pi decay}" ,
"#gamma_{#eta decay}",
"#gamma_{other decay}",
3012 "#gamma_{prompt}",
"#gamma_{fragmentation}",
"#gamma_{ISR}" ,
3013 "#pi^{0}" ,
"#eta"} ;
3015 TString ppname[] = {
"Photon" ,
"PhotonPi0Decay",
"PhotonEtaDecay",
"PhotonOtherDecay",
3016 "PhotonPrompt",
"PhotonFrag" ,
"PhotonISR" ,
3022 Form(
"Number of not isolated leading particles vs #it{p}_{T}, %s",parTitle.Data()),
3023 nptbins,ptmin,ptmax);
3024 fhENoIso->SetYTitle(
"#it{counts}");
3025 fhENoIso->SetXTitle(
"E (GeV/#it{c})");
3029 Form(
"Number of not isolated leading particles vs #it{p}_{T}, %s",parTitle.Data()),
3030 nptbins,ptmin,ptmax);
3032 fhPtNoIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3038 (
"hENoIsoExoTrigger",
3039 Form(
"Number of not isolated particles vs E, %s, exot>0.97",parTitle.Data()),
3040 nptbins,ptmin,ptmax);
3046 (
"hPtNoIsoExoTrigger",
3047 Form(
"Number of not isolated particles vs #it{p}_{T}, %s, exot>0.97",parTitle.Data()),
3048 nptbins,ptmin,ptmax);
3055 Form(
"Number of not isolated leading particles #eta vs #varphi, %s",parTitle.Data()),
3056 netabins,etamin,etamax,nphibins,phimin,phimax);
3067 fhPtNoIsoMC[imc] =
new TH1F(Form(
"hPtNoIsoMC%s",mcPartName[imc].
Data()),
3068 Form(
"#it{p}_{T} of NOT isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
3069 nptbins,ptmin,ptmax);
3071 fhPtNoIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
3074 fhPtIsoMC[imc] =
new TH1F(Form(
"hPtMC%s",mcPartName[imc].
Data()),
3075 Form(
"#it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
3076 nptbins,ptmin,ptmax);
3077 fhPtIsoMC[imc]->SetYTitle(
"#it{counts}");
3078 fhPtIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
3082 Form(
"#varphi vs #it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
3083 nptbins,ptmin,ptmax,nphibins,phimin,phimax);
3085 fhPhiIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
3089 Form(
"#eta vs #it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
3090 nptbins,ptmin,ptmax,netabins,etamin,etamax);
3092 fhEtaIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
3100 TString isoName [] = {
"NoIso",
"Iso"};
3101 TString isoTitle[] = {
"Not isolated" ,
"isolated"};
3105 for(
Int_t iso = 0; iso < 2; iso++)
3109 new TH1F(Form(
"hPtDecay%s_bit%d",isoName[iso].
Data(),
fDecayBits[ibit]),
3110 Form(
"Number of %s leading pi0 decay particles vs #it{p}_{T}, bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],parTitle.Data()),
3111 nptbins,ptmin,ptmax);
3112 fhPtDecay[iso][ibit]->SetYTitle(
"#it{counts}");
3113 fhPtDecay[iso][ibit]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3114 outputContainer->Add(
fhPtDecay[iso][ibit]) ;
3118 Form(
"Number of %s leading Pi0 decay particles #eta vs #varphi, bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],parTitle.Data()),
3119 netabins,etamin,etamax,nphibins,phimin,phimax);
3127 (Form(
"hPtLambda0Decay%s_bit%d",isoName[iso].
Data(),
fDecayBits[ibit]),
3128 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}, decay bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit], parTitle.Data()),
3129 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3140 new TH1F(Form(
"hPtDecay%s_bit%d_MC%s",isoName[iso].
Data(),
fDecayBits[ibit],mcPartName[imc].
Data()),
3141 Form(
"#it{p}_{T} of %s, decay bit %d, %s, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],mcPartType[imc].
Data(),parTitle.Data()),
3142 nptbins,ptmin,ptmax);
3143 fhPtDecayMC[iso][ibit][imc]->SetYTitle(
"#it{counts}");
3144 fhPtDecayMC[iso][ibit][imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
3145 outputContainer->Add(
fhPtDecayMC[iso][ibit][imc]) ;
3154 TString isoName [] = {
"NoIso",
"Iso"};
3155 TString isoTitle[] = {
"Not isolated" ,
"isolated"};
3158 Form(
"Number of isolated particles vs E, %s",parTitle.Data()),
3159 nptbins,ptmin,ptmax);
3160 fhEIso->SetYTitle(
"d#it{N} / d#it{E}");
3161 fhEIso->SetXTitle(
"#it{E} (GeV/#it{c})");
3162 outputContainer->Add(
fhEIso) ;
3165 Form(
"Number of isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
3166 nptbins,ptmin,ptmax);
3167 fhPtIso->SetYTitle(
"d#it{N} / #it{p}_{T}");
3168 fhPtIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3169 outputContainer->Add(
fhPtIso) ;
3175 Form(
"Number of isolated particles vs E, %s, exot>0.97",parTitle.Data()),
3176 nptbins,ptmin,ptmax);
3182 (
"hPtIsoExoTrigger",
3183 Form(
"Number of isolated particles vs #it{p}_{T}, %s, exot>0.97",parTitle.Data()),
3184 nptbins,ptmin,ptmax);
3191 Form(
"Number of isolated particles vs #varphi, %s",parTitle.Data()),
3192 nptbins,ptmin,ptmax,nphibins,phimin,phimax);
3193 fhPhiIso->SetYTitle(
"#varphi (rad)");
3194 fhPhiIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3198 Form(
"Number of isolated particles vs #eta, %s",parTitle.Data()),
3199 nptbins,ptmin,ptmax,netabins,etamin,etamax);
3201 fhEtaIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3205 Form(
"Number of isolated particles #eta vs #varphi, %s",parTitle.Data()),
3206 netabins,etamin,etamax,nphibins,phimin,phimax);
3214 Form(
"centrality vs #it{p}_{T} for isolated particles, %s",parTitle.Data()),
3215 nptbins,ptmin,ptmax, 100,0,100);
3221 Form(
"event plane angle vs #it{p}_{T} for isolated particles, %s",parTitle.Data()),
3222 nptbins,ptmin,ptmax, 100,0,TMath::Pi());
3231 Form(
"Number of isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
3232 nptbins,ptmin,ptmax,10,0,10);
3237 Form(
"Number of not isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
3238 nptbins,ptmin,ptmax,10,0,10);
3245 Form(
"Track or Cluster leading #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
3246 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
3247 fhConePtLead->SetYTitle(
"#it{p}_{T, leading} (GeV/#it{c})");
3248 fhConePtLead->SetXTitle(
"#it{p}_{T, trigger} (GeV/#it{c})");
3253 Form(
"Track and Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
3254 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3255 fhConeSumPt->SetYTitle(
"#Sigma #it{p}_{T} (GeV/#it{c})");
3256 fhConeSumPt->SetXTitle(
"#it{p}_{T, trigger} (GeV/#it{c})");
3263 if ( ism < fFirstModule || ism >
fLastModule )
continue;
3266 (Form(
"hConePtSum_SM%d",ism),
3267 Form(
"Track and Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f, SM %d",r,ism),
3268 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3278 (
"hConePtSumExoTrigger",
3279 Form(
"#Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f, exo trigger",r),
3280 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3295 Form(
"Trigger #eta vs #varphi, #Sigma #it{p}_{T} in isolation cone for %s",parTitleR.Data()),
3296 netabins,etamin,etamax,nphibins,phimin,phimax);
3303 Form(
"#it{p}_{T} of clusters and tracks in isolation cone for %s",parTitleR.Data()),
3304 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3305 fhPtInCone->SetYTitle(
"#it{p}_{T in cone} (GeV/#it{c})");
3306 fhPtInCone->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3313 if ( ism < fFirstModule || ism >
fLastModule )
continue;
3316 (Form(
"hPtInCone_SM%d",ism),
3317 Form(
"#it{p}_{T} of clusters and tracks in isolation cone for %s, SM %d", parTitleR.Data(),ism),
3318 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3328 Form(
"#it{p}_{T} in isolation cone for %s, exotic trigger",parTitleR.Data()),
3329 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3371 (Form(
"hPtLeadCone_Bin%d",ibin),
3372 Form(
"cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
3379 (Form(
"hSumPtCone_Bin%d",ibin),
3380 Form(
"in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
3389 (Form(
"hSumPtConeAfterEtaBandUESub_Bin%d",ibin),
3390 Form(
"in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
3404 (Form(
"hPtLeadCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
3405 Form(
"Decay bit %d, cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
3412 (Form(
"hSumPtCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
3413 Form(
"Decay bit %d, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
3427 (Form(
"hPtLeadCone_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
3428 Form(
"in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, MC %s, %s",
3435 (Form(
"hSumPtCone_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
3436 Form(
"in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, MC %s, %s",
3445 (Form(
"hSumPtConeAfterEtaBandUESub_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
3446 Form(
"in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, MC %s, %s",
3458 (Form(
"hPtLeadConeLambda0_Bin%d",ibin),
3459 Form(
"#lambda_{0}, in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
3466 (Form(
"hSumPtConeLambda0_Bin%d",ibin),
3467 Form(
"#lambda_{0}, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
3476 (Form(
"hSumPtConeAfterEtaBandUESubLambda0_Bin%d",ibin),
3477 Form(
"#lambda_{0}, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
3490 (Form(
"hPtLeadConeLambda0_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
3491 Form(
"#lambda_{0}, in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, MC %s, %s",
3498 (Form(
"hSumPtConeLambda0_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
3499 Form(
"#lambda_{0}, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, MC %s, %s",
3508 (Form(
"hSumPtConeAfterEtaBandUESubLambda0_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
3509 Form(
"#lambda_{0}, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, MC %s, %s",
3588 (Form(
"hPtTrigBin_PtLeadCone_Bin%d",ibin),
3589 Form(
"#it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
3596 (Form(
"hPtTrigBin_SumPtCone_Bin%d",ibin),
3597 Form(
"#Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
3606 (Form(
"hPtTrigBin_SumPtTrackCone_Bin%d",ibin),
3607 Form(
"#Sigma #it{p}_{T}^{in cone}_{track} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
3614 (Form(
"hPtTrigBin_SumPtClusterCone_Bin%d",ibin),
3615 Form(
"#Sigma #it{p}_{T}^{in cone}_{cluster} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
3629 (Form(
"hPtTrigBin_PtLeadCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
3630 Form(
"Decay bit %d, #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
3637 (Form(
"hPtTrigBin_SumPtCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
3638 Form(
"Decay bit %d, #Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
3647 (Form(
"hPtTrigBin_SumPtTrackCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
3648 Form(
"Decay bit %d, #Sigma #it{p}_{T}^{in cone}_{track} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
3655 (Form(
"hPtTrigBin_SumPtClusterCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
3656 Form(
"Decay bit %d, #Sigma #it{p}_{T}^{in cone}_{cluster} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
3671 (Form(
"hPtTrigBin_PtLeadCone_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
3672 Form(
"#it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, MC %s, %s",
3679 (Form(
"hPtTrigBin_SumPtCone_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
3680 Form(
"#Sigma #it{p}_{T}^{in cone}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
3689 (Form(
"hPtTrigBin_SumPtTrackCone_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
3690 Form(
"#Sigma #it{p}_{T}^{in cone}_{track}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
3697 (Form(
"hPtTrigBin_SumPtClusterCone_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
3698 Form(
"#Sigma #it{p}_{T}^{in cone}_{cluster}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
3710 (Form(
"hPtTrigBin_PtLeadConeVSLambda0_Bin%d",ibin),
3711 Form(
"#lambda_{0} vs #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
3718 (Form(
"hPtTrigBin_SumPtConeVSLambda0_Bin%d",ibin),
3719 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
3728 (Form(
"hPtTrigBin_SumPtTrackConeVSLambda0_Bin%d",ibin),
3729 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}_{track} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
3736 (Form(
"hPtTrigBin_SumPtClusterConeVSLambda0_Bin%d",ibin),
3737 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}_{cluster} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
3750 (Form(
"hPtTrigBin_PtLeadConeVSLambda0_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
3751 Form(
"#lambda_{0} vs #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, MC %s, %s",
3753 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3759 (Form(
"hPtTrigBin_SumPtConeVSLambda0_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
3760 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
3762 nptsumbins,ptsummin,ptsummax,ssbins,ssmin,ssmax);
3770 (Form(
"hPtTrigBin_SumPtTrackConeVSLambda0_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
3771 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}_{track}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
3773 nptsumbins,ptsummin,ptsummax,ssbins,ssmin,ssmax);
3779 (Form(
"hPtTrigBin_SumPtClusterConeVSLambda0_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
3780 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}_{cluster}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
3782 nptsumbins,ptsummin,ptsummax,ssbins,ssmin,ssmax);
3791 (Form(
"hPtTrigBin_SumPtConeVSLambda0_Bin%d_MC_NoOverlap%s",ibin,mcPartName[imc].
Data()),
3792 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC, No Overlaps %s, %s",
3794 nptsumbins,ptsummin,ptsummax,ssbins,ssmin,ssmax);
3800 (Form(
"hPtTrigBin_SumPtConeVSLambda0_Bin%d_MC_1Overlap%s",ibin,mcPartName[imc].
Data()),
3801 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC, 1 Overlap %s, %s",
3803 nptsumbins,ptsummin,ptsummax,ssbins,ssmin,ssmax);
3811 (Form(
"hPtTrigBin_SumPtTrackConeVSLambda0_Bin%d_MC_NoOverlap%s",ibin,mcPartName[imc].
Data()),
3812 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}_{track}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC, No Overlaps %s, %s",
3814 nptsumbins,ptsummin,ptsummax,ssbins,ssmin,ssmax);
3820 (Form(
"hPtTrigBin_SumPtClusterConeVSLambda0_Bin%d_MC_NoOverlap%s",ibin,mcPartName[imc].
Data()),
3821 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}_{cluster}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC, No Overlaps %s, %s",
3823 nptsumbins,ptsummin,ptsummax,ssbins,ssmin,ssmax);
3829 (Form(
"hPtTrigBin_SumPtTrackConeVSLambda0_Bin%d_MC_1Overlap%s",ibin,mcPartName[imc].
Data()),
3830 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}_{track}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC, 1 Overlap %s, %s",
3832 nptsumbins,ptsummin,ptsummax,ssbins,ssmin,ssmax);
3838 (Form(
"hPtTrigBin_SumPtClusterConeVSLambda0_Bin%d_MC_1Overlap%s",ibin,mcPartName[imc].
Data()),
3839 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}_{cluster}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC, 1 Overlap %s, %s",
3841 nptsumbins,ptsummin,ptsummax,ssbins,ssmin,ssmax);
3857 Form(
"#it{p}_{T} in isolation cone for %s",parTitleR.Data()),
3858 100,0,100,nptinconebins,ptinconemin,ptinconemax);
3868 (
"hConePtSumCluster",
3869 Form(
"Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
3870 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3879 if ( ism < fFirstModule || ism >
fLastModule )
continue;
3882 (Form(
"hConePtSumCluster_SM%d",ism),
3883 Form(
"Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f, SM %d",r,ism),
3884 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3894 (
"hConePtSumClusterExoTrigger",
3895 Form(
"Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f, exo trigger",r),
3896 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3905 (
"hConeNClusterPerMinPtCut",
3906 Form(
"N clusters, different min #it{p}_{T} cuts in isolation cone for #it{R} = %2.2f",r),
3915 (
"hConeNClusterPerMinPtCutLargePtTrig",
3916 Form(
"N cluster, different min #it{p}_{T} cuts in isolation cone for #it{R} = %2.2f, #it{p}_{T}^{trig} > 10 GeV",r),
3925 (
"hConePtSumClusterPerMinPtCut",
3926 Form(
"Cluster #Sigma #it{p}_{T}, different min #it{p}_{T} cuts in isolation cone for #it{R} = %2.2f",r),
3935 (
"hConePtSumClusterPerMinPtCutLargePtTrig",
3936 Form(
"Cluster #Sigma #it{p}_{T}, different min #it{p}_{T} cuts in isolation cone for #it{R} = %2.2f, #it{p}_{T}^{trig} > 10 GeV",r),
3946 (
"hConePtSumClusterPerMaxPtCut",
3947 Form(
"Cluster #Sigma #it{p}_{T}, different max #it{p}_{T} cuts in isolation cone for #it{R} = %2.2f",r),
3956 (
"hConePtSumClusterPerMaxPtCutLargePtTrig",
3957 Form(
"Cluster #Sigma #it{p}_{T}, different max #it{p}_{T} cuts in isolation cone for #it{R} = %2.2f, #it{p}_{T}^{trig} > 10 GeV",r),
3969 (
"hConePtSumClusterPerRCut",
"Cluster #Sigma #it{p}_{T}, different #it{R} cuts",
3978 (
"hConePtSumClusterPerRCutLargePtTrig",
"Cluster #Sigma #it{p}_{T}, different #it{R} cuts, #it{p}_{T}^{trig} > 10 GeV",
3987 (
"hPtClusterInConePerRCut",
"Cluster #it{p}_{T}, different #it{R} cuts",
3996 (
"hPtClusterInConePerRCutLargePtTrig",
"Cluster #it{p}_{T}, different #it{R} cuts, #it{p}_{T}^{trig} > 10 GeV",
4008 (
"hConePtSumClusterPerNCellCut",
"Cluster #Sigma #it{p}_{T}, different #it{N}_{cell} cuts",
4017 (
"hConePtSumClusterPerNCellCutLargePtTrig",
"Cluster #Sigma #it{p}_{T}, different #it{N}_{cell} cuts, #it{p}_{T}^{trig} > 10 GeV",
4026 (
"hPtClusterInConePerNCellCut",
"Cluster #it{p}_{T}, different #it{N}_{cell} cuts",
4035 (
"hPtClusterInConePerNCellCutLargePtTrig",
"Cluster #it{p}_{T}, different #it{N}_{cell} cuts, #it{p}_{T}^{trig} > 10 GeV",
4043 for(
Int_t ishsh = 0; ishsh < 4; ishsh++)
4046 (Form(
"hPtClusterInConePerNCellPerSM_ShSh%d",ishsh),
4047 Form(
"Cluster #it{p}_{T} vs #it{n}_{cell} vs SM , 8 < #it{p}_{T}^{trig} < 12 GeV, sh. shape bin %d",ishsh),
4055 (Form(
"hConeSumPtClusterPerNCellPerSM_ShSh%d",ishsh),
4056 Form(
"Cluster #Sigma #it{p}_{T} in cone vs #it{n}_{cell} vs SM , 8 < #it{p}_{T}^{trig} < 12 GeV, sh. shape bin %d",ishsh),
4068 (
"hConePtSumClusterPerExoCut",
"Cluster #Sigma #it{p}_{T}, different exoticity cuts",
4077 (
"hConePtSumClusterPerExoCutLargePtTrig",
"Cluster #Sigma #it{p}_{T}, different exoticity cuts, #it{p}_{T}^{trig} > 10 GeV",
4086 (
"hPtClusterInConePerExoCut",
"Cluster #it{p}_{T}, different exoticity cuts",
4095 (
"hPtClusterInConePerExoCutLargePtTrig",
"Cluster #it{p}_{T}, different exoticity cuts, #it{p}_{T}^{trig} > 10 GeV",
4105 Form(
"Cluster leading in isolation cone for #it{R} = %2.2f",r),
4106 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
4115 Form(
"Cell #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
4116 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
4125 "#Sigma cluster #it{p}_{T} in UE Eta Band",
4126 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
4132 "#Sigma cluster #it{p}_{T} UE Phi Band",
4133 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
4141 "Trigger #eta vs #varphi, #Sigma cluster #it{p}_{T} in UE Eta Band",
4142 netabins,etamin,etamax,nphibins,phimin,phimax);
4149 "Trigger #eta vs #varphi, #Sigma cluster #it{p}_{T} UE Phi Band",
4150 netabins,etamin,etamax,nphibins,phimin,phimax);
4157 Form(
"#eta vs #varphi of clusters in #eta band isolation cone for #it{R} = %2.2f",r),
4158 netabins,-1,1,nphibins,0,TMath::TwoPi());
4164 Form(
"#eta vs #varphi of clusters in #varphi band isolation cone for #it{R} = %2.2f",r),
4165 netabins,-1,1,nphibins,0,TMath::TwoPi());
4171 Form(
"#eta vs #varphi of clusters in cone for #it{R} = %2.2f",r),
4172 netabins,-1,1,nphibins,0,TMath::TwoPi());
4178 Form(
"#eta vs #varphi of all clusters"),
4179 netabins,-1,1,nphibins,0,TMath::TwoPi());
4188 "#Sigma cell #it{p}_{T} in UE Eta Band",
4189 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
4195 "#Sigma cell #it{p}_{T} UE Phi Band",
4196 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
4202 "Trigger #eta vs #varphi, #Sigma cell #it{p}_{T} in UE Eta Band",
4203 netabins,etamin,etamax,nphibins,phimin,phimax);
4210 "Trigger #eta vs #varphi, #Sigma cell #it{p}_{T} UE Phi Band",
4211 netabins,etamin,etamax,nphibins,phimin,phimax);
4219 Form(
"#it{p}_{T} of clusters in #eta band isolation cone for #it{R} = %2.2f",r),
4220 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
4226 Form(
"#it{p}_{T} of clusters in #varphi band isolation cone for #it{R} = %2.2f",r),
4227 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
4234 Form(
"#it{p}_{T} of clusters in isolation cone for #it{R} = %2.2f",r),
4235 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
4244 if ( ism < fFirstModule || ism >
fLastModule )
continue;
4247 (Form(
"hPtClusterInCone_SM%d",ism),
4248 Form(
"#it{p}_{T} of clusters in isolation cone for %s, SM %d", parTitleR.Data(),ism),
4249 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
4259 Form(
"#it{p}_{T} of clusters in isolation cone for #it{R} = %2.2f, exotic trigger",r),
4260 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
4269 Form(
"#it{p}_{T} of cells in isolation cone for #it{R} = %2.2f",r),
4270 nptbins,ptmin,ptmax,1000,0,50);
4276 Form(
"#col vs #row of cells in #eta band isolation cone for #it{R} = %2.2f",r),
4283 Form(
"#col vs #row of cells in #varphi band isolation cone for #it{R} = %2.2f",r),
4293 Form(
"Clusters #Sigma #it{p}_{T} in normalized #eta band, #it{R} = %2.2f",r),
4294 nptbins,ptmin,ptmax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4300 Form(
"Clusters #Sigma #it{p}_{T} in normalized #varphi band, #it{R} = %2.2f",r),
4301 nptbins,ptmin,ptmax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4307 Form(
"Clusters #Sigma #it{p}_{T} after bkg subtraction from #eta band in the isolation cone for #it{R} = %2.2f",r),
4308 nptbins,ptmin,ptmax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4314 Form(
"Clusters #Sigma #it{p}_{T} after bkg subtraction from #varphi band in the isolation cone for #it{R} = %2.2f",r),
4315 nptbins,ptmin,ptmax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4323 Form(
"Trigger #eta vs #varphi, Clusters #Sigma #it{p}_{T} after bkg subtraction from #eta band in the isolation cone for #it{R} = %2.2f",r),
4324 netabins,etamin,etamax,nphibins,phimin,phimax);
4331 Form(
"Trigger #eta vs #varphi, Clusters #Sigma #it{p}_{T} after bkg subtraction from #varphi band in the isolation cone for #it{R} = %2.2f",r),
4332 netabins,etamin,etamax,nphibins,phimin,phimax);
4342 Form(
"Cells #Sigma #it{p}_{T} after bkg subtraction from #eta band in the isolation cone for #it{R} = %2.2f",r),
4343 nptbins,ptmin,ptmax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4349 Form(
"Cells #Sigma #it{p}_{T} after bkg subtraction from #varphi band in the isolation cone for #it{R} = %2.2f",r),
4350 nptbins,ptmin,ptmax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4356 Form(
"Trigger #eta vs #varphi, Cells #Sigma #it{p}_{T} after bkg subtraction from #eta band in the isolation cone for #it{R} = %2.2f",r),
4357 netabins,etamin,etamax,nphibins,phimin,phimax);
4364 Form(
"Trigger #eta vs #varphi, Cells #Sigma #it{p}_{T} after bkg subtraction from #varphi band in the isolation cone for #it{R} = %2.2f",r),
4365 netabins,etamin,etamax,nphibins,phimin,phimax);
4375 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #eta acceptance",r),
4376 nptbins,ptmin,ptmax,100,0,1);
4382 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #eta acceptance, in trigger #eta-#varphi ",r),
4383 netabins,etamin,etamax,nphibins,phimin,phimax);
4390 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #varphi acceptance",r),
4391 nptbins,ptmin,ptmax,100,0,1);
4397 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #varphi acceptance, in trigger #eta-#varphi ",r),
4398 netabins,etamin,etamax,nphibins,phimin,phimax);
4406 Form(
"#Sigma #it{p}_{T} in cone after bkg sub from #varphi band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
4407 nptsumbins,ptsummin,ptsummax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4413 Form(
"#Sigma #it{p}_{T, norm} in cone after bkg sub from #varphi band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
4414 nptsumbins,ptsummin,ptsummax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4420 Form(
"#Sigma #it{p}_{T} in cone after bkg sub from #eta band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
4421 nptsumbins,ptsummin,ptsummax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4427 Form(
"#Sigma #it{p}_{T, norm} in cone after bkg sub from #eta band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
4428 nptsumbins,ptsummin,ptsummax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4434 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in #eta band for cluster (before normalization), R=%2.2f",r),
4435 nptsumbins,ptsummin,ptsummax,2*nptsumbins,ptsummin,2*ptsummax);
4441 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in #varphi band for cluster (before normalization), R=%2.2f",r),
4442 nptsumbins,ptsummin,ptsummax,8*nptsumbins,ptsummin,8*ptsummax);
4451 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #eta acceptance",r),
4452 nptbins,ptmin,ptmax,100,0,1);
4458 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #eta acceptance, in trigger #eta-#varphi ",r),
4459 netabins,etamin,etamax,nphibins,phimin,phimax);
4466 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #varphi acceptance",r),
4467 nptbins,ptmin,ptmax,100,0,1);
4473 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #varphi acceptance, in trigger #eta-#varphi ",r),
4474 netabins,etamin,etamax,nphibins,phimin,phimax);
4482 Form(
"#Sigma #it{p}_{T} in cone after bkg sub from #varphi band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
4483 nptsumbins,ptsummin,ptsummax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4489 Form(
"#Sigma #it{p}_{T, norm} in cone after bkg sub from #varphi band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
4490 nptsumbins,ptsummin,ptsummax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4496 Form(
"#Sigma #it{p}_{T} in cone after bkg sub from #eta band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
4497 nptsumbins,ptsummin,ptsummax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4503 Form(
"#Sigma #it{p}_{T, norm} in cone after bkg sub from #eta band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
4504 nptsumbins,ptsummin,ptsummax,1.2*nptsumbins,-ptsummax*0.2,ptsummax);
4516 (
"hConeLeadPtTrack",
4517 Form(
"Track leading in isolation cone for #it{R} = %2.2f",r),
4518 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
4525 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f",r),
4526 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
4535 if ( ism < fFirstModule || ism >
fLastModule )
continue;
4538 (Form(
"hPtTrackInCone_SM%d",ism),
4539 Form(
"#it{p}_{T} of tracks in isolation cone for %s, SM %d", parTitleR.Data(),ism),
4540 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
4549 TString mcChPartName[] = {
"Pion",
"Kaon",
"Proton",
"Other"};
4550 for(
Int_t imc = 0; imc < 4; imc++)
4553 (Form(
"hPtTrackInCone_Primary_%s",mcChPartName[imc].
Data()),
4554 Form(
"reconstructed #it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, primary MC %s",r,mcChPartName[imc].
Data()),
4555 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
4561 (Form(
"hPtTrackInCone_Secondary_%s",mcChPartName[imc].
Data()),
4562 Form(
"reconstructed #it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, secondary MC %s",r,mcChPartName[imc].
Data()),
4563 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
4569 (Form(
"hPtTrackInCone_Gener_Primary_%s",mcChPartName[imc].
Data()),
4570 Form(
"generated #it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, primary MC %s",r,mcChPartName[imc].
Data()),
4571 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
4577 (Form(
"hPtTrackInCone_Gener_Secondary_%s",mcChPartName[imc].
Data()),
4578 Form(
"generated #it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, secondary MC %s",r,mcChPartName[imc].
Data()),
4579 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
4590 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, exotic trigger",r),
4591 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
4600 (
"hConeNTrackPerMinPtCut",
4601 Form(
"N tracks, different #it{p}_{T} cuts in isolation cone for #it{R} = %2.2f",r),
4610 (
"hConeNTrackPerMinPtCutLargePtTrig",
4611 Form(
"N tracks, different #it{p}_{T} cuts in isolation cone for #it{R} = %2.2f, #it{p}_{T}^{trig} > 10 GeV",r),
4620 (
"hConePtSumTrackPerMinPtCut",
4621 Form(
"Track #Sigma #it{p}_{T}, different #it{p}_{T} cuts in isolation cone for #it{R} = %2.2f",r),
4630 (
"hConePtSumTrackPerMinPtCutLargePtTrig",
4631 Form(
"Track #Sigma #it{p}_{T}, different #it{p}_{T} cuts in isolation cone for #it{R} = %2.2f, #it{p}_{T}^{trig} > 10 GeV",r),
4642 (
"hPerpConeNTrackPerMinPtCut",
4643 Form(
"N tracks, different #it{p}_{T} cuts in perpendicular cone for #it{R} = %2.2f",r),
4652 (
"hPerpConeNTrackPerMinPtCutLargePtTrig",
4653 Form(
"N tracks, different #it{p}_{T} cuts in isolation cone for #it{R} = %2.2f, #it{p}_{T}^{trig} > 10 GeV",r),