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;
960 if(!refclusters) return ;
962 Float_t ptTrig = aodParticle->Pt();
965 Double_t vertex[] = {0,0,0} ;
970 Float_t distToTrigger = 0;
971 for(Int_t icalo=0; icalo < refclusters->GetEntriesFast(); icalo++)
973 AliVCluster* calo = (AliVCluster *) refclusters->At(icalo);
994 coneptsumCluster+=ptcone;
995 if(ptcone > coneptLeadCluster) coneptLeadCluster = ptcone;
1001 aodParticle->SetNeutralLeadPtInCone(coneptLeadCluster);
1002 aodParticle->SetNeutralPtSumInCone(coneptsumCluster);
1010 Float_t & coneptsumCell)
1016 Float_t ptTrig = aodParticle->Pt();
1017 Float_t phiTrig = aodParticle->Phi();
1018 if(phiTrig<0) phiTrig += TMath::TwoPi();
1019 Float_t etaTrig = aodParticle->Eta();
1021 if(aodParticle->GetDetectorTag()==
kEMCAL)
1023 AliEMCALGeometry* eGeom = AliEMCALGeometry::GetInstance();
1026 if (eGeom->GetAbsCellIdFromEtaPhi(etaTrig,phiTrig,absId))
1028 if(!eGeom->CheckAbsCellId(absId))
return ;
1031 Int_t nSupMod = eGeom->GetSuperModuleNumber(absId);
1033 Int_t imEta=-1, imPhi=-1;
1034 Int_t ieta =-1, iphi =-1;
1036 if (eGeom->GetCellIndex(absId,nSupMod,nModule,imPhi,imEta))
1038 Int_t iEta=-1, iPhi=-1;
1039 eGeom->GetCellPhiEtaIndexInSModule(nSupMod,nModule,imPhi,imEta,iphi,ieta);
1041 Int_t colTrig = iEta;
1042 if (nSupMod % 2) colTrig = AliEMCALGeoParams::fgkEMCALCols + iEta ;
1043 Int_t rowTrig = iPhi + AliEMCALGeoParams::fgkEMCALRows*int(nSupMod/2);
1045 Int_t sqrSize = int(conesize/0.0143);
1050 for(Int_t irow = rowTrig-sqrSize; irow < rowTrig+sqrSize; irow++)
1052 for(Int_t icol = colTrig-sqrSize; icol < colTrig+sqrSize; icol++)
1054 Int_t inSector = int(irow/AliEMCALGeoParams::fgkEMCALRows);
1055 if(inSector==5)
continue;
1057 Int_t inSupMod = -1;
1059 if(icol < AliEMCALGeoParams::fgkEMCALCols)
1061 inSupMod = 2*inSector + 1;
1064 else if(icol > AliEMCALGeoParams::fgkEMCALCols - 1)
1066 inSupMod = 2*inSector;
1067 icolLoc = icol-AliEMCALGeoParams::fgkEMCALCols;
1070 Int_t irowLoc = irow - AliEMCALGeoParams::fgkEMCALRows*inSector ;
1072 Int_t iabsId = eGeom->GetAbsCellIdFromCellIndexes(inSupMod,irowLoc,icolLoc);
1073 if(!eGeom->CheckAbsCellId(iabsId))
continue;
1076 coneptsumCell += cells->GetCellAmplitude(iabsId);
1090 Float_t & coneptsumTrack, Float_t & coneptLeadTrack)
1096 if(!reftracks) return ;
1098 Float_t ptTrig = aodParticle->Pt();
1101 Float_t pTtrack = 0;
1102 Float_t distToTrigger = 0;
1103 for(Int_t itrack=0; itrack < reftracks->GetEntriesFast(); itrack++)
1105 AliVTrack* track = (AliVTrack *) reftracks->At(itrack);
1107 pTtrack = track->Pt();
1114 ULong_t status = track->GetStatus();
1115 Bool_t okTOF = ( (status & AliVTrack::kTOFout) == AliVTrack::kTOFout ) ;
1117 Int_t trackBC = track->GetTOFBunchCrossing(bz);
1138 coneptsumTrack+=pTtrack;
1139 if(pTtrack > coneptLeadTrack) coneptLeadTrack = pTtrack;
1145 aodParticle->SetChargedLeadPtInCone(coneptLeadTrack);
1146 aodParticle->SetChargedPtSumInCone(coneptsumTrack);
1182 if(energy < 8)
return;
1184 AliESDEvent* esdEv =
dynamic_cast<AliESDEvent*
> (event);
1185 AliAODEvent* aodEv =
dynamic_cast<AliAODEvent*
> (event);
1188 Int_t nVerticesSPD = -1;
1189 Int_t nVerticesTracks = -1;
1193 nVerticesSPD = esdEv->GetNumberOfPileupVerticesSPD();
1194 nVerticesTracks = esdEv->GetNumberOfPileupVerticesTracks();
1199 nVerticesSPD = aodEv->GetNumberOfPileupVerticesSPD();
1200 nVerticesTracks = aodEv->GetNumberOfPileupVerticesTracks();
1210 Float_t z1 = -1, z2 = -1;
1212 for(Int_t iVert=0; iVert<nVerticesSPD;iVert++)
1216 const AliESDVertex* pv=esdEv->GetPileupVertexSPD(iVert);
1217 ncont=pv->GetNContributors();
1218 z1 = esdEv->GetPrimaryVertexSPD()->GetZ();
1220 diamZ = esdEv->GetDiamondZ();
1224 AliAODVertex *pv=aodEv->GetVertex(iVert);
1225 if(pv->GetType()!=AliAODVertex::kPileupSPD)
continue;
1226 ncont=pv->GetNContributors();
1227 z1=aodEv->GetPrimaryVertexSPD()->GetZ();
1229 diamZ = aodEv->GetDiamondZ();
1232 Double_t distZ = TMath::Abs(z2-z1);
1233 diamZ = TMath::Abs(z2-diamZ);
1246 Float_t coneptsum, Float_t coneleadpt,
1251 Int_t clusterID = pCandidate->GetCaloLabel(0) ;
1252 Int_t nMaxima = pCandidate->GetNLM();
1253 Int_t mcTag = pCandidate->GetTag() ;
1254 Bool_t isolated = pCandidate->IsIsolated();
1256 if ( clusterID < 0 )
1258 AliWarning(Form(
"ID of cluster = %d, not possible!", clusterID));
1262 Float_t m02 = pCandidate->GetM02() ;
1263 Float_t
energy = pCandidate->E();
1264 Float_t pt = pCandidate->Pt();
1265 Float_t eta = pCandidate->Eta();
1266 Float_t phi = pCandidate->Phi();
1267 if(phi<0) phi+= TMath::TwoPi();
1286 Int_t decayTag = pCandidate->DecayTag();
1287 if(decayTag < 0) decayTag = 0;
1324 Int_t ptsumBin = -1;
1325 Int_t leadptBin = -1;
1327 AliDebug(1,Form(
"pT cand: %2.2f, In cone pT: Sum %2.2f, Lead %2.2f, n bins %d",pt,coneptsum,coneleadpt,
fNBkgBin));
1329 for(Int_t ibin = 0; ibin <
fNBkgBin; ibin++)
1337 if ( leadptBin >= 0 )
1346 if ( leadptBin == 0 )
1347 AliDebug(1,Form(
"No track/clusters in isolation cone: cand pt %2.2f GeV/c, track multiplicity %d, N clusters %d",
1351 if ( ptsumBin >= 0 )
1363 Int_t decayTag = pCandidate->DecayTag();
1364 if(decayTag < 0) decayTag = 0;
1370 Int_t leadptBinDecay = leadptBin+ibit*
fNBkgBin;
1371 Int_t ptsumBinDecay = ptsumBin+ibit*
fNBkgBin;
1380 Int_t leadptBinMC = leadptBin+mcIndex*
fNBkgBin;
1381 Int_t ptsumBinMC = ptsumBin+mcIndex*
fNBkgBin;
1426 AliFatal(Form(
"Lost decay Bit assigned to bad case, mcIndex %d",mcIndex));
1448 Int_t ptTrigBin = -1;
1457 if ( ptTrigBin >= 0 )
1474 Int_t decayTag = pCandidate->DecayTag();
1475 if(decayTag < 0) decayTag = 0;
1492 Int_t ptTrigBinMC = ptTrigBin+mcIndex*
fNPtTrigBin;
1578 Int_t noverlaps = 0;
1581 const UInt_t nlabels =
fCluster->GetNLabels();
1582 Int_t overpdg[nlabels];
1611 if ( noverlaps == 1 )
1638 else if (noverlaps > 1 )
1699 Float_t dZ =
fCluster->GetTrackDz();
1700 Float_t dR =
fCluster->GetTrackDx();
1724 if(TMath::Abs(dZ) < 0.05 && TMath::Abs(dR) < 0.05)
1730 Float_t dEdx = track->GetTPCsignal();
1733 Float_t eOverp =
fCluster->E()/track->P();
1770 const Int_t buffersize = 255;
1771 char onePar[buffersize] ;
1773 snprintf(onePar, buffersize,
"--- AliAnaParticleIsolation ---:") ;
1777 snprintf(onePar, buffersize,
"Isolation Cand Detector: %s;",
fIsoDetectorString.Data()) ;
1779 snprintf(onePar, buffersize,
"fReMakeIC =%d (Flag for reisolation during histogram filling);",
fReMakeIC) ;
1781 snprintf(onePar, buffersize,
"fMakeSeveralIC=%d (Flag for isolation with several cuts at the same time );",
fMakeSeveralIC) ;
1783 snprintf(onePar, buffersize,
"fFillTMHisto=%d (Flag for track matching histograms);",
fFillTMHisto) ;
1785 snprintf(onePar, buffersize,
"fFillSSHisto=%d (Flag for shower shape histograms);",
fFillSSHisto) ;
1790 snprintf(onePar, buffersize,
"fNCones =%d (Number of cone sizes);",
fNCones) ;
1792 snprintf(onePar, buffersize,
"fNPtThresFrac=%d (Flag for isolation with several cuts at the same time);",
fNPtThresFrac) ;
1795 for(Int_t icone = 0; icone <
fNCones ; icone++)
1797 snprintf(onePar, buffersize,
"fConeSizes[%d]=%1.2f (isolation cone size);",icone,
fConeSizes[icone]) ;
1802 snprintf(onePar, buffersize,
"fPtThresholds[%d]=%1.2f (isolation pt threshold);",ipt,
fPtThresholds[ipt]) ;
1807 snprintf(onePar, buffersize,
"fPtFractions[%d]=%1.2f (isolation pt fraction threshold);",ipt,
fPtFractions[ipt]) ;
1812 snprintf(onePar, buffersize,
"fSumPtThresholds[%d]=%1.2f (isolation sum pt threshold);",ipt,
fSumPtThresholds[ipt]) ;
1823 return new TObjString(parList) ;
1832 TList * outputContainer =
new TList() ;
1833 outputContainer->SetName(
"IsolatedParticleHistos") ;
1879 TString sThreshold =
"";
1882 sThreshold = Form(
", %2.2f < #Sigma #it{p}_{T}^{in cone} < %2.2f GeV/#it{c}",
1885 sThreshold = Form(
", #Sigma #it{p}_{T}^{in cone} = %2.2f GeV/#it{c}",
1890 sThreshold = Form(
", %2.2f < #it{p}_{T}^{th} < %2.2f GeV/#it{c}",
1893 sThreshold = Form(
", #it{p}_{T}^{th} = %2.2f GeV/#it{c}",
1897 sThreshold = Form(
", #Sigma #it{p}_{T}^{in cone}/#it{p}_{T}^{trig} = %2.2f" ,
1900 TString sParticle =
", x^{0,#pm}";
1904 TString parTitle = Form(
"#it{R} = %2.2f%s%s",
GetIsolationCut()->GetConeSize(), sThreshold.Data(),sParticle.Data());
1906 TString pileUpName[] = {
"SPD",
"EMCAL",
"SPDOrEMCAL",
"SPDAndEMCAL",
"SPDAndNotEMCAL",
"EMCALAndNotSPD",
"NotSPDAndNotEMCAL"} ;
1909 TString mcPartType[] = {
"#gamma" ,
"#gamma_{prompt}" ,
"#gamma_{fragmentation}",
1910 "#pi^{0} (merged #gamma)",
"#gamma_{#pi decay}" ,
"#gamma_{#pi decay} lost companion",
1911 "#eta (merged #gamma)" ,
"#gamma_{#eta decay}",
"#gamma_{#eta decay} lost companion",
1912 "#gamma_{other decay}" ,
"e^{#pm}" ,
"hadrons?"} ;
1914 TString mcPartName[] = {
"Photon",
"PhotonPrompt",
"PhotonFrag",
1915 "Pi0" ,
"Pi0Decay" ,
"Pi0DecayLostPair",
1916 "Eta" ,
"EtaDecay" ,
"EtaDecayLostPair",
1917 "OtherDecay",
"Electron",
"Hadron"} ;
1920 TString pptype[] = {
"#gamma" ,
"#gamma_{#pi decay}" ,
"#gamma_{#eta decay}",
"#gamma_{other decay}",
1921 "#gamma_{prompt}",
"#gamma_{fragmentation}",
"#gamma_{ISR}" ,
1922 "#pi^{0}" ,
"#eta"} ;
1924 TString ppname[] = {
"Photon" ,
"PhotonPi0Decay",
"PhotonEtaDecay",
"PhotonOtherDecay",
1925 "PhotonPrompt",
"PhotonFrag" ,
"PhotonISR" ,
1931 Form(
"Number of not isolated leading particles vs #it{p}_{T}, %s",parTitle.Data()),
1932 nptbins,ptmin,ptmax);
1933 fhENoIso->SetYTitle(
"#it{counts}");
1934 fhENoIso->SetXTitle(
"E (GeV/#it{c})");
1938 Form(
"Number of not isolated leading particles vs #it{p}_{T}, %s",parTitle.Data()),
1939 nptbins,ptmin,ptmax);
1941 fhPtNoIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
1945 Form(
"Number of not isolated leading particles #eta vs #phi, %s",parTitle.Data()),
1946 netabins,etamin,etamax,nphibins,phimin,phimax);
1957 fhPtNoIsoMC[imc] =
new TH1F(Form(
"hPtNoIsoMC%s",mcPartName[imc].
Data()),
1958 Form(
"#it{p}_{T} of NOT isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1959 nptbins,ptmin,ptmax);
1961 fhPtNoIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
1964 fhPtIsoMC[imc] =
new TH1F(Form(
"hPtMC%s",mcPartName[imc].
Data()),
1965 Form(
"#it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1966 nptbins,ptmin,ptmax);
1967 fhPtIsoMC[imc]->SetYTitle(
"#it{counts}");
1968 fhPtIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
1971 fhPhiIsoMC[imc] =
new TH2F(Form(
"hPhiMC%s",mcPartName[imc].
Data()),
1972 Form(
"#phi vs #it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1973 nptbins,ptmin,ptmax,nphibins,phimin,phimax);
1975 fhPhiIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
1978 fhEtaIsoMC[imc] =
new TH2F(Form(
"hEtaMC%s",mcPartName[imc].
Data()),
1979 Form(
"#phi vs #it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1980 nptbins,ptmin,ptmax,netabins,etamin,etamax);
1982 fhEtaIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
1990 TString isoName [] = {
"NoIso",
"Iso"};
1991 TString isoTitle[] = {
"Not isolated" ,
"isolated"};
1995 for(Int_t iso = 0; iso < 2; iso++)
1999 new TH1F(Form(
"hPtDecay%s_bit%d",isoName[iso].
Data(),
fDecayBits[ibit]),
2000 Form(
"Number of %s leading pi0 decay particles vs #it{p}_{T}, bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],parTitle.Data()),
2001 nptbins,ptmin,ptmax);
2002 fhPtDecay[iso][ibit]->SetYTitle(
"#it{counts}");
2003 fhPtDecay[iso][ibit]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2004 outputContainer->Add(
fhPtDecay[iso][ibit]) ;
2007 new TH2F(Form(
"hEtaPhiDecay%s_bit%d",isoName[iso].
Data(),
fDecayBits[ibit]),
2008 Form(
"Number of %s leading Pi0 decay particles #eta vs #phi, bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],parTitle.Data()),
2009 netabins,etamin,etamax,nphibins,phimin,phimax);
2017 (Form(
"hPtLambda0Decay%s_bit%d",isoName[iso].
Data(),
fDecayBits[ibit]),
2018 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}, decay bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit], parTitle.Data()),
2019 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
2030 new TH1F(Form(
"hPtDecay%s_bit%d_MC%s",isoName[iso].
Data(),
fDecayBits[ibit],mcPartName[imc].
Data()),
2031 Form(
"#it{p}_{T} of %s, decay bit %d, %s, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],mcPartType[imc].
Data(),parTitle.Data()),
2032 nptbins,ptmin,ptmax);
2033 fhPtDecayMC[iso][ibit][imc]->SetYTitle(
"#it{counts}");
2034 fhPtDecayMC[iso][ibit][imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
2035 outputContainer->Add(
fhPtDecayMC[iso][ibit][imc]) ;
2044 TString isoName [] = {
"NoIso",
"Iso"};
2045 TString isoTitle[] = {
"Not isolated" ,
"isolated"};
2048 Form(
"Number of isolated particles vs E, %s",parTitle.Data()),
2049 nptbins,ptmin,ptmax);
2050 fhEIso->SetYTitle(
"d#it{N} / d#it{E}");
2051 fhEIso->SetXTitle(
"#it{E} (GeV/#it{c})");
2052 outputContainer->Add(
fhEIso) ;
2055 Form(
"Number of isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
2056 nptbins,ptmin,ptmax);
2057 fhPtIso->SetYTitle(
"d#it{N} / #it{p}_{T}");
2058 fhPtIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2059 outputContainer->Add(
fhPtIso) ;
2062 Form(
"Number of isolated particles vs #phi, %s",parTitle.Data()),
2063 nptbins,ptmin,ptmax,nphibins,phimin,phimax);
2065 fhPhiIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2069 Form(
"Number of isolated particles vs #eta, %s",parTitle.Data()),
2070 nptbins,ptmin,ptmax,netabins,etamin,etamax);
2072 fhEtaIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2076 Form(
"Number of isolated particles #eta vs #phi, %s",parTitle.Data()),
2077 netabins,etamin,etamax,nphibins,phimin,phimax);
2085 Form(
"centrality vs #it{p}_{T} for isolated particles, %s",parTitle.Data()),
2086 nptbins,ptmin,ptmax, 100,0,100);
2092 Form(
"event plane angle vs #it{p}_{T} for isolated particles, %s",parTitle.Data()),
2093 nptbins,ptmin,ptmax, 100,0,TMath::Pi());
2102 Form(
"Number of isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
2103 nptbins,ptmin,ptmax,10,0,10);
2108 Form(
"Number of not isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
2109 nptbins,ptmin,ptmax,10,0,10);
2116 Form(
"Track or Cluster leading #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2117 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
2118 fhConePtLead->SetYTitle(
"#it{p}_{T, leading} (GeV/#it{c})");
2119 fhConePtLead->SetXTitle(
"#it{p}_{T, trigger} (GeV/#it{c})");
2123 Form(
"Track and Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2124 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2126 fhConeSumPt->SetXTitle(
"#it{p}_{T, trigger} (GeV/#it{c})");
2130 Form(
"Trigger #eta vs #phi, #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2131 netabins,etamin,etamax,nphibins,phimin,phimax);
2138 Form(
"#it{p}_{T} of clusters and tracks in isolation cone for #it{R} = %2.2f",r),
2139 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2140 fhPtInCone->SetYTitle(
"#it{p}_{T in cone} (GeV/#it{c})");
2141 fhPtInCone->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2172 for(Int_t ibin = 0; ibin <
fNBkgBin; ibin++)
2175 (Form(
"hPtLeadCone_Bin%d",ibin),
2176 Form(
"cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
2183 (Form(
"hSumPtCone_Bin%d",ibin),
2184 Form(
"in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
2192 for(Int_t idecay = 0; idecay <
fNDecayBits; idecay++)
2194 Int_t bindecay = ibin+idecay*
fNBkgBin;
2197 (Form(
"hPtLeadCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2198 Form(
"Decay bit %d, cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
2205 (Form(
"hSumPtCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2206 Form(
"Decay bit %d, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
2220 (Form(
"hPtLeadCone_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2221 Form(
"in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, MC %s, %s",
2228 (Form(
"hSumPtCone_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2229 Form(
"in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, MC %s, %s",
2240 (Form(
"hPtLeadConeLambda0_Bin%d",ibin),
2241 Form(
"#lambda_{0}, in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
2248 (Form(
"hSumPtConeLambda0_Bin%d",ibin),
2249 Form(
"#lambda_{0}, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
2261 (Form(
"hPtLeadConeLambda0_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2262 Form(
"#lambda_{0}, in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, MC %s, %s",
2269 (Form(
"hSumPtConeLambda0_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2270 Form(
"#lambda_{0}, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, MC %s, %s",
2310 (Form(
"hPtTrigBin_PtLeadCone_Bin%d",ibin),
2311 Form(
"#it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
2318 (Form(
"hPtTrigBin_SumPtCone_Bin%d",ibin),
2319 Form(
"#Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
2327 for(Int_t idecay = 0; idecay <
fNDecayBits; idecay++)
2332 (Form(
"hPtTrigBin_PtLeadCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2333 Form(
"Decay bit %d, #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
2340 (Form(
"hPtTrigBin_SumPtCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2341 Form(
"Decay bit %d, #Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
2355 (Form(
"hPtTrigBin_PtLeadCone_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2356 Form(
"#it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, MC %s, %s",
2363 (Form(
"hPtTrigBin_SumPtCone_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2364 Form(
"#Sigma #it{p}_{T}^{in cone}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
2375 (Form(
"hPtTrigBin_PtLeadConeVSLambda0_Bin%d",ibin),
2376 Form(
"#lambda_{0} vs #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
2383 (Form(
"hPtTrigBin_SumPtConeVSLambda0_Bin%d",ibin),
2384 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
2396 (Form(
"hPtTrigBin_PtLeadConeVSLambda0_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2397 Form(
"#lambda_{0} vs #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, MC %s, %s",
2404 (Form(
"hPtTrigBin_SumPtConeVSLambda0_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2405 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
2419 Form(
"#it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2420 100,0,100,nptinconebins,ptinconemin,ptinconemax);
2430 Form(
"Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2431 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2437 Form(
"Cluster leading in isolation cone for #it{R} = %2.2f",r),
2438 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
2447 Form(
"Cell #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2448 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2457 "#Sigma cluster #it{p}_{T} in UE Eta Band",
2458 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2464 "#Sigma cluster #it{p}_{T} UE Phi Band",
2465 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2471 "Trigger #eta vs #phi, #Sigma cluster #it{p}_{T} in UE Eta Band",
2472 netabins,etamin,etamax,nphibins,phimin,phimax);
2479 "Trigger #eta vs #phi, #Sigma cluster #it{p}_{T} UE Phi Band",
2480 netabins,etamin,etamax,nphibins,phimin,phimax);
2489 "#Sigma cell #it{p}_{T} in UE Eta Band",
2490 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2496 "#Sigma cell #it{p}_{T} UE Phi Band",
2497 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2503 "Trigger #eta vs #phi, #Sigma cell #it{p}_{T} in UE Eta Band",
2504 netabins,etamin,etamax,nphibins,phimin,phimax);
2511 "Trigger #eta vs #phi, #Sigma cell #it{p}_{T} UE Phi Band",
2512 netabins,etamin,etamax,nphibins,phimin,phimax);
2520 Form(
"#eta vs #phi of clusters in #eta band isolation cone for #it{R} = %2.2f",r),
2521 netabins,-1,1,nphibins,0,TMath::TwoPi());
2527 Form(
"#eta vs #phi of clusters in #phi band isolation cone for #it{R} = %2.2f",r),
2528 netabins,-1,1,nphibins,0,TMath::TwoPi());
2534 Form(
"#eta vs #phi of clusters in cone for #it{R} = %2.2f",r),
2535 netabins,-1,1,nphibins,0,TMath::TwoPi());
2541 Form(
"#eta vs #phi of all clusters"),
2542 netabins,-1,1,nphibins,0,TMath::TwoPi());
2550 Form(
"#it{p}_{T} of clusters in isolation cone for #it{R} = %2.2f",r),
2551 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2559 Form(
"#it{p}_{T} of cells in isolation cone for #it{R} = %2.2f",r),
2560 nptbins,ptmin,ptmax,1000,0,50);
2566 Form(
"#col vs #row of cells in #eta band isolation cone for #it{R} = %2.2f",r),
2573 Form(
"#col vs #row of cells in #phi band isolation cone for #it{R} = %2.2f",r),
2583 Form(
"Clusters #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2584 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2590 Form(
"Clusters #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2591 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2597 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),
2598 netabins,etamin,etamax,nphibins,phimin,phimax);
2605 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),
2606 netabins,etamin,etamax,nphibins,phimin,phimax);
2615 Form(
"Cells #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2616 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2622 Form(
"Cells #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2623 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2629 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),
2630 netabins,etamin,etamax,nphibins,phimin,phimax);
2637 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),
2638 netabins,etamin,etamax,nphibins,phimin,phimax);
2646 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #eta acceptance",r),
2647 nptbins,ptmin,ptmax,100,0,1);
2653 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #eta acceptance, in trigger #eta-#phi ",r),
2654 netabins,etamin,etamax,nphibins,phimin,phimax);
2661 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #phi acceptance",r),
2662 nptbins,ptmin,ptmax,100,0,1);
2668 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #phi acceptance, in trigger #eta-#phi ",r),
2669 netabins,etamin,etamax,nphibins,phimin,phimax);
2676 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),
2677 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2683 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),
2684 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2690 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),
2691 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2697 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),
2698 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2704 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in eta band for cluster (before normalization), R=%2.2f",r),
2705 nptsumbins,ptsummin,ptsummax,2*nptsumbins,ptsummin,2*ptsummax);
2711 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in phi band for cluster (before normalization), R=%2.2f",r),
2712 nptsumbins,ptsummin,ptsummax,8*nptsumbins,ptsummin,8*ptsummax);
2720 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #eta acceptance",r),
2721 nptbins,ptmin,ptmax,100,0,1);
2727 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #eta acceptance, in trigger #eta-#phi ",r),
2728 netabins,etamin,etamax,nphibins,phimin,phimax);
2735 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #phi acceptance",r),
2736 nptbins,ptmin,ptmax,100,0,1);
2742 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #phi acceptance, in trigger #eta-#phi ",r),
2743 netabins,etamin,etamax,nphibins,phimin,phimax);
2751 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),
2752 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2758 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),
2759 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2765 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),
2766 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2772 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),
2773 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2785 Form(
"Track #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2786 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2792 Form(
"Track leading in isolation cone for #it{R} = %2.2f",r),
2793 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
2799 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f",r),
2800 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2809 "#Sigma track #it{p}_{T} in UE Eta Band",
2810 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2816 "#Sigma track #it{p}_{T} in UE Phi Band",
2817 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax*8);
2824 "Trigger #eta vs #phi, #Sigma track #it{p}_{T} in UE Eta Band",
2825 netabins,etamin,etamax,nphibins,phimin,phimax);
2832 "Trigger #eta vs #phi, #Sigma track #it{p}_{T} in UE Phi Band",
2833 netabins,etamin,etamax,nphibins,phimin,phimax);
2840 Form(
"#eta vs #phi of tracks in #eta band isolation cone for #it{R} = %2.2f",r),
2841 netabins,-1,1,nphibins,0,TMath::TwoPi());
2847 Form(
"#eta vs #phi of tracks in #phi band isolation cone for #it{R} = %2.2f",r),
2848 netabins,-1,1,nphibins,0,TMath::TwoPi());
2854 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2855 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2861 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2862 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2868 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),
2869 netabins,etamin,etamax,nphibins,phimin,phimax);
2876 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),
2877 netabins,etamin,etamax,nphibins,phimin,phimax);
2884 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of tracks #eta acceptance",r),
2885 nptbins,ptmin,ptmax,100,0,1);
2891 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of tracks #eta acceptance, in trigger #eta-#phi ",r),
2892 netabins,etamin,etamax,nphibins,phimin,phimax);
2899 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),
2900 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2906 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),
2907 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2913 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),
2914 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2920 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),
2921 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2929 Form(
"#Sigma #it{p}_{T} in isolation cone at #pm 45 degree phi from trigger particle, #it{R} = %2.2f",r),
2930 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2936 Form(
"#it{p}_{T} in isolation cone at #pm 45 degree phi from trigger particle, #it{R} = %2.2f",r),
2937 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2943 Form(
"#eta vs #phi of all Tracks"),
2944 netabins,-1,1,nphibins,0,TMath::TwoPi());
2950 Form(
"#eta vs #phi of Tracks in cone for #it{R} = %2.2f",r),
2951 netabins,-1,1,nphibins,0,TMath::TwoPi());
2957 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in eta band for tracks (before normalization), R=%2.2f",r),
2958 nptsumbins,ptsummin,ptsummax,2*nptsumbins,ptsummin,2*ptsummax);
2964 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in phi band for tracks (before normalization), R=%2.2f",r),
2965 nptsumbins,ptsummin,ptsummax,8*nptsumbins,ptsummin,8*ptsummax);
2975 Form(
"Track vs Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2976 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
2982 Form(
"#Sigma #it{p}_{T}^{cluster}/#Sigma #it{p}_{T}^{track} in isolation cone for #it{R} = %2.2f",r),
2983 nptbins,ptmin,ptmax,200,0,5);
2990 Form(
"Track vs Cluster lead #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2991 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
2997 Form(
" #it{p}^{leading cluster}_{T}/#it{p}^{leading track}_{T} in isolation cone for #it{R} = %2.2f",r),
2998 nptbins,ptmin,ptmax,200,0,5);
3007 Form(
"Track vs cell #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
3008 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3014 Form(
"Track and Cell #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
3015 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3021 Form(
"Trigger #eta vs #phi, #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
3022 netabins,etamin,etamax,nphibins,phimin,phimax);
3032 Form(
"#Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
3033 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3039 Form(
"#Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
3040 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3046 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),
3047 netabins,etamin,etamax,nphibins,phimin,phimax);
3054 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),
3055 netabins,etamin,etamax,nphibins,phimin,phimax);
3062 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub eta band in isolation cone for #it{R} = %2.2f",r),
3063 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3069 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub phi band in isolation cone for #it{R} = %2.2f",r),
3070 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3076 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3077 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3083 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3084 nptsumbins,ptsummin,ptsummax*4,nptsumbins,ptsummin,ptsummax*8);
3090 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3091 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3097 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3098 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3104 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub eta band in isolation cone for #it{R} = %2.2f",r),
3105 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3111 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub phi band in isolation cone for #it{R} = %2.2f",r),
3112 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3121 Form(
"Track vs Cell #Sigma #it{p}_{T} UE sub eta band in isolation cone for #it{R} = %2.2f",r),
3122 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3128 Form(
"Track vs Cell #Sigma #it{p}_{T} UE sub phi band in isolation cone for #it{R} = %2.2f",r),
3129 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3135 Form(
"Track vs Cell #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3136 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3142 Form(
"Track vs Cell #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3143 nptsumbins,ptsummin,ptsummax*4,nptsumbins,ptsummin,ptsummax*8);
3149 Form(
"Track vs Cell #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3150 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3156 Form(
"Track vs Cell #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3157 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3163 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
3164 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3170 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
3171 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3177 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),
3178 netabins,etamin,etamax,nphibins,phimin,phimax);
3185 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),
3186 netabins,etamin,etamax,nphibins,phimin,phimax);
3195 TString region[] = {
"ITS",
"TPC",
"TRD",
"TOF",
"Top EMCal",
"In EMCal"};
3197 for(Int_t iso = 0; iso < 2; iso++)
3202 (Form(
"hTrackMatchedDEta%s",isoName[iso].
Data()),
3203 Form(
"%s - d#eta of cluster-track vs cluster energy, %s",isoTitle[iso].
Data(),parTitle.Data()),
3204 nptbins,ptmin,ptmax,nresetabins,resetamin,resetamax);
3209 (Form(
"hTrackMatchedDPhi%s",isoName[iso].
Data()),
3210 Form(
"%s - d#phi of cluster-track vs cluster energy, %s",isoTitle[iso].
Data(),parTitle.Data()),
3211 nptbins,ptmin,ptmax,nresphibins,resphimin,resphimax);
3216 (Form(
"hTrackMatchedDEtaDPhi%s",isoName[iso].
Data()),
3217 Form(
"%s - d#eta vs d#phi of cluster-track, %s",isoTitle[iso].
Data(),parTitle.Data()),
3218 nresetabins,resetamin,resetamax,nresphibins,resphimin,resphimax);
3231 Form(
"%s - d#eta of cluster-track vs cluster energy, %s",isoTitle[iso].
Data(),parTitle.Data()),
3232 nptbins,ptmin,ptmax,nresetabins,resetamin,resetamax);
3237 Form(
"%s - d#phi of cluster-track vs cluster energy, %s",isoTitle[iso].
Data(),parTitle.Data()),
3238 nptbins,ptmin,ptmax,nresetabins,resphimin,resphimax);
3243 (Form(
"hTrackMatchedDEtaDPhi%s_MC%s",isoName[iso].
Data(),mcPartName[imc].
Data()),
3244 Form(
"%s - d#eta vs d#phi of cluster-track, %s",isoTitle[iso].
Data(),parTitle.Data()),
3245 nresetabins,resetamin,resetamax,nresphibins,resphimin,resphimax);
3257 (Form(
"hdEdx%s",isoName[iso].
Data()),
3258 Form(
"%s - Matched track <d#it{E}/d#it{x}> vs cluster #it{E}, %s",isoTitle[iso].
Data(),parTitle.Data()),
3259 nptbins,ptmin,ptmax,ndedxbins, dedxmin, dedxmax);
3260 fhdEdx[iso]->SetXTitle(
"#it{E} (GeV)");
3261 fhdEdx[iso]->SetYTitle(
"<d#it{E}/d#it{x}>");
3262 outputContainer->Add(
fhdEdx[iso]);
3265 (Form(
"hEOverP%s",isoName[iso].
Data()),
3266 Form(
"%s - Matched track #it{E}/#it{p} vs cluster, %s",isoTitle[iso].
Data(),parTitle.Data()),
3267 nptbins,ptmin,ptmax,nPoverEbins,pOverEmin,pOverEmax);
3268 fhEOverP[iso]->SetXTitle(
"#it{E} (GeV)");
3269 fhEOverP[iso]->SetYTitle(
"#it{E}/#it{p}");
3270 outputContainer->Add(
fhEOverP[iso]);
3275 (Form(
"hTrackMatchedMCParticle%s",isoName[iso].
Data()),
3276 Form(
"%s - Origin of particle vs cluster #it{E}, %s",isoTitle[iso].
Data(),parTitle.Data()),
3277 nptbins,ptmin,ptmax,8,0,8);
3297 (Form(
"hELambda0%s",isoName[iso].
Data()),
3298 Form(
"%s cluster : #it{E} vs #lambda_{0}, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3299 fhELambda0[iso]->SetYTitle(
"#lambda_{0}^{2}");
3311 (Form(
"hPtLambda0%s",isoName[iso].
Data()),
3312 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}, %s",isoTitle[iso].
Data(), parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3314 fhPtLambda0[iso]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3321 fhPtLambda0MC[imc][iso] =
new TH2F(Form(
"hPtLambda0%s_MC%s",isoName[iso].
Data(),mcPartName[imc].
Data()),
3322 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3323 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3325 fhPtLambda0MC[imc][iso]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
3329 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3330 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3338 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3339 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3345 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3346 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3352 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3353 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3359 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3360 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3366 fhPtNOverlap[imc][iso] =
new TH2F(Form(
"hPtNOverlaps%s_MC%s_1Overlap",isoName[iso].
Data(),mcPartName[imc].
Data()),
3367 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3368 nptbins,ptmin,ptmax,10,0,10);
3370 fhPtNOverlap[imc][iso]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
3373 fhPtNOverlapConv[imc][iso] =
new TH2F(Form(
"hPtNOverlaps%s_MC%sConv_1Overlap",isoName[iso].
Data(),mcPartName[imc].
Data()),
3374 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3375 nptbins,ptmin,ptmax,10,0,10);
3387 (Form(
"hPtLambda0TRD%s",isoName[iso].
Data()),
3388 Form(
"%s cluster: #it{p}_{T} vs #lambda_{0}, SM behind TRD, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3394 (Form(
"hELambda0TRD%s",isoName[iso].
Data()),
3395 Form(
"%s cluster: #it{E} vs #lambda_{0}, SM behind TRD, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3411 (Form(
"hNLocMax%s",isoName[iso].
Data()),
3412 Form(
"%s - Number of local maxima in cluster, %s",isoTitle[iso].
Data(),parTitle.Data()),
3413 nptbins,ptmin,ptmax,10,0,10);
3415 fhNLocMax[iso]->SetXTitle(
"#it{E} (GeV)");
3419 (Form(
"hELambda0LocMax1%s",isoName[iso].
Data()),
3420 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);
3426 (Form(
"hELambda1LocMax1%s",isoName[iso].
Data()),
3427 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);
3433 (Form(
"hELambda0LocMax2%s",isoName[iso].
Data()),
3434 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);
3440 (Form(
"hELambda1LocMax2%s",isoName[iso].
Data()),
3441 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);
3447 ( Form(
"hELambda0LocMaxN%s",isoName[iso].
Data()),
3448 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);
3454 (Form(
"hELambda1LocMaxN%s",isoName[iso].
Data()),
3455 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);
3465 for(Int_t ieta = 0; ieta < 4; ieta++)
3467 for(Int_t iphi = 0; iphi < 3; iphi++)
3493 new TH2F(Form(
"hLam0_%s_eta%d_phi%d_sm%d",isoName[iso].
Data(),ieta,iphi,ism),
3494 Form(
"%s, cluster from converted photon, #it{p}_{T} vs #lambda_{0}^{2}, sm %d, region eta %d, phi %d",
3495 isoTitle[iso].
Data(),ism,ieta,iphi),
3496 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3504 Float_t ptLimit[] = {2,3,4,5,6,8,10,12};
3505 for(Int_t ipt = 0; ipt < 7; ipt++)
3508 (Form(
"hEtaPhiLam0BinPtBin%d%s",ipt,isoName[iso].
Data()),
3509 Form(
"%s, #eta vs #phi in #it{p}_{T}=[%2.1f,%2.1f] GeV/#it{c} and #lambda^{2}_{0}=[0.3,0.4]",
3510 isoTitle[iso].
Data(),ptLimit[ipt],ptLimit[ipt+1]),
3511 netabins,etamin,etamax,nphibins,phimin,phimax);
3521 Form(
"%s, cluster from converted photon, #it{p}_{T} vs vertex distance, %s",
3522 isoTitle[iso].
Data(),parTitle.Data()),
3523 nptbins,ptmin,ptmax,500,0,500);
3531 Form(
"%s, cluster from converted photon, #it{p}_{T} vs vertex distance, %s, SM covered by TRD",
3532 isoTitle[iso].
Data(),parTitle.Data()),
3533 nptbins,ptmin,ptmax,500,0,500);
3541 for(Int_t iR = 0; iR < 6; iR++)
3544 Form(
"%s, cluster from converted photon, #it{p}_{T} vs #lambda_{0}^{2}, conversion in %s",
3545 isoTitle[iso].
Data(),region[iR].
Data()),
3546 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3554 Form(
"%s, cluster from converted photon, #it{p}_{T} vs #lambda_{0}^{2}, conversion in %s, SM covered by TRD",
3555 isoTitle[iso].
Data(),region[iR].
Data()),
3556 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3606 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC!=0",r),
3607 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3613 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC!=0, pile-up from SPD",r),
3614 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3620 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC==0",r),
3621 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3627 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC==0",r),
3628 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3635 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC==0, pile-up from SPD",r),
3636 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3642 for (Int_t i = 0; i < 7 ; i++)
3645 Form(
"#it{p}_{T} in isolation cone for #it{R} = %2.2f, from pile-up (%s)",r,pileUpName[i].
Data()),
3646 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3659 fhEPrimMC[i] =
new TH1F(Form(
"hEPrim_MC%s",ppname[i].
Data()),
3660 Form(
"primary photon %s : #it{E}, %s",pptype[i].
Data(),parTitle.Data()),
3661 nptbins,ptmin,ptmax);
3662 fhEPrimMC[i]->SetXTitle(
"#it{E} (GeV)");
3666 Form(
"primary photon %s : #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3667 nptbins,ptmin,ptmax);
3668 fhPtPrimMC[i]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3672 Form(
"primary isolated photon %s : #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3673 nptbins,ptmin,ptmax);
3678 Form(
"primary photon %s : #eta vs #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3679 nptbins,ptmin,ptmax,200,-2,2);
3681 fhEtaPrimMC[i]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3685 Form(
"primary photon %s : #phi vs #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3686 nptbins,ptmin,ptmax,200,0.,TMath::TwoPi());
3688 fhPhiPrimMC[i]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3695 Form(
"primary photon %s : #it{p}_{T}, pair in cone, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3696 nptbins,ptmin,ptmax);
3701 Form(
"isolated primary photon %s, pair in cone : #it{p}_{T}, %s",
3703 nptbins,ptmin,ptmax);
3708 Form(
"primary photon %s, no overlap, pair in cone : #it{p}_{T}, %s",
3710 nptbins,ptmin,ptmax);
3715 Form(
"isolated primary photon %s, pair in cone,no overlap : #it{p}_{T}, %s",
3717 nptbins,ptmin,ptmax);
3722 Form(
"primary photon %s, no overlap, pair in cone, E > calo min: #it{p}_{T}, %s",
3724 nptbins,ptmin,ptmax);
3729 Form(
"isolated primary photon %s, pair in cone,no overlap, E > calo min: #it{p}_{T}, %s",
3731 nptbins,ptmin,ptmax);
3737 Form(
"primary photon %s, no overlap: #it{p}_{T}, %s",
3739 nptbins,ptmin,ptmax);
3744 Form(
"isolated primary photon %s, no overlap: #it{p}_{T}, %s",
3746 nptbins,ptmin,ptmax);
3751 Form(
"primary photon %s : #it{p}_{T}, pair out of cone, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3752 nptbins,ptmin,ptmax);
3757 Form(
"isolated primary photon %s, pair out of cone : #it{p}_{T}, %s",
3759 nptbins,ptmin,ptmax);
3764 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3765 nptbins,ptmin,ptmax);
3770 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, no overlap, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3771 nptbins,ptmin,ptmax);
3776 Form(
"isolated primary photon %s, pair out of acceptance : #it{p}_{T}, %s",
3778 nptbins,ptmin,ptmax);
3783 Form(
"isolated primary photon %s, pair out of acceptance, no overlap : #it{p}_{T}, %s",
3785 nptbins,ptmin,ptmax);
3790 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3792 nptbins,ptmin,ptmax);
3797 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3799 nptbins,ptmin,ptmax);
3811 Form(
"primary photon %s : #it{p}_{T}, pair in cone, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3812 nptbins,ptmin,ptmax);
3817 Form(
"isolated primary photon %s, pair in cone : #it{p}_{T}, %s",
3819 nptbins,ptmin,ptmax);
3824 Form(
"primary photon %s, no overlap, pair in cone : #it{p}_{T}, %s",
3826 nptbins,ptmin,ptmax);
3831 Form(
"isolated primary photon %s, pair in cone,no overlap : #it{p}_{T}, %s",
3833 nptbins,ptmin,ptmax);
3838 Form(
"primary photon %s, no overlap, pair in cone, E > calo min: #it{p}_{T}, %s",
3840 nptbins,ptmin,ptmax);
3845 Form(
"isolated primary photon %s, pair in cone,no overlap, E > calo min: #it{p}_{T}, %s",
3847 nptbins,ptmin,ptmax);
3853 Form(
"primary photon %s, no overlap: #it{p}_{T}, %s",
3855 nptbins,ptmin,ptmax);
3860 Form(
"isolated primary photon %s, no overlap: #it{p}_{T}, %s",
3862 nptbins,ptmin,ptmax);
3867 Form(
"primary photon %s : #it{p}_{T}, pair out of cone, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3868 nptbins,ptmin,ptmax);
3873 Form(
"isolated primary photon %s, pair out of cone : #it{p}_{T}, %s",
3875 nptbins,ptmin,ptmax);
3880 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3881 nptbins,ptmin,ptmax);
3886 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, no overlap, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3887 nptbins,ptmin,ptmax);
3892 Form(
"isolated primary photon %s, pair out of acceptance : #it{p}_{T}, %s",
3894 nptbins,ptmin,ptmax);
3899 Form(
"isolated primary photon %s, pair out of acceptance, no overlap : #it{p}_{T}, %s",
3901 nptbins,ptmin,ptmax);
3906 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3908 nptbins,ptmin,ptmax);
3913 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3915 nptbins,ptmin,ptmax);
3927 const Int_t buffersize = 255;
3928 char name[buffersize];
3929 char title[buffersize];
3930 for(Int_t icone = 0; icone<
fNCones; icone++)
3933 snprintf(name, buffersize,
"hSumPtLeadingPt_Cone_%d",icone);
3934 snprintf(title, buffersize,
"#Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3935 fhSumPtLeadingPt[icone] =
new TH2F(name, title,nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3941 snprintf(name, buffersize,
"hPtLeadingPt_Cone_%d",icone);
3942 snprintf(title, buffersize,
"#it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3943 fhPtLeadingPt[icone] =
new TH2F(name, title, nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3944 fhPtLeadingPt[icone] ->SetYTitle(
"#it{p}_{T}^{cone} (GeV/#it{c})");
3945 fhPtLeadingPt[icone] ->SetXTitle(
"#it{p}_{T}^{leading} (GeV/#it{c})");
3949 snprintf(name, buffersize,
"hPerpSumPtLeadingPt_Cone_%d",icone);
3950 snprintf(title, buffersize,
"#Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3951 fhPerpSumPtLeadingPt[icone] =
new TH2F(name, title,nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3957 snprintf(name, buffersize,
"hPerpPtLeadingPt_Cone_%d",icone);
3958 snprintf(title, buffersize,
"#it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3959 fhPerpPtLeadingPt[icone] =
new TH2F(name, title, nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3968 snprintf(name , buffersize,
"hSumPtLeadingPt_MC%s_Cone_%d",mcPartName[imc].
Data(),icone);
3969 snprintf(title, buffersize,
"Candidate %s #it{p}_{T} vs cone #Sigma #it{p}_{T} for #it{R}=%2.2f",mcPartType[imc].
Data(),
fConeSizes[icone]);
3970 fhSumPtLeadingPtMC[imc][icone] =
new TH2F(name, title,nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3979 snprintf(name, buffersize,
"hPtThres_Cone_%d_Pt%d",icone,ipt);
3980 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]);
3985 snprintf(name, buffersize,
"hPtFrac_Cone_%d_Pt%d",icone,ipt);
3986 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]);
3991 snprintf(name, buffersize,
"hSumPt_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}^{sum} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fSumPtThresholds[ipt]);
3993 fhSumPtIsolated[icone][ipt] =
new TH1F(name, title,nptbins,ptmin,ptmax);
3998 snprintf(name, buffersize,
"hPtSumDensity_Cone_%d_Pt%d",icone,ipt);
3999 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]);
4005 snprintf(name, buffersize,
"hPtFracPtSum_Cone_%d_Pt%d",icone,ipt);
4006 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]);
4013 snprintf(name, buffersize,
"hEtaPhiPtThres_Cone_%d_Pt%d",icone,ipt);
4014 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]);
4015 fhEtaPhiPtThresIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4020 snprintf(name, buffersize,
"hEtaPhiPtFrac_Cone_%d_Pt%d",icone,ipt);
4021 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]);
4022 fhEtaPhiPtFracIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4027 snprintf(name, buffersize,
"hEtaPhiPtSum_Cone_%d_Pt%d",icone,ipt);
4028 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]);
4029 fhEtaPhiPtSumIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4034 snprintf(name, buffersize,
"hEtaPhiSumDensity_Cone_%d_Pt%d",icone,ipt);
4035 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]);
4036 fhEtaPhiSumDensityIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4041 snprintf(name, buffersize,
"hEtaPhiFracPtSum_Cone_%d_Pt%d",icone,ipt);
4042 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]);
4043 fhEtaPhiFracPtSumIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4051 snprintf(name, buffersize,
"hPtThres_Decay_Cone_%d_Pt%d",icone,ipt);
4052 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]);
4057 snprintf(name, buffersize,
"hPtFrac_Decay_Cone_%d_Pt%d",icone,ipt);
4058 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]);
4063 snprintf(name, buffersize,
"hPtSum_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}^{sum} = %2.2f GeV/#it{c}",
fConeSizes[icone],
fSumPtThresholds[ipt]);
4070 snprintf(name, buffersize,
"hPtSumDensity_Decay_Cone_%d_Pt%d",icone,ipt);
4071 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]);
4077 snprintf(name, buffersize,
"hPtFracPtSum_Decay_Cone_%d_Pt%d",icone,ipt);
4078 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]);
4085 snprintf(name, buffersize,
"hEtaPhiPtThres_Decay_Cone_%d_Pt%d",icone,ipt);
4086 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]);
4092 snprintf(name, buffersize,
"hEtaPhiPtFrac_Decay_Cone_%d_Pt%d",icone,ipt);
4093 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]);
4094 fhEtaPhiPtFracDecayIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4100 snprintf(name, buffersize,
"hEtaPhiPtSum_Decay_Cone_%d_Pt%d",icone,ipt);
4101 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]);
4102 fhEtaPhiPtSumDecayIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4107 snprintf(name, buffersize,
"hEtaPhiSumDensity_Decay_Cone_%d_Pt%d",icone,ipt);
4108 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]);
4114 snprintf(name, buffersize,
"hEtaPhiFracPtSum_Decay_Cone_%d_Pt%d",icone,ipt);
4115 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]);
4127 snprintf(name , buffersize,
"hPtThreshMC%s_Cone_%d_Pt%d",mcPartName[imc].
Data(),icone,ipt);
4128 snprintf(title, buffersize,
"Isolated %s #it{p}_{T} for #it{R}=%2.2f and #it{p}_{T}^{th}=%2.2f",
4136 snprintf(name , buffersize,
"hPtFracMC%s_Cone_%d_Pt%d",mcPartName[imc].
Data(),icone,ipt);
4137 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",
4144 snprintf(name , buffersize,
"hSumPtMC%s_Cone_%d_Pt%d",mcPartName[imc].
Data(),icone,ipt);
4145 snprintf(title, buffersize,
"Isolated %s #it{p}_{T} for #it{R}=%2.2f and #Sigma #it{p}_{T}^{in cone}=%2.2f",
4159 for (Int_t i = 0; i < 7 ; i++)
4162 Form(
"Number of isolated particles vs E, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4163 nptbins,ptmin,ptmax);
4169 Form(
"Number of isolated particles vs #it{p}_{T}, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4170 nptbins,ptmin,ptmax);
4176 Form(
"Number of not isolated particles vs E, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4177 nptbins,ptmin,ptmax);
4183 Form(
"Number of not isolated particles vs #it{p}_{T}, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4184 nptbins,ptmin,ptmax);
4190 fhTimeENoCut =
new TH2F (
"hTimeE_NoCut",
"time of cluster vs E of clusters, no cut", nptbins,ptmin,ptmax, ntimebins,timemin,timemax);
4195 fhTimeESPD =
new TH2F (
"hTimeE_SPD",
"time of cluster vs E of clusters, SPD cut", nptbins,ptmin,ptmax, ntimebins,timemin,timemax);
4200 fhTimeESPDMulti =
new TH2F (
"hTimeE_SPDMulti",
"time of cluster vs E of clusters, SPD multi cut", nptbins,ptmin,ptmax, ntimebins,timemin,timemax);
4205 fhTimeNPileUpVertSPD =
new TH2F (
"hTime_NPileUpVertSPD",
"time of cluster vs N pile-up SPD vertex", ntimebins,timemin,timemax,50,0,50);
4210 fhTimeNPileUpVertTrack =
new TH2F (
"hTime_NPileUpVertTracks",
"time of cluster vs N pile-up Tracks vertex", ntimebins,timemin,timemax, 50,0,50 );
4215 fhTimeNPileUpVertContributors =
new TH2F (
"hTime_NPileUpVertContributors",
"time of cluster vs N constributors to pile-up SPD vertex", ntimebins,timemin,timemax,50,0,50);
4220 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);
4225 fhTimePileUpMainVertexZDiamond =
new TH2F (
"hTime_PileUpMainVertexZDiamond",
"time of cluster vs distance in Z pile-up SPD vertex - z diamond",ntimebins,timemin,timemax,100,0,50);
4231 return outputContainer ;
4291 AliInfo(
"Open default isolation cuts for multiple Isolation analysis");
4298 AliFatal(
"STOP!: You want to use CTS tracks in analysis but not read!! \n!!Check the configuration file!!");
4361 Double_t phiTrig = 0 ;
4363 AliAODPWG4ParticleCorrelation* pLeading = 0;
4369 AliAODPWG4ParticleCorrelation* particle = (AliAODPWG4ParticleCorrelation*) (
GetInputAODBranch()->At(iaod));
4370 particle->SetLeadingParticle(kFALSE);
4376 if(check == 0)
continue;
4377 if(check == -1)
return kFALSE;
4389 if (particle->Pt() > ptTrig)
4391 ptTrig = particle->Pt() ;
4392 phiTrig = particle->Phi();
4394 pLeading = particle ;
4398 if(index < 0)
return kFALSE;
4404 if(phiTrig < 0 ) phiTrig += TMath::TwoPi();
4408 for(Int_t ipr = 0;ipr <
GetCTSTracks()->GetEntriesFast() ; ipr ++ )
4410 AliVTrack * track = (AliVTrack *) (
GetCTSTracks()->At(ipr)) ;
4418 Bool_t contained = kFALSE;
4420 for(Int_t i = 0; i < 4; i++)
4422 if( trackID == pLeading->GetTrackLabel(i) ) contained = kTRUE;
4425 if ( contained ) continue ;
4428 fTrackVector.SetXYZ(track->Px(),track->Py(),track->Pz());
4431 if(phi < 0) phi+=TMath::TwoPi();
4435 Float_t deltaPhi = phiTrig-phi;
4441 if(deltaPhi <= -TMath::PiOver2()) deltaPhi+=TMath::TwoPi();
4442 if(deltaPhi > 3*TMath::PiOver2()) deltaPhi-=TMath::TwoPi();
4444 if(pt > ptTrig && deltaPhi < TMath::PiOver2())
return kFALSE;
4453 TObjArray * nePl = 0x0;
4454 if (pLeading->GetDetectorTag() ==
kPHOS )
4459 if(!nePl)
return kTRUE;
4461 for(Int_t ipr = 0;ipr < nePl->GetEntriesFast() ; ipr ++ )
4463 AliVCluster * cluster = (AliVCluster *) (nePl->At(ipr)) ;
4465 if(cluster->GetID() == pLeading->GetCaloLabel(0) || cluster->GetID() == pLeading->GetCaloLabel(1) )
continue ;
4471 if(phi < 0) phi+=TMath::TwoPi();
4478 Float_t deltaPhi = phiTrig-phi;
4479 if(deltaPhi <= -TMath::PiOver2()) deltaPhi+=TMath::TwoPi();
4480 if(deltaPhi > 3*TMath::PiOver2()) deltaPhi-=TMath::TwoPi();
4482 if(pt > ptTrig && deltaPhi < TMath::PiOver2())
return kFALSE ;
4488 pLeading->SetLeadingParticle(kTRUE);
4490 AliDebug(1,Form(
"Particle AOD with index %d is leading with pT %2.2f",idLeading, pLeading->Pt()));
4503 AliFatal(Form(
"No input particles in AOD with name branch < %s >, STOP",
GetInputAODName().
Data()));
4505 if(strcmp(
GetInputAODBranch()->GetClass()->GetName(),
"AliAODPWG4ParticleCorrelation"))
4506 AliFatal(Form(
"Wrong type of AOD object, change AOD class name in input AOD: It should be <AliAODPWG4ParticleCorrelation> and not <%s>",
4509 Int_t n = 0, nfrac = 0;
4510 Bool_t isolated = kFALSE ;
4511 Float_t coneptsum = 0, coneptlead = 0;
4512 TObjArray * pl = 0x0; ;
4521 Int_t idLeading = -1 ;
4525 AliDebug(1,Form(
"Input aod branch entries %d", naod));
4532 AliDebug(1,
"Not leading; End fill AODs");
4541 for(Int_t iaod = iaod0; iaod < naod; iaod++)
4543 AliAODPWG4ParticleCorrelation * aodinput = (AliAODPWG4ParticleCorrelation*) (
GetInputAODBranch()->At(iaod));
4550 if(! in ) continue ;
4554 Float_t pt = aodinput->Pt();
4566 n=0; nfrac = 0; isolated = kFALSE; coneptsum = 0; coneptlead = 0;
4570 n,nfrac,coneptsum,coneptlead,isolated);
4574 AliDebug(1,Form(
"Particle isolated? %i; if so with index %d",isolated,iaod));
4590 AliDebug(1,Form(
"Histo aod branch entries %d", naod));
4592 for(Int_t iaod = 0; iaod < naod ; iaod++)
4594 AliAODPWG4ParticleCorrelation* aod = (AliAODPWG4ParticleCorrelation*) (
GetInputAODBranch()->At(iaod));
4602 if(! in ) continue ;
4605 Float_t pt = aod->Pt();
4610 Int_t mcTag = aod->GetTag() ;
4627 Bool_t isolated = kFALSE;
4628 Int_t n = 0, nfrac = 0;
4629 Float_t coneptsum = 0, coneptlead = 0;
4638 n,nfrac,coneptsum,coneptlead,isolated);
4641 Bool_t isolated = aod->IsIsolated();
4642 Float_t
energy = aod->E();
4643 Float_t phi = aod->Phi();
4644 Float_t eta = aod->Eta();
4645 Float_t m02 = aod->GetM02();
4646 Int_t iSM = aod->GetSModNumber();
4648 AliDebug(1,Form(
"pt %1.1f, eta %1.1f, phi %1.1f, Isolated %d",pt, eta, phi, isolated));
4653 AliVCluster *cluster = 0;
4661 Int_t etaRegion = -1, phiRegion = -1;
4665 if(etaRegion >= 0 && etaRegion < 4 && phiRegion >=0 && phiRegion < 3)
4677 if(m02 >=0.3 && m02 <= 0.4)
4679 Float_t ptLimit[] = {2,3,4,5,6,8,10,12};
4681 for(Int_t ipt = 0; ipt < 7; ipt++)
4683 if( pt >= ptLimit[ipt] && pt < ptLimit[ipt+1] )
4701 Int_t
pdg = 0, status = 0, momLabel = -1;
4702 Int_t pdgD = 0, statusD = 0, daugLabel = -1;
4703 Bool_t ok = kFALSE, okD = kFALSE;
4725 if ( prodR < 75. ) convR = 0;
4726 else if ( prodR < 275. ) convR = 1;
4727 else if ( prodR < 375. ) convR = 2;
4728 else if ( prodR < 400. ) convR = 3;
4729 else if ( prodR < 430. ) convR = 4;