17 #include <TClonesArray.h>
19 #include <TObjString.h>
23 #include "TParticle.h"
24 #include "TDatabasePDG.h"
34 #include "AliAODMCParticle.h"
35 #include "AliAODPWG4ParticleCorrelation.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), fFillEMCALRegionSSHistograms(0),
58 fFillUEBandSubtractHistograms(1), fFillCellHistograms(0),
59 fFillOverlapHistograms(0),
60 fFillTaggedDecayHistograms(0), fNDecayBits(0),
61 fDecayBits(), fDecayTagsM02Cut(0),
62 fFillNLMHistograms(0),
63 fLeadingOnly(0), fCheckLeadingWithNeutralClusters(0),
64 fSelectPrimariesInCone(0), fMakePrimaryPi0DecayStudy(0),
65 fFillBackgroundBinHistograms(0), fNBkgBin(0),
66 fFillPtTrigBinHistograms(0), fNPtTrigBin(0),
67 fMinCellsAngleOverlap(0),
69 fNCones(0), fNPtThresFrac(0),
70 fConeSizes(), fPtThresholds(),
71 fPtFractions(), fSumPtThresholds(),
72 fMomentum(), fMomIso(),
73 fMomDaugh1(), fMomDaugh2(),
74 fTrackVector(), fProdVertex(),
75 fCluster(0), fClustersArr(0),
77 fhEIso(0), fhPtIso(0),
78 fhPtCentralityIso(0), fhPtEventPlaneIso(0),
80 fhPhiIso(0), fhEtaIso(0), fhEtaPhiIso(0),
82 fhENoIso(0), fhPtNoIso(0), fhPtNLocMaxNoIso(0),
84 fhPtClusterInCone(0), fhPtCellInCone(0), fhPtTrackInCone(0),
85 fhPtTrackInConeOtherBC(0), fhPtTrackInConeOtherBCPileUpSPD(0),
86 fhPtTrackInConeBC0(0), fhPtTrackInConeVtxBC0(0),
87 fhPtTrackInConeBC0PileUpSPD(0),
88 fhPtInConePileUp(), fhPtInConeCent(0),
89 fhPerpConeSumPt(0), fhPtInPerpCone(0),
90 fhEtaPhiInConeCluster(0), fhEtaPhiCluster(0),
91 fhEtaPhiInConeTrack(0), fhEtaPhiTrack(0),
92 fhEtaBandCluster(0), fhPhiBandCluster(0),
93 fhEtaBandTrack(0), fhPhiBandTrack(0),
94 fhEtaBandCell(0), fhPhiBandCell(0),
95 fhConePtLead(0), fhConePtLeadCluster(0), fhConePtLeadTrack(0),
96 fhConePtLeadClustervsTrack(0), fhConePtLeadClusterTrackFrac(0),
97 fhConeSumPt(0), fhConeSumPtCellTrack(0),
98 fhConeSumPtCell(0), fhConeSumPtCluster(0), fhConeSumPtTrack(0),
99 fhConeSumPtEtaBandUECluster(0), fhConeSumPtPhiBandUECluster(0),
100 fhConeSumPtEtaBandUETrack(0), fhConeSumPtPhiBandUETrack(0),
101 fhConeSumPtEtaBandUECell(0), fhConeSumPtPhiBandUECell(0),
102 fhConeSumPtTrigEtaPhi(0),
103 fhConeSumPtCellTrackTrigEtaPhi(0),
104 fhConeSumPtEtaBandUEClusterTrigEtaPhi(0), fhConeSumPtPhiBandUEClusterTrigEtaPhi(0),
105 fhConeSumPtEtaBandUETrackTrigEtaPhi(0), fhConeSumPtPhiBandUETrackTrigEtaPhi(0),
106 fhConeSumPtEtaBandUECellTrigEtaPhi(0), fhConeSumPtPhiBandUECellTrigEtaPhi(0),
107 fhConeSumPtEtaUESub(0), fhConeSumPtPhiUESub(0),
108 fhConeSumPtEtaUESubTrigEtaPhi(0), fhConeSumPtPhiUESubTrigEtaPhi(0),
109 fhConeSumPtEtaUESubTrackCell(0), fhConeSumPtPhiUESubTrackCell(0),
110 fhConeSumPtEtaUESubTrackCellTrigEtaPhi(0), fhConeSumPtPhiUESubTrackCellTrigEtaPhi(0),
111 fhConeSumPtEtaUESubCluster(0), fhConeSumPtPhiUESubCluster(0),
112 fhConeSumPtEtaUESubClusterTrigEtaPhi(0), fhConeSumPtPhiUESubClusterTrigEtaPhi(0),
113 fhConeSumPtEtaUESubCell(0), fhConeSumPtPhiUESubCell(0),
114 fhConeSumPtEtaUESubCellTrigEtaPhi(0), fhConeSumPtPhiUESubCellTrigEtaPhi(0),
115 fhConeSumPtEtaUESubTrack(0), fhConeSumPtPhiUESubTrack(0),
116 fhConeSumPtEtaUESubTrackTrigEtaPhi(0), fhConeSumPtPhiUESubTrackTrigEtaPhi(0),
117 fhFractionTrackOutConeEta(0), fhFractionTrackOutConeEtaTrigEtaPhi(0),
118 fhFractionClusterOutConeEta(0), fhFractionClusterOutConeEtaTrigEtaPhi(0),
119 fhFractionClusterOutConePhi(0), fhFractionClusterOutConePhiTrigEtaPhi(0),
120 fhFractionCellOutConeEta(0), fhFractionCellOutConeEtaTrigEtaPhi(0),
121 fhFractionCellOutConePhi(0), fhFractionCellOutConePhiTrigEtaPhi(0),
122 fhConeSumPtClustervsTrack(0), fhConeSumPtClusterTrackFrac(0),
123 fhConeSumPtEtaUESubClustervsTrack(0), fhConeSumPtPhiUESubClustervsTrack(0),
124 fhConeSumPtCellvsTrack(0),
125 fhConeSumPtEtaUESubCellvsTrack(0), fhConeSumPtPhiUESubCellvsTrack(0),
126 fhEtaBandClustervsTrack(0), fhPhiBandClustervsTrack(0),
127 fhEtaBandNormClustervsTrack(0), fhPhiBandNormClustervsTrack(0),
128 fhEtaBandCellvsTrack(0), fhPhiBandCellvsTrack(0),
129 fhEtaBandNormCellvsTrack(0), fhPhiBandNormCellvsTrack(0),
130 fhConeSumPtSubvsConeSumPtTotPhiTrack(0), fhConeSumPtSubNormvsConeSumPtTotPhiTrack(0),
131 fhConeSumPtSubvsConeSumPtTotEtaTrack(0), fhConeSumPtSubNormvsConeSumPtTotEtaTrack(0),
132 fhConeSumPtSubvsConeSumPtTotPhiCluster(0), fhConeSumPtSubNormvsConeSumPtTotPhiCluster(0),
133 fhConeSumPtSubvsConeSumPtTotEtaCluster(0), fhConeSumPtSubNormvsConeSumPtTotEtaCluster(0),
134 fhConeSumPtSubvsConeSumPtTotPhiCell(0), fhConeSumPtSubNormvsConeSumPtTotPhiCell(0),
135 fhConeSumPtSubvsConeSumPtTotEtaCell(0), fhConeSumPtSubNormvsConeSumPtTotEtaCell(0),
136 fhConeSumPtVSUETracksEtaBand(0), fhConeSumPtVSUETracksPhiBand(0),
137 fhConeSumPtVSUEClusterEtaBand(0), fhConeSumPtVSUEClusterPhiBand(0),
138 fhPtPrimMCPi0DecayPairOutOfCone(0),
139 fhPtPrimMCPi0DecayPairOutOfAcceptance(0),
140 fhPtPrimMCPi0DecayPairOutOfAcceptanceNoOverlap(0),
141 fhPtPrimMCPi0DecayPairAcceptInConeLowPt(0),
142 fhPtPrimMCPi0DecayPairAcceptInConeLowPtNoOverlap(0),
143 fhPtPrimMCPi0DecayPairAcceptInConeLowPtNoOverlapCaloE(0),
144 fhPtPrimMCPi0DecayPairNoOverlap(0),
145 fhPtPrimMCPi0DecayIsoPairOutOfCone(0),
146 fhPtPrimMCPi0DecayIsoPairOutOfAcceptance(0),
147 fhPtPrimMCPi0DecayIsoPairOutOfAcceptanceNoOverlap(0),
148 fhPtPrimMCPi0DecayIsoPairAcceptInConeLowPt(0),
149 fhPtPrimMCPi0DecayIsoPairAcceptInConeLowPtNoOverlap(0),
150 fhPtPrimMCPi0DecayIsoPairAcceptInConeLowPtNoOverlapCaloE(0),
151 fhPtPrimMCPi0DecayIsoPairNoOverlap(0),
152 fhPtPrimMCPi0Overlap(0), fhPtPrimMCPi0IsoOverlap(0),
153 fhPtPrimMCEtaDecayPairOutOfCone(0),
154 fhPtPrimMCEtaDecayPairOutOfAcceptance(0),
155 fhPtPrimMCEtaDecayPairOutOfAcceptanceNoOverlap(0),
156 fhPtPrimMCEtaDecayPairAcceptInConeLowPt(0),
157 fhPtPrimMCEtaDecayPairAcceptInConeLowPtNoOverlap(0),
158 fhPtPrimMCEtaDecayPairAcceptInConeLowPtNoOverlapCaloE(0),
159 fhPtPrimMCEtaDecayPairNoOverlap(0),
160 fhPtPrimMCEtaDecayIsoPairOutOfCone(0),
161 fhPtPrimMCEtaDecayIsoPairOutOfAcceptance(0),
162 fhPtPrimMCEtaDecayIsoPairOutOfAcceptanceNoOverlap(0),
163 fhPtPrimMCEtaDecayIsoPairAcceptInConeLowPt(0),
164 fhPtPrimMCEtaDecayIsoPairAcceptInConeLowPtNoOverlap(0),
165 fhPtPrimMCEtaDecayIsoPairAcceptInConeLowPtNoOverlapCaloE(0),
166 fhPtPrimMCEtaDecayIsoPairNoOverlap(0),
167 fhPtPrimMCEtaOverlap(0), fhPtPrimMCEtaIsoOverlap(0),
168 fhPtLeadConeBin(0), fhSumPtConeBin(0),
169 fhPtLeadConeBinMC(0), fhSumPtConeBinMC(0),
170 fhPtLeadConeBinDecay(0), fhSumPtConeBinDecay(0),
171 fhPtLeadConeBinLambda0(0), fhSumPtConeBinLambda0(0),
172 fhPtLeadConeBinLambda0MC(0), fhSumPtConeBinLambda0MC(0),
173 fhPtTrigBinPtLeadCone(0), fhPtTrigBinSumPtCone(0),
174 fhPtTrigBinPtLeadConeMC(0), fhPtTrigBinSumPtConeMC(0),
175 fhPtTrigBinPtLeadConeDecay(0), fhPtTrigBinSumPtConeDecay(0),
176 fhPtTrigBinLambda0vsPtLeadCone(0), fhPtTrigBinLambda0vsSumPtCone(0),
177 fhPtTrigBinLambda0vsPtLeadConeMC(0), fhPtTrigBinLambda0vsSumPtConeMC(0),
180 fhELambda0LocMax1(), fhELambda1LocMax1(),
181 fhELambda0LocMax2(), fhELambda1LocMax2(),
182 fhELambda0LocMaxN(), fhELambda1LocMaxN(),
184 fhEIsoPileUp(), fhPtIsoPileUp(),
185 fhENoIsoPileUp(), fhPtNoIsoPileUp(),
186 fhTimeENoCut(0), fhTimeESPD(0), fhTimeESPDMulti(0),
187 fhTimeNPileUpVertSPD(0), fhTimeNPileUpVertTrack(0),
188 fhTimeNPileUpVertContributors(0),
189 fhTimePileUpMainVertexZDistance(0), fhTimePileUpMainVertexZDiamond(0)
193 for(Int_t i = 0; i < 5 ; i++)
200 for(Int_t j = 0; j < 5 ; j++)
235 for(Int_t iso =0; iso < 2; iso++)
245 for(Int_t i = 0; i < 5 ; i++)
264 for(Int_t i = 0; i < 2 ; i++)
280 for(Int_t i = 0; i < 2 ; i++)
296 for(Int_t ieta = 0; ieta < 4; ieta++)
298 for(Int_t iphi = 0; iphi < 3; iphi++)
309 for(Int_t ism =0; ism < 20; ism++)
330 for(Int_t i = 0 ; i < 7 ; i++)
344 Float_t & etaBandPtSum, Float_t & phiBandPtSum)
351 TObjArray * pl = 0x0;
360 Double_t vertex[] = {0,0,0} ;
364 Float_t ptTrig = pCandidate->Pt() ;
365 Float_t phiTrig = pCandidate->Phi();
366 Float_t etaTrig = pCandidate->Eta();
368 for(Int_t icluster=0; icluster < pl->GetEntriesFast(); icluster++)
370 AliVCluster* cluster = (AliVCluster *) pl->At(icluster);
374 AliWarning(
"Cluster not available?");
379 if(cluster->GetID() == pCandidate->GetCaloLabel(0) ||
380 cluster->GetID() == pCandidate->GetCaloLabel(1) )
continue ;
426 Float_t & etaBandPtSumCells, Float_t & phiBandPtSumCells)
432 Float_t phiTrig = pCandidate->Phi();
433 if(phiTrig<0) phiTrig += TMath::TwoPi();
435 Float_t etaTrig = pCandidate->Eta();
437 if(pCandidate->GetDetectorTag()==
kEMCAL)
439 AliEMCALGeometry* eGeom = AliEMCALGeometry::GetInstance();
442 if (eGeom->GetAbsCellIdFromEtaPhi(etaTrig,phiTrig,absId))
444 if(!eGeom->CheckAbsCellId(absId))
return ;
447 Int_t nSupMod = eGeom->GetSuperModuleNumber(absId);
449 Int_t imEta=-1, imPhi=-1;
450 Int_t ieta =-1, iphi =-1;
452 if (eGeom->GetCellIndex(absId,nSupMod,nModule,imPhi,imEta))
454 eGeom->GetCellPhiEtaIndexInSModule(nSupMod,nModule,imPhi,imEta,iphi,ieta);
456 Int_t colTrig = ieta;
457 if (nSupMod % 2) colTrig = AliEMCALGeoParams::fgkEMCALCols + ieta ;
459 Int_t rowTrig = iphi + AliEMCALGeoParams::fgkEMCALRows*int(nSupMod/2);
461 Int_t sqrSize = int(conesize/0.0143);
465 Int_t nTotalRows = AliEMCALGeoParams::fgkEMCALRows*16/3 ;
466 Int_t nTotalCols = 2*AliEMCALGeoParams::fgkEMCALCols;
470 Int_t irowmin = rowTrig-sqrSize;
471 if ( irowmin < 0 ) irowmin = 0 ;
473 Int_t irowmax = rowTrig+sqrSize;
474 if ( irowmax > AliEMCALGeoParams::fgkEMCALRows ) irowmax = AliEMCALGeoParams::fgkEMCALRows;
476 for(Int_t irow = irowmin; irow <irowmax; irow++)
478 for(Int_t icol = 0; icol < nTotalCols; icol++)
480 Int_t inSector = int(irow/AliEMCALGeoParams::fgkEMCALRows);
481 if(inSector==5)
continue;
484 if(icol < AliEMCALGeoParams::fgkEMCALCols)
486 inSupMod = 2*inSector + 1;
489 else if(icol > AliEMCALGeoParams::fgkEMCALCols - 1)
491 inSupMod = 2*inSector;
492 icolLoc = icol-AliEMCALGeoParams::fgkEMCALCols;
495 Int_t irowLoc = irow - AliEMCALGeoParams::fgkEMCALRows*inSector ;
498 if(TMath::Abs(icol-colTrig) < sqrSize || TMath::Abs(irow-rowTrig) < sqrSize){
502 Int_t iabsId = eGeom->GetAbsCellIdFromCellIndexes(inSupMod,irowLoc,icolLoc);
503 if(!eGeom->CheckAbsCellId(iabsId))
continue;
505 etaBandPtSumCells += cells->GetCellAmplitude(iabsId);
513 Int_t icolmin = colTrig-sqrSize;
514 if ( icolmin < 0 ) icolmin = 0;
516 Int_t icolmax = colTrig+sqrSize;
517 if ( icolmax > AliEMCALGeoParams::fgkEMCALCols ) icolmax = AliEMCALGeoParams::fgkEMCALCols;
520 for(Int_t icol = icolmin; icol < icolmax; icol++)
522 for(Int_t irow = 0; irow < nTotalRows; irow++)
524 Int_t inSector = int(irow/AliEMCALGeoParams::fgkEMCALRows);
525 if ( inSector == 5 ) continue ;
531 if(icol < AliEMCALGeoParams::fgkEMCALCols)
534 inSupMod = 2*inSector + 1;
537 else if(icol > AliEMCALGeoParams::fgkEMCALCols - 1)
540 inSupMod = 2*inSector;
541 icolLoc = icol-AliEMCALGeoParams::fgkEMCALCols;
544 Int_t irowLoc = irow - AliEMCALGeoParams::fgkEMCALRows*inSector ;
547 if(TMath::Abs(icol-colTrig) < sqrSize) {
550 if(TMath::Abs(irow-rowTrig) < sqrSize) {
554 Int_t iabsId = eGeom->GetAbsCellIdFromCellIndexes(inSupMod,irowLoc,icolLoc);
555 if(!eGeom->CheckAbsCellId(iabsId))
557 AliWarning(Form(
"!eGeom->CheckAbsCellId(iabsId=%i) inSupMod %i irowLoc %i icolLoc %i",iabsId,inSupMod, irowLoc, icolLoc));
561 phiBandPtSumCells += cells->GetCellAmplitude(iabsId);
571 Float_t ptTrig = pCandidate->Pt();
583 Float_t & etaBandPtSum, Float_t & phiBandPtSum)
589 Double_t sumptPerp= 0. ;
590 Float_t ptTrig = pCandidate->Pt() ;
591 Float_t phiTrig = pCandidate->Phi();
592 Float_t etaTrig = pCandidate->Eta();
595 for(Int_t itrack=0; itrack < trackList->GetEntriesFast(); itrack++)
597 AliVTrack* track = (AliVTrack *) trackList->At(itrack);
601 AliWarning(
"Track not available?");
608 if ( pCandidate->GetDetectorTag() ==
kCTS )
611 Bool_t contained = kFALSE;
613 for(Int_t i = 0; i < 4; i++)
615 if( trackID == pCandidate->GetTrackLabel(i) ) contained = kTRUE;
618 if ( contained ) continue ;
634 if(track->Eta() > (etaTrig-conesize) && track->Eta() < (etaTrig+conesize))
636 phiBandPtSum+=track->Pt();
641 if(track->Phi() > (phiTrig-conesize) && track->Phi() < (phiTrig+conesize))
643 etaBandPtSum+=track->Pt();
648 Double_t pTrack = TMath::Sqrt(track->Px()*track->Px()+track->Py()*track->Py());
649 Double_t dPhi = phiTrig - track->Phi() + TMath::PiOver2();
650 Double_t dEta = etaTrig - track->Eta();
651 Double_t arg = dPhi*dPhi + dEta*dEta;
653 if(TMath::Sqrt(arg) < conesize)
656 sumptPerp+=track->Pt();
659 dPhi = phiTrig - track->Phi() - TMath::PiOver2();
660 arg = dPhi*dPhi + dEta*dEta;
662 if(TMath::Sqrt(arg) < conesize)
665 sumptPerp+=track->Pt();
680 Float_t coneptsumCell, Float_t coneptsumTrack,
681 Float_t &etaBandptsumTrackNorm, Float_t &etaBandptsumClusterNorm)
683 Float_t etaUEptsumTrack = 0 ;
684 Float_t phiUEptsumTrack = 0 ;
685 Float_t etaUEptsumCluster = 0 ;
686 Float_t phiUEptsumCluster = 0 ;
687 Float_t etaUEptsumCell = 0 ;
688 Float_t phiUEptsumCell = 0 ;
695 Float_t coneA = conesize*conesize*TMath::Pi();
696 Float_t ptTrig = pCandidate->Pt() ;
697 Float_t phiTrig = pCandidate->Phi();
698 Float_t etaTrig = pCandidate->Eta();
704 Float_t phiUEptsumTrackNorm = 0 ;
705 Float_t etaUEptsumTrackNorm = 0 ;
706 Float_t coneptsumTrackSubPhi = 0 ;
707 Float_t coneptsumTrackSubEta = 0 ;
708 Float_t coneptsumTrackSubPhiNorm = 0 ;
709 Float_t coneptsumTrackSubEtaNorm = 0 ;
710 etaBandptsumTrackNorm = 0 ;
722 Float_t correctConeSumTrack = 1;
723 Float_t correctConeSumTrackPhi = 1;
726 phiUEptsumTrack,etaUEptsumTrack,
727 phiUEptsumTrackNorm,etaUEptsumTrackNorm,
728 correctConeSumTrack,correctConeSumTrackPhi);
730 coneptsumTrackSubPhi = coneptsumTrack - phiUEptsumTrackNorm;
731 coneptsumTrackSubEta = coneptsumTrack - etaUEptsumTrackNorm;
733 etaBandptsumTrackNorm = etaUEptsumTrackNorm;
743 if(coneptsumTrack > 0)
745 coneptsumTrackSubPhiNorm = coneptsumTrackSubPhi/coneptsumTrack;
746 coneptsumTrackSubEtaNorm = coneptsumTrackSubEta/coneptsumTrack;
758 Float_t phiUEptsumClusterNorm = 0 ;
759 Float_t etaUEptsumClusterNorm = 0 ;
760 Float_t coneptsumClusterSubPhi = 0 ;
761 Float_t coneptsumClusterSubEta = 0 ;
762 Float_t coneptsumClusterSubPhiNorm = 0 ;
763 Float_t coneptsumClusterSubEtaNorm = 0 ;
764 Float_t phiUEptsumCellNorm = 0 ;
765 Float_t etaUEptsumCellNorm = 0 ;
766 Float_t coneptsumCellSubPhi = 0 ;
767 Float_t coneptsumCellSubEta = 0 ;
768 Float_t coneptsumCellSubPhiNorm = 0 ;
769 Float_t coneptsumCellSubEtaNorm = 0 ;
770 etaBandptsumClusterNorm = 0;
785 Float_t correctConeSumClusterEta = 1;
786 Float_t correctConeSumClusterPhi = 1;
789 phiUEptsumCluster,etaUEptsumCluster,
790 phiUEptsumClusterNorm,etaUEptsumClusterNorm,
791 correctConeSumClusterEta,correctConeSumClusterPhi);
802 coneptsumClusterSubPhi = coneptsumCluster - phiUEptsumClusterNorm;
803 coneptsumClusterSubEta = coneptsumCluster - etaUEptsumClusterNorm;
805 etaBandptsumClusterNorm = etaUEptsumClusterNorm;
817 if(coneptsumCluster!=0)
819 coneptsumClusterSubPhiNorm = coneptsumClusterSubPhi/coneptsumCluster;
820 coneptsumClusterSubEtaNorm = coneptsumClusterSubEta/coneptsumCluster;
840 Float_t emcEtaSize = 0.7*2;
841 Float_t emcPhiSize = TMath::DegToRad()*100.;
843 if(((2*conesize*emcPhiSize)-coneA)!=0)phiUEptsumCellNorm = phiUEptsumCell*(coneA / ((2*conesize*emcPhiSize)-coneA));
844 if(((2*conesize*emcEtaSize)-coneA)!=0)etaUEptsumCellNorm = etaUEptsumCell*(coneA / ((2*conesize*emcEtaSize)-coneA));
848 Float_t correctConeSumCellEta = 1;
849 if(TMath::Abs(etaTrig)+conesize > emcEtaSize/2.)
851 Float_t excess = TMath::Abs(etaTrig) + conesize - emcEtaSize/2.;
855 if(((2*(conesize-excess)*emcPhiSize)-(coneA-correctConeSumCellEta))!=0)phiUEptsumCellNorm = phiUEptsumCell*(coneA / ((2*(conesize-excess)*emcPhiSize)-(coneA-correctConeSumCellEta)));
858 Float_t correctConeSumCellPhi = 1;
860 if((phiTrig+conesize > 180*TMath::DegToRad()) ||
861 (phiTrig-conesize < 80*TMath::DegToRad()))
864 if( phiTrig+conesize > 180*TMath::DegToRad() ) excess = conesize + phiTrig - 180*TMath::DegToRad() ;
865 else excess = conesize - phiTrig + 80*TMath::DegToRad() ;
871 if(((2*(conesize-excess)*emcEtaSize)-(coneA-correctConeSumCellPhi))!=0)etaUEptsumCellNorm = etaUEptsumCell*(coneA / ((2*(conesize-excess)*emcEtaSize)-(coneA-correctConeSumCellPhi)));
875 coneptsumCellSubPhi = coneptsumCell*correctConeSumCellEta*correctConeSumCellPhi - phiUEptsumCellNorm;
876 coneptsumCellSubEta = coneptsumCell*correctConeSumCellEta*correctConeSumCellPhi - etaUEptsumCellNorm;
887 if ( coneptsumCell > 0.01 )
889 coneptsumCellSubPhiNorm = coneptsumCellSubPhi/coneptsumCell;
890 coneptsumCellSubEtaNorm = coneptsumCellSubEta/coneptsumCell;
906 Double_t sumPhiUESub = coneptsumClusterSubPhi + coneptsumTrackSubPhi;
907 Double_t sumEtaUESub = coneptsumClusterSubEta + coneptsumTrackSubEta;
928 Double_t sumPhiUESubTrackCell = coneptsumCellSubPhi + coneptsumTrackSubPhi;
929 Double_t sumEtaUESubTrackCell = coneptsumCellSubEta + coneptsumTrackSubEta;
951 Float_t & coneptsumCluster, Float_t & coneptLeadCluster)
953 coneptLeadCluster = 0;
954 coneptsumCluster = 0;
958 Float_t ptTrig = aodParticle->Pt();
970 Double_t vertex[] = {0,0,0} ;
975 Float_t distToTrigger = 0;
976 for(Int_t icalo=0; icalo < refclusters->GetEntriesFast(); icalo++)
978 AliVCluster* calo = (AliVCluster *) refclusters->At(icalo);
999 coneptsumCluster+=ptcone;
1000 if(ptcone > coneptLeadCluster) coneptLeadCluster = ptcone;
1006 aodParticle->SetNeutralLeadPtInCone(coneptLeadCluster);
1007 aodParticle->SetNeutralPtSumInCone(coneptsumCluster);
1015 Float_t & coneptsumCell)
1021 Float_t ptTrig = aodParticle->Pt();
1022 Float_t phiTrig = aodParticle->Phi();
1023 if(phiTrig<0) phiTrig += TMath::TwoPi();
1024 Float_t etaTrig = aodParticle->Eta();
1026 if(aodParticle->GetDetectorTag()==
kEMCAL)
1028 AliEMCALGeometry* eGeom = AliEMCALGeometry::GetInstance();
1031 if (eGeom->GetAbsCellIdFromEtaPhi(etaTrig,phiTrig,absId))
1033 if(!eGeom->CheckAbsCellId(absId))
return ;
1036 Int_t nSupMod = eGeom->GetSuperModuleNumber(absId);
1038 Int_t imEta=-1, imPhi=-1;
1039 Int_t ieta =-1, iphi =-1;
1041 if (eGeom->GetCellIndex(absId,nSupMod,nModule,imPhi,imEta))
1043 Int_t iEta=-1, iPhi=-1;
1044 eGeom->GetCellPhiEtaIndexInSModule(nSupMod,nModule,imPhi,imEta,iphi,ieta);
1046 Int_t colTrig = iEta;
1047 if (nSupMod % 2) colTrig = AliEMCALGeoParams::fgkEMCALCols + iEta ;
1048 Int_t rowTrig = iPhi + AliEMCALGeoParams::fgkEMCALRows*int(nSupMod/2);
1050 Int_t sqrSize = int(conesize/0.0143);
1055 for(Int_t irow = rowTrig-sqrSize; irow < rowTrig+sqrSize; irow++)
1057 for(Int_t icol = colTrig-sqrSize; icol < colTrig+sqrSize; icol++)
1059 Int_t inSector = int(irow/AliEMCALGeoParams::fgkEMCALRows);
1060 if(inSector==5)
continue;
1062 Int_t inSupMod = -1;
1064 if(icol < AliEMCALGeoParams::fgkEMCALCols)
1066 inSupMod = 2*inSector + 1;
1069 else if(icol > AliEMCALGeoParams::fgkEMCALCols - 1)
1071 inSupMod = 2*inSector;
1072 icolLoc = icol-AliEMCALGeoParams::fgkEMCALCols;
1075 Int_t irowLoc = irow - AliEMCALGeoParams::fgkEMCALRows*inSector ;
1077 Int_t iabsId = eGeom->GetAbsCellIdFromCellIndexes(inSupMod,irowLoc,icolLoc);
1078 if(!eGeom->CheckAbsCellId(iabsId))
continue;
1081 coneptsumCell += cells->GetCellAmplitude(iabsId);
1095 Float_t & coneptsumTrack, Float_t & coneptLeadTrack)
1097 coneptLeadTrack = 0;
1101 Float_t ptTrig = aodParticle->Pt();
1113 Float_t pTtrack = 0;
1114 Float_t distToTrigger = 0;
1115 for(Int_t itrack=0; itrack < reftracks->GetEntriesFast(); itrack++)
1117 AliVTrack* track = (AliVTrack *) reftracks->At(itrack);
1119 pTtrack = track->Pt();
1126 ULong_t status = track->GetStatus();
1127 Bool_t okTOF = ( (status & AliVTrack::kTOFout) == AliVTrack::kTOFout ) ;
1129 Int_t trackBC = track->GetTOFBunchCrossing(bz);
1150 coneptsumTrack+=pTtrack;
1151 if(pTtrack > coneptLeadTrack) coneptLeadTrack = pTtrack;
1157 aodParticle->SetChargedLeadPtInCone(coneptLeadTrack);
1158 aodParticle->SetChargedPtSumInCone(coneptsumTrack);
1194 if(energy < 8)
return;
1196 AliESDEvent* esdEv =
dynamic_cast<AliESDEvent*
> (event);
1197 AliAODEvent* aodEv =
dynamic_cast<AliAODEvent*
> (event);
1200 Int_t nVerticesSPD = -1;
1201 Int_t nVerticesTracks = -1;
1205 nVerticesSPD = esdEv->GetNumberOfPileupVerticesSPD();
1206 nVerticesTracks = esdEv->GetNumberOfPileupVerticesTracks();
1211 nVerticesSPD = aodEv->GetNumberOfPileupVerticesSPD();
1212 nVerticesTracks = aodEv->GetNumberOfPileupVerticesTracks();
1222 Float_t z1 = -1, z2 = -1;
1224 for(Int_t iVert=0; iVert<nVerticesSPD;iVert++)
1228 const AliESDVertex* pv=esdEv->GetPileupVertexSPD(iVert);
1229 ncont=pv->GetNContributors();
1230 z1 = esdEv->GetPrimaryVertexSPD()->GetZ();
1232 diamZ = esdEv->GetDiamondZ();
1236 AliAODVertex *pv=aodEv->GetVertex(iVert);
1237 if(pv->GetType()!=AliAODVertex::kPileupSPD)
continue;
1238 ncont=pv->GetNContributors();
1239 z1=aodEv->GetPrimaryVertexSPD()->GetZ();
1241 diamZ = aodEv->GetDiamondZ();
1244 Double_t distZ = TMath::Abs(z2-z1);
1245 diamZ = TMath::Abs(z2-diamZ);
1258 Float_t coneptsum, Float_t coneleadpt,
1263 Int_t clusterID = pCandidate->GetCaloLabel(0) ;
1264 Int_t nMaxima = pCandidate->GetNLM();
1265 Int_t mcTag = pCandidate->GetTag() ;
1266 Bool_t isolated = pCandidate->IsIsolated();
1268 if ( clusterID < 0 )
1270 AliWarning(Form(
"ID of cluster = %d, not possible!", clusterID));
1274 Float_t m02 = pCandidate->GetM02() ;
1275 Float_t
energy = pCandidate->E();
1276 Float_t pt = pCandidate->Pt();
1277 Float_t eta = pCandidate->Eta();
1278 Float_t phi = pCandidate->Phi();
1279 if(phi<0) phi+= TMath::TwoPi();
1298 Int_t decayTag = pCandidate->DecayTag();
1299 if(decayTag < 0) decayTag = 0;
1336 Int_t ptsumBin = -1;
1337 Int_t leadptBin = -1;
1339 AliDebug(1,Form(
"pT cand: %2.2f, In cone pT: Sum %2.2f, Lead %2.2f, n bins %d",pt,coneptsum,coneleadpt,
fNBkgBin));
1341 for(Int_t ibin = 0; ibin <
fNBkgBin; ibin++)
1349 if ( leadptBin >= 0 )
1358 if ( leadptBin == 0 )
1359 AliDebug(1,Form(
"No track/clusters in isolation cone: cand pt %2.2f GeV/c, track multiplicity %d, N clusters %d",
1363 if ( ptsumBin >= 0 )
1375 Int_t decayTag = pCandidate->DecayTag();
1376 if(decayTag < 0) decayTag = 0;
1382 Int_t leadptBinDecay = leadptBin+ibit*
fNBkgBin;
1383 Int_t ptsumBinDecay = ptsumBin+ibit*
fNBkgBin;
1392 Int_t leadptBinMC = leadptBin+mcIndex*
fNBkgBin;
1393 Int_t ptsumBinMC = ptsumBin+mcIndex*
fNBkgBin;
1438 AliFatal(Form(
"Lost decay Bit assigned to bad case, mcIndex %d",mcIndex));
1460 Int_t ptTrigBin = -1;
1469 if ( ptTrigBin >= 0 )
1486 Int_t decayTag = pCandidate->DecayTag();
1487 if(decayTag < 0) decayTag = 0;
1504 Int_t ptTrigBinMC = ptTrigBin+mcIndex*
fNPtTrigBin;
1590 Int_t noverlaps = 0;
1593 const UInt_t nlabels =
fCluster->GetNLabels();
1594 Int_t overpdg[nlabels];
1623 if ( noverlaps == 1 )
1650 else if (noverlaps > 1 )
1711 Float_t dZ =
fCluster->GetTrackDz();
1712 Float_t dR =
fCluster->GetTrackDx();
1736 if(TMath::Abs(dZ) < 0.05 && TMath::Abs(dR) < 0.05)
1742 Float_t dEdx = track->GetTPCsignal();
1745 Float_t eOverp =
fCluster->E()/track->P();
1782 const Int_t buffersize = 255;
1783 char onePar[buffersize] ;
1785 snprintf(onePar, buffersize,
"--- AliAnaParticleIsolation ---:") ;
1789 snprintf(onePar, buffersize,
"Isolation Cand Detector: %s;",
fIsoDetectorString.Data()) ;
1791 snprintf(onePar, buffersize,
"fReMakeIC =%d (Flag for reisolation during histogram filling);",
fReMakeIC) ;
1793 snprintf(onePar, buffersize,
"fMakeSeveralIC=%d (Flag for isolation with several cuts at the same time );",
fMakeSeveralIC) ;
1795 snprintf(onePar, buffersize,
"fFillTMHisto=%d (Flag for track matching histograms);",
fFillTMHisto) ;
1797 snprintf(onePar, buffersize,
"fFillSSHisto=%d (Flag for shower shape histograms);",
fFillSSHisto) ;
1802 snprintf(onePar, buffersize,
"fNCones =%d (Number of cone sizes);",
fNCones) ;
1804 snprintf(onePar, buffersize,
"fNPtThresFrac=%d (Flag for isolation with several cuts at the same time);",
fNPtThresFrac) ;
1807 for(Int_t icone = 0; icone <
fNCones ; icone++)
1809 snprintf(onePar, buffersize,
"fConeSizes[%d]=%1.2f (isolation cone size);",icone,
fConeSizes[icone]) ;
1814 snprintf(onePar, buffersize,
"fPtThresholds[%d]=%1.2f (isolation pt threshold);",ipt,
fPtThresholds[ipt]) ;
1819 snprintf(onePar, buffersize,
"fPtFractions[%d]=%1.2f (isolation pt fraction threshold);",ipt,
fPtFractions[ipt]) ;
1824 snprintf(onePar, buffersize,
"fSumPtThresholds[%d]=%1.2f (isolation sum pt threshold);",ipt,
fSumPtThresholds[ipt]) ;
1835 return new TObjString(parList) ;
1844 TList * outputContainer =
new TList() ;
1845 outputContainer->SetName(
"IsolatedParticleHistos") ;
1891 TString sThreshold =
"";
1894 sThreshold = Form(
", %2.2f < #Sigma #it{p}_{T}^{in cone} < %2.2f GeV/#it{c}",
1897 sThreshold = Form(
", #Sigma #it{p}_{T}^{in cone} = %2.2f GeV/#it{c}",
1902 sThreshold = Form(
", %2.2f < #it{p}_{T}^{th} < %2.2f GeV/#it{c}",
1905 sThreshold = Form(
", #it{p}_{T}^{th} = %2.2f GeV/#it{c}",
1909 sThreshold = Form(
", #Sigma #it{p}_{T}^{in cone}/#it{p}_{T}^{trig} = %2.2f" ,
1912 TString sParticle =
", x^{0,#pm}";
1916 TString parTitle = Form(
"#it{R} = %2.2f%s%s",
GetIsolationCut()->GetConeSize(), sThreshold.Data(),sParticle.Data());
1918 TString pileUpName[] = {
"SPD",
"EMCAL",
"SPDOrEMCAL",
"SPDAndEMCAL",
"SPDAndNotEMCAL",
"EMCALAndNotSPD",
"NotSPDAndNotEMCAL"} ;
1921 TString mcPartType[] = {
"#gamma" ,
"#gamma_{prompt}" ,
"#gamma_{fragmentation}",
1922 "#pi^{0} (merged #gamma)",
"#gamma_{#pi decay}" ,
"#gamma_{#pi decay} lost companion",
1923 "#eta (merged #gamma)" ,
"#gamma_{#eta decay}",
"#gamma_{#eta decay} lost companion",
1924 "#gamma_{other decay}" ,
"e^{#pm}" ,
"hadrons?"} ;
1926 TString mcPartName[] = {
"Photon",
"PhotonPrompt",
"PhotonFrag",
1927 "Pi0" ,
"Pi0Decay" ,
"Pi0DecayLostPair",
1928 "Eta" ,
"EtaDecay" ,
"EtaDecayLostPair",
1929 "OtherDecay",
"Electron",
"Hadron"} ;
1932 TString pptype[] = {
"#gamma" ,
"#gamma_{#pi decay}" ,
"#gamma_{#eta decay}",
"#gamma_{other decay}",
1933 "#gamma_{prompt}",
"#gamma_{fragmentation}",
"#gamma_{ISR}" ,
1934 "#pi^{0}" ,
"#eta"} ;
1936 TString ppname[] = {
"Photon" ,
"PhotonPi0Decay",
"PhotonEtaDecay",
"PhotonOtherDecay",
1937 "PhotonPrompt",
"PhotonFrag" ,
"PhotonISR" ,
1943 Form(
"Number of not isolated leading particles vs #it{p}_{T}, %s",parTitle.Data()),
1944 nptbins,ptmin,ptmax);
1945 fhENoIso->SetYTitle(
"#it{counts}");
1946 fhENoIso->SetXTitle(
"E (GeV/#it{c})");
1950 Form(
"Number of not isolated leading particles vs #it{p}_{T}, %s",parTitle.Data()),
1951 nptbins,ptmin,ptmax);
1953 fhPtNoIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
1957 Form(
"Number of not isolated leading particles #eta vs #phi, %s",parTitle.Data()),
1958 netabins,etamin,etamax,nphibins,phimin,phimax);
1969 fhPtNoIsoMC[imc] =
new TH1F(Form(
"hPtNoIsoMC%s",mcPartName[imc].
Data()),
1970 Form(
"#it{p}_{T} of NOT isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1971 nptbins,ptmin,ptmax);
1973 fhPtNoIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
1976 fhPtIsoMC[imc] =
new TH1F(Form(
"hPtMC%s",mcPartName[imc].
Data()),
1977 Form(
"#it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1978 nptbins,ptmin,ptmax);
1979 fhPtIsoMC[imc]->SetYTitle(
"#it{counts}");
1980 fhPtIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
1983 fhPhiIsoMC[imc] =
new TH2F(Form(
"hPhiMC%s",mcPartName[imc].
Data()),
1984 Form(
"#phi vs #it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1985 nptbins,ptmin,ptmax,nphibins,phimin,phimax);
1987 fhPhiIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
1990 fhEtaIsoMC[imc] =
new TH2F(Form(
"hEtaMC%s",mcPartName[imc].
Data()),
1991 Form(
"#phi vs #it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1992 nptbins,ptmin,ptmax,netabins,etamin,etamax);
1994 fhEtaIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
2002 TString isoName [] = {
"NoIso",
"Iso"};
2003 TString isoTitle[] = {
"Not isolated" ,
"isolated"};
2007 for(Int_t iso = 0; iso < 2; iso++)
2011 new TH1F(Form(
"hPtDecay%s_bit%d",isoName[iso].
Data(),
fDecayBits[ibit]),
2012 Form(
"Number of %s leading pi0 decay particles vs #it{p}_{T}, bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],parTitle.Data()),
2013 nptbins,ptmin,ptmax);
2014 fhPtDecay[iso][ibit]->SetYTitle(
"#it{counts}");
2015 fhPtDecay[iso][ibit]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2016 outputContainer->Add(
fhPtDecay[iso][ibit]) ;
2019 new TH2F(Form(
"hEtaPhiDecay%s_bit%d",isoName[iso].
Data(),
fDecayBits[ibit]),
2020 Form(
"Number of %s leading Pi0 decay particles #eta vs #phi, bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],parTitle.Data()),
2021 netabins,etamin,etamax,nphibins,phimin,phimax);
2029 (Form(
"hPtLambda0Decay%s_bit%d",isoName[iso].
Data(),
fDecayBits[ibit]),
2030 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}, decay bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit], parTitle.Data()),
2031 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
2042 new TH1F(Form(
"hPtDecay%s_bit%d_MC%s",isoName[iso].
Data(),
fDecayBits[ibit],mcPartName[imc].
Data()),
2043 Form(
"#it{p}_{T} of %s, decay bit %d, %s, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],mcPartType[imc].
Data(),parTitle.Data()),
2044 nptbins,ptmin,ptmax);
2045 fhPtDecayMC[iso][ibit][imc]->SetYTitle(
"#it{counts}");
2046 fhPtDecayMC[iso][ibit][imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
2047 outputContainer->Add(
fhPtDecayMC[iso][ibit][imc]) ;
2056 TString isoName [] = {
"NoIso",
"Iso"};
2057 TString isoTitle[] = {
"Not isolated" ,
"isolated"};
2060 Form(
"Number of isolated particles vs E, %s",parTitle.Data()),
2061 nptbins,ptmin,ptmax);
2062 fhEIso->SetYTitle(
"d#it{N} / d#it{E}");
2063 fhEIso->SetXTitle(
"#it{E} (GeV/#it{c})");
2064 outputContainer->Add(
fhEIso) ;
2067 Form(
"Number of isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
2068 nptbins,ptmin,ptmax);
2069 fhPtIso->SetYTitle(
"d#it{N} / #it{p}_{T}");
2070 fhPtIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2071 outputContainer->Add(
fhPtIso) ;
2074 Form(
"Number of isolated particles vs #phi, %s",parTitle.Data()),
2075 nptbins,ptmin,ptmax,nphibins,phimin,phimax);
2077 fhPhiIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2081 Form(
"Number of isolated particles vs #eta, %s",parTitle.Data()),
2082 nptbins,ptmin,ptmax,netabins,etamin,etamax);
2084 fhEtaIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2088 Form(
"Number of isolated particles #eta vs #phi, %s",parTitle.Data()),
2089 netabins,etamin,etamax,nphibins,phimin,phimax);
2097 Form(
"centrality vs #it{p}_{T} for isolated particles, %s",parTitle.Data()),
2098 nptbins,ptmin,ptmax, 100,0,100);
2104 Form(
"event plane angle vs #it{p}_{T} for isolated particles, %s",parTitle.Data()),
2105 nptbins,ptmin,ptmax, 100,0,TMath::Pi());
2114 Form(
"Number of isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
2115 nptbins,ptmin,ptmax,10,0,10);
2120 Form(
"Number of not isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
2121 nptbins,ptmin,ptmax,10,0,10);
2128 Form(
"Track or Cluster leading #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2129 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
2130 fhConePtLead->SetYTitle(
"#it{p}_{T, leading} (GeV/#it{c})");
2131 fhConePtLead->SetXTitle(
"#it{p}_{T, trigger} (GeV/#it{c})");
2135 Form(
"Track and Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2136 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2138 fhConeSumPt->SetXTitle(
"#it{p}_{T, trigger} (GeV/#it{c})");
2142 Form(
"Trigger #eta vs #phi, #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2143 netabins,etamin,etamax,nphibins,phimin,phimax);
2150 Form(
"#it{p}_{T} of clusters and tracks in isolation cone for #it{R} = %2.2f",r),
2151 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2152 fhPtInCone->SetYTitle(
"#it{p}_{T in cone} (GeV/#it{c})");
2153 fhPtInCone->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2184 for(Int_t ibin = 0; ibin <
fNBkgBin; ibin++)
2187 (Form(
"hPtLeadCone_Bin%d",ibin),
2188 Form(
"cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
2195 (Form(
"hSumPtCone_Bin%d",ibin),
2196 Form(
"in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
2204 for(Int_t idecay = 0; idecay <
fNDecayBits; idecay++)
2206 Int_t bindecay = ibin+idecay*
fNBkgBin;
2209 (Form(
"hPtLeadCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2210 Form(
"Decay bit %d, cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
2217 (Form(
"hSumPtCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2218 Form(
"Decay bit %d, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
2232 (Form(
"hPtLeadCone_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2233 Form(
"in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, MC %s, %s",
2240 (Form(
"hSumPtCone_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2241 Form(
"in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, MC %s, %s",
2252 (Form(
"hPtLeadConeLambda0_Bin%d",ibin),
2253 Form(
"#lambda_{0}, in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
2260 (Form(
"hSumPtConeLambda0_Bin%d",ibin),
2261 Form(
"#lambda_{0}, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
2273 (Form(
"hPtLeadConeLambda0_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2274 Form(
"#lambda_{0}, in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, MC %s, %s",
2281 (Form(
"hSumPtConeLambda0_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2282 Form(
"#lambda_{0}, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, MC %s, %s",
2322 (Form(
"hPtTrigBin_PtLeadCone_Bin%d",ibin),
2323 Form(
"#it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
2330 (Form(
"hPtTrigBin_SumPtCone_Bin%d",ibin),
2331 Form(
"#Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
2339 for(Int_t idecay = 0; idecay <
fNDecayBits; idecay++)
2344 (Form(
"hPtTrigBin_PtLeadCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2345 Form(
"Decay bit %d, #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
2352 (Form(
"hPtTrigBin_SumPtCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2353 Form(
"Decay bit %d, #Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
2367 (Form(
"hPtTrigBin_PtLeadCone_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2368 Form(
"#it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, MC %s, %s",
2375 (Form(
"hPtTrigBin_SumPtCone_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2376 Form(
"#Sigma #it{p}_{T}^{in cone}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
2387 (Form(
"hPtTrigBin_PtLeadConeVSLambda0_Bin%d",ibin),
2388 Form(
"#lambda_{0} vs #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
2395 (Form(
"hPtTrigBin_SumPtConeVSLambda0_Bin%d",ibin),
2396 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
2408 (Form(
"hPtTrigBin_PtLeadConeVSLambda0_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2409 Form(
"#lambda_{0} vs #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, MC %s, %s",
2416 (Form(
"hPtTrigBin_SumPtConeVSLambda0_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2417 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
2431 Form(
"#it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2432 100,0,100,nptinconebins,ptinconemin,ptinconemax);
2442 Form(
"Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2443 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2449 Form(
"Cluster leading in isolation cone for #it{R} = %2.2f",r),
2450 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
2459 Form(
"Cell #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2460 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2469 "#Sigma cluster #it{p}_{T} in UE Eta Band",
2470 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2476 "#Sigma cluster #it{p}_{T} UE Phi Band",
2477 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2483 "Trigger #eta vs #phi, #Sigma cluster #it{p}_{T} in UE Eta Band",
2484 netabins,etamin,etamax,nphibins,phimin,phimax);
2491 "Trigger #eta vs #phi, #Sigma cluster #it{p}_{T} UE Phi Band",
2492 netabins,etamin,etamax,nphibins,phimin,phimax);
2501 "#Sigma cell #it{p}_{T} in UE Eta Band",
2502 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2508 "#Sigma cell #it{p}_{T} UE Phi Band",
2509 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2515 "Trigger #eta vs #phi, #Sigma cell #it{p}_{T} in UE Eta Band",
2516 netabins,etamin,etamax,nphibins,phimin,phimax);
2523 "Trigger #eta vs #phi, #Sigma cell #it{p}_{T} UE Phi Band",
2524 netabins,etamin,etamax,nphibins,phimin,phimax);
2532 Form(
"#eta vs #phi of clusters in #eta band isolation cone for #it{R} = %2.2f",r),
2533 netabins,-1,1,nphibins,0,TMath::TwoPi());
2539 Form(
"#eta vs #phi of clusters in #phi band isolation cone for #it{R} = %2.2f",r),
2540 netabins,-1,1,nphibins,0,TMath::TwoPi());
2546 Form(
"#eta vs #phi of clusters in cone for #it{R} = %2.2f",r),
2547 netabins,-1,1,nphibins,0,TMath::TwoPi());
2553 Form(
"#eta vs #phi of all clusters"),
2554 netabins,-1,1,nphibins,0,TMath::TwoPi());
2562 Form(
"#it{p}_{T} of clusters in isolation cone for #it{R} = %2.2f",r),
2563 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2571 Form(
"#it{p}_{T} of cells in isolation cone for #it{R} = %2.2f",r),
2572 nptbins,ptmin,ptmax,1000,0,50);
2578 Form(
"#col vs #row of cells in #eta band isolation cone for #it{R} = %2.2f",r),
2585 Form(
"#col vs #row of cells in #phi band isolation cone for #it{R} = %2.2f",r),
2595 Form(
"Clusters #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2596 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2602 Form(
"Clusters #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2603 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2609 Form(
"Trigger #eta vs #phi, Clusters #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2610 netabins,etamin,etamax,nphibins,phimin,phimax);
2617 Form(
"Trigger #eta vs #phi, Clusters #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2618 netabins,etamin,etamax,nphibins,phimin,phimax);
2627 Form(
"Cells #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2628 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2634 Form(
"Cells #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2635 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2641 Form(
"Trigger #eta vs #phi, Cells #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2642 netabins,etamin,etamax,nphibins,phimin,phimax);
2649 Form(
"Trigger #eta vs #phi, Cells #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2650 netabins,etamin,etamax,nphibins,phimin,phimax);
2658 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #eta acceptance",r),
2659 nptbins,ptmin,ptmax,100,0,1);
2665 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #eta acceptance, in trigger #eta-#phi ",r),
2666 netabins,etamin,etamax,nphibins,phimin,phimax);
2673 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #phi acceptance",r),
2674 nptbins,ptmin,ptmax,100,0,1);
2680 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #phi acceptance, in trigger #eta-#phi ",r),
2681 netabins,etamin,etamax,nphibins,phimin,phimax);
2688 Form(
"#Sigma #it{p}_{T} in cone after bkg sub from #phi band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
2689 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2695 Form(
"#Sigma #it{p}_{T, norm} in cone after bkg sub from #phi band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
2696 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2702 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),
2703 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2709 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),
2710 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2716 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in eta band for cluster (before normalization), R=%2.2f",r),
2717 nptsumbins,ptsummin,ptsummax,2*nptsumbins,ptsummin,2*ptsummax);
2723 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in phi band for cluster (before normalization), R=%2.2f",r),
2724 nptsumbins,ptsummin,ptsummax,8*nptsumbins,ptsummin,8*ptsummax);
2732 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #eta acceptance",r),
2733 nptbins,ptmin,ptmax,100,0,1);
2739 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #eta acceptance, in trigger #eta-#phi ",r),
2740 netabins,etamin,etamax,nphibins,phimin,phimax);
2747 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #phi acceptance",r),
2748 nptbins,ptmin,ptmax,100,0,1);
2754 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #phi acceptance, in trigger #eta-#phi ",r),
2755 netabins,etamin,etamax,nphibins,phimin,phimax);
2763 Form(
"#Sigma #it{p}_{T} in cone after bkg sub from #phi band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
2764 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2770 Form(
"#Sigma #it{p}_{T, norm} in cone after bkg sub from #phi band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
2771 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2777 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),
2778 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2784 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),
2785 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2797 Form(
"Track #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2798 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2804 Form(
"Track leading in isolation cone for #it{R} = %2.2f",r),
2805 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
2811 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f",r),
2812 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2821 "#Sigma track #it{p}_{T} in UE Eta Band",
2822 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2828 "#Sigma track #it{p}_{T} in UE Phi Band",
2829 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax*8);
2836 "Trigger #eta vs #phi, #Sigma track #it{p}_{T} in UE Eta Band",
2837 netabins,etamin,etamax,nphibins,phimin,phimax);
2844 "Trigger #eta vs #phi, #Sigma track #it{p}_{T} in UE Phi Band",
2845 netabins,etamin,etamax,nphibins,phimin,phimax);
2852 Form(
"#eta vs #phi of tracks in #eta band isolation cone for #it{R} = %2.2f",r),
2853 netabins,-1,1,nphibins,0,TMath::TwoPi());
2859 Form(
"#eta vs #phi of tracks in #phi band isolation cone for #it{R} = %2.2f",r),
2860 netabins,-1,1,nphibins,0,TMath::TwoPi());
2866 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2867 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2873 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2874 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2880 Form(
"Trigger #eta vs #phi, Tracks #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2881 netabins,etamin,etamax,nphibins,phimin,phimax);
2888 Form(
"Trigger #eta vs #phi, Tracks #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2889 netabins,etamin,etamax,nphibins,phimin,phimax);
2896 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of tracks #eta acceptance",r),
2897 nptbins,ptmin,ptmax,100,0,1);
2903 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of tracks #eta acceptance, in trigger #eta-#phi ",r),
2904 netabins,etamin,etamax,nphibins,phimin,phimax);
2911 Form(
"#Sigma #it{p}_{T} in cone after bkg sub from #phi band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
2912 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2918 Form(
"#Sigma #it{p}_{T, norm} in cone after bkg sub from #phi band vs #Sigma #it{p}_{T} in cone before bkg sub, R=%2.2f",r),
2919 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2925 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),
2926 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2932 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),
2933 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2941 Form(
"#Sigma #it{p}_{T} in isolation cone at #pm 45 degree phi from trigger particle, #it{R} = %2.2f",r),
2942 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2948 Form(
"#it{p}_{T} in isolation cone at #pm 45 degree phi from trigger particle, #it{R} = %2.2f",r),
2949 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2955 Form(
"#eta vs #phi of all Tracks"),
2956 netabins,-1,1,nphibins,0,TMath::TwoPi());
2962 Form(
"#eta vs #phi of Tracks in cone for #it{R} = %2.2f",r),
2963 netabins,-1,1,nphibins,0,TMath::TwoPi());
2969 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in eta band for tracks (before normalization), R=%2.2f",r),
2970 nptsumbins,ptsummin,ptsummax,2*nptsumbins,ptsummin,2*ptsummax);
2976 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in phi band for tracks (before normalization), R=%2.2f",r),
2977 nptsumbins,ptsummin,ptsummax,8*nptsumbins,ptsummin,8*ptsummax);
2987 Form(
"Track vs Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2988 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
2994 Form(
"#Sigma #it{p}_{T}^{cluster}/#Sigma #it{p}_{T}^{track} in isolation cone for #it{R} = %2.2f",r),
2995 nptbins,ptmin,ptmax,200,0,5);
3002 Form(
"Track vs Cluster lead #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
3003 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
3009 Form(
" #it{p}^{leading cluster}_{T}/#it{p}^{leading track}_{T} in isolation cone for #it{R} = %2.2f",r),
3010 nptbins,ptmin,ptmax,200,0,5);
3019 Form(
"Track vs cell #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
3020 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3026 Form(
"Track and Cell #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
3027 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3033 Form(
"Trigger #eta vs #phi, #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
3034 netabins,etamin,etamax,nphibins,phimin,phimax);
3044 Form(
"#Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
3045 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3051 Form(
"#Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
3052 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3058 Form(
"Trigger #eta vs #phi, #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
3059 netabins,etamin,etamax,nphibins,phimin,phimax);
3066 Form(
"Trigger #eta vs #phi, #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
3067 netabins,etamin,etamax,nphibins,phimin,phimax);
3074 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub eta band in isolation cone for #it{R} = %2.2f",r),
3075 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3081 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub phi band in isolation cone for #it{R} = %2.2f",r),
3082 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3088 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3089 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3095 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3096 nptsumbins,ptsummin,ptsummax*4,nptsumbins,ptsummin,ptsummax*8);
3102 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3103 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3109 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3110 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3116 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub eta band in isolation cone for #it{R} = %2.2f",r),
3117 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3123 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub phi band in isolation cone for #it{R} = %2.2f",r),
3124 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3133 Form(
"Track vs Cell #Sigma #it{p}_{T} UE sub eta band in isolation cone for #it{R} = %2.2f",r),
3134 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3140 Form(
"Track vs Cell #Sigma #it{p}_{T} UE sub phi band in isolation cone for #it{R} = %2.2f",r),
3141 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3147 Form(
"Track vs Cell #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3148 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3154 Form(
"Track vs Cell #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3155 nptsumbins,ptsummin,ptsummax*4,nptsumbins,ptsummin,ptsummax*8);
3161 Form(
"Track vs Cell #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3162 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3168 Form(
"Track vs Cell #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3169 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3175 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
3176 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3182 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
3183 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3189 Form(
"Trigger #eta vs #phi, Tracks #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
3190 netabins,etamin,etamax,nphibins,phimin,phimax);
3197 Form(
"Trigger #eta vs #phi, Tracks #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
3198 netabins,etamin,etamax,nphibins,phimin,phimax);
3207 TString region[] = {
"ITS",
"TPC",
"TRD",
"TOF",
"Top EMCal",
"In EMCal"};
3209 for(Int_t iso = 0; iso < 2; iso++)
3214 (Form(
"hTrackMatchedDEta%s",isoName[iso].
Data()),
3215 Form(
"%s - d#eta of cluster-track vs cluster energy, %s",isoTitle[iso].
Data(),parTitle.Data()),
3216 nptbins,ptmin,ptmax,nresetabins,resetamin,resetamax);
3221 (Form(
"hTrackMatchedDPhi%s",isoName[iso].
Data()),
3222 Form(
"%s - d#phi of cluster-track vs cluster energy, %s",isoTitle[iso].
Data(),parTitle.Data()),
3223 nptbins,ptmin,ptmax,nresphibins,resphimin,resphimax);
3228 (Form(
"hTrackMatchedDEtaDPhi%s",isoName[iso].
Data()),
3229 Form(
"%s - d#eta vs d#phi of cluster-track, %s",isoTitle[iso].
Data(),parTitle.Data()),
3230 nresetabins,resetamin,resetamax,nresphibins,resphimin,resphimax);
3243 Form(
"%s - d#eta of cluster-track vs cluster energy, %s",isoTitle[iso].
Data(),parTitle.Data()),
3244 nptbins,ptmin,ptmax,nresetabins,resetamin,resetamax);
3249 Form(
"%s - d#phi of cluster-track vs cluster energy, %s",isoTitle[iso].
Data(),parTitle.Data()),
3250 nptbins,ptmin,ptmax,nresetabins,resphimin,resphimax);
3255 (Form(
"hTrackMatchedDEtaDPhi%s_MC%s",isoName[iso].
Data(),mcPartName[imc].
Data()),
3256 Form(
"%s - d#eta vs d#phi of cluster-track, %s",isoTitle[iso].
Data(),parTitle.Data()),
3257 nresetabins,resetamin,resetamax,nresphibins,resphimin,resphimax);
3269 (Form(
"hdEdx%s",isoName[iso].
Data()),
3270 Form(
"%s - Matched track <d#it{E}/d#it{x}> vs cluster #it{E}, %s",isoTitle[iso].
Data(),parTitle.Data()),
3271 nptbins,ptmin,ptmax,ndedxbins, dedxmin, dedxmax);
3272 fhdEdx[iso]->SetXTitle(
"#it{E} (GeV)");
3273 fhdEdx[iso]->SetYTitle(
"<d#it{E}/d#it{x}>");
3274 outputContainer->Add(
fhdEdx[iso]);
3277 (Form(
"hEOverP%s",isoName[iso].
Data()),
3278 Form(
"%s - Matched track #it{E}/#it{p} vs cluster, %s",isoTitle[iso].
Data(),parTitle.Data()),
3279 nptbins,ptmin,ptmax,nPoverEbins,pOverEmin,pOverEmax);
3280 fhEOverP[iso]->SetXTitle(
"#it{E} (GeV)");
3281 fhEOverP[iso]->SetYTitle(
"#it{E}/#it{p}");
3282 outputContainer->Add(
fhEOverP[iso]);
3287 (Form(
"hTrackMatchedMCParticle%s",isoName[iso].
Data()),
3288 Form(
"%s - Origin of particle vs cluster #it{E}, %s",isoTitle[iso].
Data(),parTitle.Data()),
3289 nptbins,ptmin,ptmax,8,0,8);
3309 (Form(
"hELambda0%s",isoName[iso].
Data()),
3310 Form(
"%s cluster : #it{E} vs #lambda_{0}, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3311 fhELambda0[iso]->SetYTitle(
"#lambda_{0}^{2}");
3323 (Form(
"hPtLambda0%s",isoName[iso].
Data()),
3324 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}, %s",isoTitle[iso].
Data(), parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3326 fhPtLambda0[iso]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3333 fhPtLambda0MC[imc][iso] =
new TH2F(Form(
"hPtLambda0%s_MC%s",isoName[iso].
Data(),mcPartName[imc].
Data()),
3334 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3335 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3337 fhPtLambda0MC[imc][iso]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
3341 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3342 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3350 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3351 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3357 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3358 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3364 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3365 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3371 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3372 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3378 fhPtNOverlap[imc][iso] =
new TH2F(Form(
"hPtNOverlaps%s_MC%s_1Overlap",isoName[iso].
Data(),mcPartName[imc].
Data()),
3379 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3380 nptbins,ptmin,ptmax,10,0,10);
3382 fhPtNOverlap[imc][iso]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
3385 fhPtNOverlapConv[imc][iso] =
new TH2F(Form(
"hPtNOverlaps%s_MC%sConv_1Overlap",isoName[iso].
Data(),mcPartName[imc].
Data()),
3386 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3387 nptbins,ptmin,ptmax,10,0,10);
3399 (Form(
"hPtLambda0TRD%s",isoName[iso].
Data()),
3400 Form(
"%s cluster: #it{p}_{T} vs #lambda_{0}, SM behind TRD, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3406 (Form(
"hELambda0TRD%s",isoName[iso].
Data()),
3407 Form(
"%s cluster: #it{E} vs #lambda_{0}, SM behind TRD, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3423 (Form(
"hNLocMax%s",isoName[iso].
Data()),
3424 Form(
"%s - Number of local maxima in cluster, %s",isoTitle[iso].
Data(),parTitle.Data()),
3425 nptbins,ptmin,ptmax,10,0,10);
3427 fhNLocMax[iso]->SetXTitle(
"#it{E} (GeV)");
3431 (Form(
"hELambda0LocMax1%s",isoName[iso].
Data()),
3432 Form(
"%s cluster (#eta) pairs: #it{E} vs #lambda_{0}, #it{NLM}=1, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3438 (Form(
"hELambda1LocMax1%s",isoName[iso].
Data()),
3439 Form(
"%s cluster (#eta) pairs: #it{E} vs #lambda_{1}, #it{NLM}=1, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3445 (Form(
"hELambda0LocMax2%s",isoName[iso].
Data()),
3446 Form(
"%s cluster (#eta) pairs: #it{E} vs #lambda_{0}, #it{NLM}=2, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3452 (Form(
"hELambda1LocMax2%s",isoName[iso].
Data()),
3453 Form(
"%s cluster (#eta) pairs: #it{E} vs #lambda_{1}, #it{NLM}=2, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3459 ( Form(
"hELambda0LocMaxN%s",isoName[iso].
Data()),
3460 Form(
"%s cluster (#eta) pairs: #it{E} vs #lambda_{0}, #it{NLM}>2, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3466 (Form(
"hELambda1LocMaxN%s",isoName[iso].
Data()),
3467 Form(
"%s cluster (#eta) pairs: #it{E} vs #lambda_{1}, #it{NLM}>2, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3477 for(Int_t ieta = 0; ieta < 4; ieta++)
3479 for(Int_t iphi = 0; iphi < 3; iphi++)
3505 new TH2F(Form(
"hLam0_%s_eta%d_phi%d_sm%d",isoName[iso].
Data(),ieta,iphi,ism),
3506 Form(
"%s, cluster from converted photon, #it{p}_{T} vs #lambda_{0}^{2}, sm %d, region eta %d, phi %d",
3507 isoTitle[iso].
Data(),ism,ieta,iphi),
3508 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3516 Float_t ptLimit[] = {2,3,4,5,6,8,10,12};
3517 for(Int_t ipt = 0; ipt < 7; ipt++)
3520 (Form(
"hEtaPhiLam0BinPtBin%d%s",ipt,isoName[iso].
Data()),
3521 Form(
"%s, #eta vs #phi in #it{p}_{T}=[%2.1f,%2.1f] GeV/#it{c} and #lambda^{2}_{0}=[0.3,0.4]",
3522 isoTitle[iso].
Data(),ptLimit[ipt],ptLimit[ipt+1]),
3523 netabins,etamin,etamax,nphibins,phimin,phimax);
3533 Form(
"%s, cluster from converted photon, #it{p}_{T} vs vertex distance, %s",
3534 isoTitle[iso].
Data(),parTitle.Data()),
3535 nptbins,ptmin,ptmax,500,0,500);
3543 Form(
"%s, cluster from converted photon, #it{p}_{T} vs vertex distance, %s, SM covered by TRD",
3544 isoTitle[iso].
Data(),parTitle.Data()),
3545 nptbins,ptmin,ptmax,500,0,500);
3553 for(Int_t iR = 0; iR < 6; iR++)
3556 Form(
"%s, cluster from converted photon, #it{p}_{T} vs #lambda_{0}^{2}, conversion in %s",
3557 isoTitle[iso].
Data(),region[iR].
Data()),
3558 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3566 Form(
"%s, cluster from converted photon, #it{p}_{T} vs #lambda_{0}^{2}, conversion in %s, SM covered by TRD",
3567 isoTitle[iso].
Data(),region[iR].
Data()),
3568 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3618 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC!=0",r),
3619 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3625 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC!=0, pile-up from SPD",r),
3626 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3632 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC==0",r),
3633 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3639 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC==0",r),
3640 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3647 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC==0, pile-up from SPD",r),
3648 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3654 for (Int_t i = 0; i < 7 ; i++)
3657 Form(
"#it{p}_{T} in isolation cone for #it{R} = %2.2f, from pile-up (%s)",r,pileUpName[i].
Data()),
3658 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3671 fhEPrimMC[i] =
new TH1F(Form(
"hEPrim_MC%s",ppname[i].
Data()),
3672 Form(
"primary photon %s : #it{E}, %s",pptype[i].
Data(),parTitle.Data()),
3673 nptbins,ptmin,ptmax);
3674 fhEPrimMC[i]->SetXTitle(
"#it{E} (GeV)");
3678 Form(
"primary photon %s : #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3679 nptbins,ptmin,ptmax);
3680 fhPtPrimMC[i]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3684 Form(
"primary isolated photon %s : #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3685 nptbins,ptmin,ptmax);
3690 Form(
"primary photon %s : #eta vs #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3691 nptbins,ptmin,ptmax,200,-2,2);
3693 fhEtaPrimMC[i]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3697 Form(
"primary photon %s : #phi vs #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3698 nptbins,ptmin,ptmax,200,0.,TMath::TwoPi());
3700 fhPhiPrimMC[i]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3707 Form(
"primary photon %s : #it{p}_{T}, pair in cone, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3708 nptbins,ptmin,ptmax);
3713 Form(
"isolated primary photon %s, pair in cone : #it{p}_{T}, %s",
3715 nptbins,ptmin,ptmax);
3720 Form(
"primary photon %s, no overlap, pair in cone : #it{p}_{T}, %s",
3722 nptbins,ptmin,ptmax);
3727 Form(
"isolated primary photon %s, pair in cone,no overlap : #it{p}_{T}, %s",
3729 nptbins,ptmin,ptmax);
3734 Form(
"primary photon %s, no overlap, pair in cone, E > calo min: #it{p}_{T}, %s",
3736 nptbins,ptmin,ptmax);
3741 Form(
"isolated primary photon %s, pair in cone,no overlap, E > calo min: #it{p}_{T}, %s",
3743 nptbins,ptmin,ptmax);
3749 Form(
"primary photon %s, no overlap: #it{p}_{T}, %s",
3751 nptbins,ptmin,ptmax);
3756 Form(
"isolated primary photon %s, no overlap: #it{p}_{T}, %s",
3758 nptbins,ptmin,ptmax);
3763 Form(
"primary photon %s : #it{p}_{T}, pair out of cone, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3764 nptbins,ptmin,ptmax);
3769 Form(
"isolated primary photon %s, pair out of cone : #it{p}_{T}, %s",
3771 nptbins,ptmin,ptmax);
3776 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3777 nptbins,ptmin,ptmax);
3782 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, no overlap, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3783 nptbins,ptmin,ptmax);
3788 Form(
"isolated primary photon %s, pair out of acceptance : #it{p}_{T}, %s",
3790 nptbins,ptmin,ptmax);
3795 Form(
"isolated primary photon %s, pair out of acceptance, no overlap : #it{p}_{T}, %s",
3797 nptbins,ptmin,ptmax);
3802 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3804 nptbins,ptmin,ptmax);
3809 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3811 nptbins,ptmin,ptmax);
3823 Form(
"primary photon %s : #it{p}_{T}, pair in cone, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3824 nptbins,ptmin,ptmax);
3829 Form(
"isolated primary photon %s, pair in cone : #it{p}_{T}, %s",
3831 nptbins,ptmin,ptmax);
3836 Form(
"primary photon %s, no overlap, pair in cone : #it{p}_{T}, %s",
3838 nptbins,ptmin,ptmax);
3843 Form(
"isolated primary photon %s, pair in cone,no overlap : #it{p}_{T}, %s",
3845 nptbins,ptmin,ptmax);
3850 Form(
"primary photon %s, no overlap, pair in cone, E > calo min: #it{p}_{T}, %s",
3852 nptbins,ptmin,ptmax);
3857 Form(
"isolated primary photon %s, pair in cone,no overlap, E > calo min: #it{p}_{T}, %s",
3859 nptbins,ptmin,ptmax);
3865 Form(
"primary photon %s, no overlap: #it{p}_{T}, %s",
3867 nptbins,ptmin,ptmax);
3872 Form(
"isolated primary photon %s, no overlap: #it{p}_{T}, %s",
3874 nptbins,ptmin,ptmax);
3879 Form(
"primary photon %s : #it{p}_{T}, pair out of cone, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3880 nptbins,ptmin,ptmax);
3885 Form(
"isolated primary photon %s, pair out of cone : #it{p}_{T}, %s",
3887 nptbins,ptmin,ptmax);
3892 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3893 nptbins,ptmin,ptmax);
3898 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, no overlap, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3899 nptbins,ptmin,ptmax);
3904 Form(
"isolated primary photon %s, pair out of acceptance : #it{p}_{T}, %s",
3906 nptbins,ptmin,ptmax);
3911 Form(
"isolated primary photon %s, pair out of acceptance, no overlap : #it{p}_{T}, %s",
3913 nptbins,ptmin,ptmax);
3918 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3920 nptbins,ptmin,ptmax);
3925 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3927 nptbins,ptmin,ptmax);
3939 const Int_t buffersize = 255;
3940 char name[buffersize];
3941 char title[buffersize];
3942 for(Int_t icone = 0; icone<
fNCones; icone++)
3945 snprintf(name, buffersize,
"hSumPtLeadingPt_Cone_%d",icone);
3946 snprintf(title, buffersize,
"#Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3947 fhSumPtLeadingPt[icone] =
new TH2F(name, title,nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3953 snprintf(name, buffersize,
"hPtLeadingPt_Cone_%d",icone);
3954 snprintf(title, buffersize,
"#it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3955 fhPtLeadingPt[icone] =
new TH2F(name, title, nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3956 fhPtLeadingPt[icone] ->SetYTitle(
"#it{p}_{T}^{cone} (GeV/#it{c})");
3957 fhPtLeadingPt[icone] ->SetXTitle(
"#it{p}_{T}^{leading} (GeV/#it{c})");
3961 snprintf(name, buffersize,
"hPerpSumPtLeadingPt_Cone_%d",icone);
3962 snprintf(title, buffersize,
"#Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3963 fhPerpSumPtLeadingPt[icone] =
new TH2F(name, title,nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3969 snprintf(name, buffersize,
"hPerpPtLeadingPt_Cone_%d",icone);
3970 snprintf(title, buffersize,
"#it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3971 fhPerpPtLeadingPt[icone] =
new TH2F(name, title, nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3980 snprintf(name , buffersize,
"hSumPtLeadingPt_MC%s_Cone_%d",mcPartName[imc].
Data(),icone);
3981 snprintf(title, buffersize,
"Candidate %s #it{p}_{T} vs cone #Sigma #it{p}_{T} for #it{R}=%2.2f",mcPartType[imc].
Data(),
fConeSizes[icone]);
3982 fhSumPtLeadingPtMC[imc][icone] =
new TH2F(name, title,nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3991 snprintf(name, buffersize,
"hPtThres_Cone_%d_Pt%d",icone,ipt);
3992 snprintf(title, buffersize,
"Isolated candidate #it{p}_{T} distribution for #it{R} = %2.2f and #it{p}_{T}^{th} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtThresholds[ipt]);
3997 snprintf(name, buffersize,
"hPtFrac_Cone_%d_Pt%d",icone,ipt);
3998 snprintf(title, buffersize,
"Isolated candidate #it{p}_{T} distribution for #it{R} = %2.2f and #it{p}_{T}^{fr} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtFractions[ipt]);
4003 snprintf(name, buffersize,
"hSumPt_Cone_%d_Pt%d",icone,ipt);
4004 snprintf(title, buffersize,
"Isolated candidate #it{p}_{T} distribution for #it{R} = %2.2f and #it{p}_{T}^{sum} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fSumPtThresholds[ipt]);
4005 fhSumPtIsolated[icone][ipt] =
new TH1F(name, title,nptbins,ptmin,ptmax);
4010 snprintf(name, buffersize,
"hPtSumDensity_Cone_%d_Pt%d",icone,ipt);
4011 snprintf(title, buffersize,
"Isolated candidate #it{p}_{T} distribution for density in #it{R} = %2.2f and #it{p}_{T}^{sum} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fSumPtThresholds[ipt]);
4017 snprintf(name, buffersize,
"hPtFracPtSum_Cone_%d_Pt%d",icone,ipt);
4018 snprintf(title, buffersize,
"Isolated candidate #it{p}_{T} distribution for PtFracPtSum in #it{R} = %2.2f and #it{p}_{T}^{fr} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtFractions[ipt]);
4025 snprintf(name, buffersize,
"hEtaPhiPtThres_Cone_%d_Pt%d",icone,ipt);
4026 snprintf(title, buffersize,
"Isolated candidate #eta:#phi distribution for #it{R} = %2.2f and #it{p}_{T}^{th} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtThresholds[ipt]);
4027 fhEtaPhiPtThresIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4032 snprintf(name, buffersize,
"hEtaPhiPtFrac_Cone_%d_Pt%d",icone,ipt);
4033 snprintf(title, buffersize,
"Isolated candidate #eta:#phi distribution for #it{R} = %2.2f and #it{p}_{T}^{fr} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtFractions[ipt]);
4034 fhEtaPhiPtFracIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4039 snprintf(name, buffersize,
"hEtaPhiPtSum_Cone_%d_Pt%d",icone,ipt);
4040 snprintf(title, buffersize,
"Isolated candidate #eta:#phi distribution for #it{R} = %2.2f and #it{p}_{T}^{sum} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fSumPtThresholds[ipt]);
4041 fhEtaPhiPtSumIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4046 snprintf(name, buffersize,
"hEtaPhiSumDensity_Cone_%d_Pt%d",icone,ipt);
4047 snprintf(title, buffersize,
"Isolated candidate #eta:#phi distribution for density #it{R} = %2.2f and #it{p}_{T}^{sum} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fSumPtThresholds[ipt]);
4048 fhEtaPhiSumDensityIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4053 snprintf(name, buffersize,
"hEtaPhiFracPtSum_Cone_%d_Pt%d",icone,ipt);
4054 snprintf(title, buffersize,
"Isolated candidate #eta:#phi distribution for FracPtSum #it{R} = %2.2f and #it{p}_{T}^{fr} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtFractions[ipt]);
4055 fhEtaPhiFracPtSumIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4063 snprintf(name, buffersize,
"hPtThres_Decay_Cone_%d_Pt%d",icone,ipt);
4064 snprintf(title, buffersize,
"Isolated decay candidate #it{p}_{T} distribution for #it{R} = %2.2f and #it{p}_{T}^{th} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtThresholds[ipt]);
4069 snprintf(name, buffersize,
"hPtFrac_Decay_Cone_%d_Pt%d",icone,ipt);
4070 snprintf(title, buffersize,
"Isolated decay candidate #it{p}_{T} distribution for #it{R} = %2.2f and #it{p}_{T}^{fr} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtFractions[ipt]);
4075 snprintf(name, buffersize,
"hPtSum_Decay_Cone_%d_Pt%d",icone,ipt);
4076 snprintf(title, buffersize,
"Isolated decay candidate #it{p}_{T} distribution for #it{R} = %2.2f and #it{p}_{T}^{sum} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fSumPtThresholds[ipt]);
4082 snprintf(name, buffersize,
"hPtSumDensity_Decay_Cone_%d_Pt%d",icone,ipt);
4083 snprintf(title, buffersize,
"Isolated decay candidate #it{p}_{T} distribution for density in #it{R} = %2.2f and #it{p}_{T}^{sum} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fSumPtThresholds[ipt]);
4089 snprintf(name, buffersize,
"hPtFracPtSum_Decay_Cone_%d_Pt%d",icone,ipt);
4090 snprintf(title, buffersize,
"Isolated decay candidate #it{p}_{T} distribution for PtFracPtSum in #it{R} = %2.2f and #it{p}_{T}^{fr} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtFractions[ipt]);
4097 snprintf(name, buffersize,
"hEtaPhiPtThres_Decay_Cone_%d_Pt%d",icone,ipt);
4098 snprintf(title, buffersize,
"Isolated decay candidate #eta:#phi distribution for #it{R} = %2.2f and #it{p}_{T}^{th} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtThresholds[ipt]);
4104 snprintf(name, buffersize,
"hEtaPhiPtFrac_Decay_Cone_%d_Pt%d",icone,ipt);
4105 snprintf(title, buffersize,
"Isolated decay candidate #eta:#phi distribution for #it{R} = %2.2f and #it{p}_{T}^{fr} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtFractions[ipt]);
4106 fhEtaPhiPtFracDecayIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4112 snprintf(name, buffersize,
"hEtaPhiPtSum_Decay_Cone_%d_Pt%d",icone,ipt);
4113 snprintf(title, buffersize,
"Isolated decay candidate #eta:#phi distribution for #it{R} = %2.2f and #it{p}_{T}^{sum} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fSumPtThresholds[ipt]);
4114 fhEtaPhiPtSumDecayIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4119 snprintf(name, buffersize,
"hEtaPhiSumDensity_Decay_Cone_%d_Pt%d",icone,ipt);
4120 snprintf(title, buffersize,
"Isolated decay candidate #eta:#phi distribution for density #it{R} = %2.2f and #it{p}_{T}^{sum} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fSumPtThresholds[ipt]);
4126 snprintf(name, buffersize,
"hEtaPhiFracPtSum_Decay_Cone_%d_Pt%d",icone,ipt);
4127 snprintf(title, buffersize,
"Isolated decay candidate #eta:#phi distribution for FracPtSum #it{R} = %2.2f and #it{p}_{T}^{fr} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fPtFractions[ipt]);
4139 snprintf(name , buffersize,
"hPtThreshMC%s_Cone_%d_Pt%d",mcPartName[imc].
Data(),icone,ipt);
4140 snprintf(title, buffersize,
"Isolated %s #it{p}_{T} for #it{R}=%2.2f and #it{p}_{T}^{th}=%2.2f",
4148 snprintf(name , buffersize,
"hPtFracMC%s_Cone_%d_Pt%d",mcPartName[imc].
Data(),icone,ipt);
4149 snprintf(title, buffersize,
"Isolated %s #it{p}_{T} for #it{R}=%2.2f and #Sigma #it{p}_{T}^{in cone}/#it{p}_{T}^{trig}=%2.2f",
4156 snprintf(name , buffersize,
"hSumPtMC%s_Cone_%d_Pt%d",mcPartName[imc].
Data(),icone,ipt);
4157 snprintf(title, buffersize,
"Isolated %s #it{p}_{T} for #it{R}=%2.2f and #Sigma #it{p}_{T}^{in cone}=%2.2f",
4171 for (Int_t i = 0; i < 7 ; i++)
4174 Form(
"Number of isolated particles vs E, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4175 nptbins,ptmin,ptmax);
4181 Form(
"Number of isolated particles vs #it{p}_{T}, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4182 nptbins,ptmin,ptmax);
4188 Form(
"Number of not isolated particles vs E, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4189 nptbins,ptmin,ptmax);
4195 Form(
"Number of not isolated particles vs #it{p}_{T}, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4196 nptbins,ptmin,ptmax);
4202 fhTimeENoCut =
new TH2F (
"hTimeE_NoCut",
"time of cluster vs E of clusters, no cut", nptbins,ptmin,ptmax, ntimebins,timemin,timemax);
4207 fhTimeESPD =
new TH2F (
"hTimeE_SPD",
"time of cluster vs E of clusters, SPD cut", nptbins,ptmin,ptmax, ntimebins,timemin,timemax);
4212 fhTimeESPDMulti =
new TH2F (
"hTimeE_SPDMulti",
"time of cluster vs E of clusters, SPD multi cut", nptbins,ptmin,ptmax, ntimebins,timemin,timemax);
4217 fhTimeNPileUpVertSPD =
new TH2F (
"hTime_NPileUpVertSPD",
"time of cluster vs N pile-up SPD vertex", ntimebins,timemin,timemax,50,0,50);
4222 fhTimeNPileUpVertTrack =
new TH2F (
"hTime_NPileUpVertTracks",
"time of cluster vs N pile-up Tracks vertex", ntimebins,timemin,timemax, 50,0,50 );
4227 fhTimeNPileUpVertContributors =
new TH2F (
"hTime_NPileUpVertContributors",
"time of cluster vs N constributors to pile-up SPD vertex", ntimebins,timemin,timemax,50,0,50);
4232 fhTimePileUpMainVertexZDistance =
new TH2F (
"hTime_PileUpMainVertexZDistance",
"time of cluster vs distance in Z pile-up SPD vertex - main SPD vertex",ntimebins,timemin,timemax,100,0,50);
4237 fhTimePileUpMainVertexZDiamond =
new TH2F (
"hTime_PileUpMainVertexZDiamond",
"time of cluster vs distance in Z pile-up SPD vertex - z diamond",ntimebins,timemin,timemax,100,0,50);
4243 return outputContainer ;
4303 AliInfo(
"Open default isolation cuts for multiple Isolation analysis");
4310 AliFatal(
"STOP!: You want to use CTS tracks in analysis but not read!! \n!!Check the configuration file!!");
4373 Double_t phiTrig = 0 ;
4375 AliAODPWG4ParticleCorrelation* pLeading = 0;
4381 AliAODPWG4ParticleCorrelation* particle = (AliAODPWG4ParticleCorrelation*) (
GetInputAODBranch()->At(iaod));
4382 particle->SetLeadingParticle(kFALSE);
4388 if(check == 0)
continue;
4389 if(check == -1)
return kFALSE;
4401 if (particle->Pt() > ptTrig)
4403 ptTrig = particle->Pt() ;
4404 phiTrig = particle->Phi();
4406 pLeading = particle ;
4410 if(index < 0)
return kFALSE;
4416 if(phiTrig < 0 ) phiTrig += TMath::TwoPi();
4420 for(Int_t ipr = 0;ipr <
GetCTSTracks()->GetEntriesFast() ; ipr ++ )
4422 AliVTrack * track = (AliVTrack *) (
GetCTSTracks()->At(ipr)) ;
4430 Bool_t contained = kFALSE;
4432 for(Int_t i = 0; i < 4; i++)
4434 if( trackID == pLeading->GetTrackLabel(i) ) contained = kTRUE;
4437 if ( contained ) continue ;
4440 fTrackVector.SetXYZ(track->Px(),track->Py(),track->Pz());
4443 if(phi < 0) phi+=TMath::TwoPi();
4447 Float_t deltaPhi = phiTrig-phi;
4453 if(deltaPhi <= -TMath::PiOver2()) deltaPhi+=TMath::TwoPi();
4454 if(deltaPhi > 3*TMath::PiOver2()) deltaPhi-=TMath::TwoPi();
4456 if(pt > ptTrig && deltaPhi < TMath::PiOver2())
return kFALSE;
4465 TObjArray * nePl = 0x0;
4466 if (pLeading->GetDetectorTag() ==
kPHOS )
4471 if(!nePl)
return kTRUE;
4473 for(Int_t ipr = 0;ipr < nePl->GetEntriesFast() ; ipr ++ )
4475 AliVCluster * cluster = (AliVCluster *) (nePl->At(ipr)) ;
4477 if(cluster->GetID() == pLeading->GetCaloLabel(0) || cluster->GetID() == pLeading->GetCaloLabel(1) )
continue ;
4483 if(phi < 0) phi+=TMath::TwoPi();
4490 Float_t deltaPhi = phiTrig-phi;
4491 if(deltaPhi <= -TMath::PiOver2()) deltaPhi+=TMath::TwoPi();
4492 if(deltaPhi > 3*TMath::PiOver2()) deltaPhi-=TMath::TwoPi();
4494 if(pt > ptTrig && deltaPhi < TMath::PiOver2())
return kFALSE ;
4500 pLeading->SetLeadingParticle(kTRUE);
4502 AliDebug(1,Form(
"Particle AOD with index %d is leading with pT %2.2f",idLeading, pLeading->Pt()));
4515 AliFatal(Form(
"No input particles in AOD with name branch < %s >, STOP",
GetInputAODName().
Data()));
4517 if(strcmp(
GetInputAODBranch()->GetClass()->GetName(),
"AliAODPWG4ParticleCorrelation"))
4518 AliFatal(Form(
"Wrong type of AOD object, change AOD class name in input AOD: It should be <AliAODPWG4ParticleCorrelation> and not <%s>",
4521 Int_t n = 0, nfrac = 0;
4522 Bool_t isolated = kFALSE ;
4523 Float_t coneptsum = 0, coneptlead = 0;
4524 TObjArray * pl = 0x0; ;
4533 Int_t idLeading = -1 ;
4537 AliDebug(1,Form(
"Input aod branch entries %d", naod));
4544 AliDebug(1,
"Not leading; End fill AODs");
4553 for(Int_t iaod = iaod0; iaod < naod; iaod++)
4555 AliAODPWG4ParticleCorrelation * aodinput = (AliAODPWG4ParticleCorrelation*) (
GetInputAODBranch()->At(iaod));
4562 if(! in ) continue ;
4566 Float_t pt = aodinput->Pt();
4578 n=0; nfrac = 0; isolated = kFALSE; coneptsum = 0; coneptlead = 0;
4582 n,nfrac,coneptsum,coneptlead,isolated);
4586 AliDebug(1,Form(
"Particle isolated? %i; if so with index %d",isolated,iaod));
4602 AliDebug(1,Form(
"Histo aod branch entries %d", naod));
4604 for(Int_t iaod = 0; iaod < naod ; iaod++)
4606 AliAODPWG4ParticleCorrelation* aod = (AliAODPWG4ParticleCorrelation*) (
GetInputAODBranch()->At(iaod));
4614 if(! in ) continue ;
4617 Float_t pt = aod->Pt();
4622 Int_t mcTag = aod->GetTag() ;
4639 Bool_t isolated = kFALSE;
4640 Int_t n = 0, nfrac = 0;
4641 Float_t coneptsum = 0, coneptlead = 0;
4650 n,nfrac,coneptsum,coneptlead,isolated);
4653 Bool_t isolated = aod->IsIsolated();
4654 Float_t
energy = aod->E();
4655 Float_t phi = aod->Phi();
4656 Float_t eta = aod->Eta();
4657 Float_t m02 = aod->GetM02();
4658 Int_t iSM = aod->GetSModNumber();
4660 AliDebug(1,Form(
"pt %1.1f, eta %1.1f, phi %1.1f, Isolated %d",pt, eta, phi, isolated));
4665 AliVCluster *cluster = 0;
4673 Int_t etaRegion = -1, phiRegion = -1;
4677 if(etaRegion >= 0 && etaRegion < 4 && phiRegion >=0 && phiRegion < 3)
4689 if(m02 >=0.3 && m02 <= 0.4)
4691 Float_t ptLimit[] = {2,3,4,5,6,8,10,12};
4693 for(Int_t ipt = 0; ipt < 7; ipt++)
4695 if( pt >= ptLimit[ipt] && pt < ptLimit[ipt+1] )
4713 Int_t
pdg = 0, status = 0, momLabel = -1;
4714 Int_t pdgD = 0, statusD = 0, daugLabel = -1;
4715 Bool_t ok = kFALSE, okD = kFALSE;
4737 if ( prodR < 75. ) convR = 0;
4738 else if ( prodR < 275. ) convR = 1;
4739 else if ( prodR < 375. ) convR = 2;
4740 else if ( prodR < 400. ) convR = 3;
4741 else if ( prodR < 430. ) convR = 4;