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?");
606 if(track->GetID() == pCandidate->GetTrackLabel(0) || track->GetID() == pCandidate->GetTrackLabel(1) ||
607 track->GetID() == pCandidate->GetTrackLabel(2) || track->GetID() == pCandidate->GetTrackLabel(3) )
continue ;
622 if(track->Eta() > (etaTrig-conesize) && track->Eta() < (etaTrig+conesize))
624 phiBandPtSum+=track->Pt();
629 if(track->Phi() > (phiTrig-conesize) && track->Phi() < (phiTrig+conesize))
631 etaBandPtSum+=track->Pt();
636 Double_t pTrack = TMath::Sqrt(track->Px()*track->Px()+track->Py()*track->Py());
637 Double_t dPhi = phiTrig - track->Phi() + TMath::PiOver2();
638 Double_t dEta = etaTrig - track->Eta();
639 Double_t arg = dPhi*dPhi + dEta*dEta;
641 if(TMath::Sqrt(arg) < conesize)
644 sumptPerp+=track->Pt();
647 dPhi = phiTrig - track->Phi() - TMath::PiOver2();
648 arg = dPhi*dPhi + dEta*dEta;
650 if(TMath::Sqrt(arg) < conesize)
653 sumptPerp+=track->Pt();
668 Float_t coneptsumCell, Float_t coneptsumTrack,
669 Float_t &etaBandptsumTrackNorm, Float_t &etaBandptsumClusterNorm)
671 Float_t etaUEptsumTrack = 0 ;
672 Float_t phiUEptsumTrack = 0 ;
673 Float_t etaUEptsumCluster = 0 ;
674 Float_t phiUEptsumCluster = 0 ;
675 Float_t etaUEptsumCell = 0 ;
676 Float_t phiUEptsumCell = 0 ;
683 Float_t coneA = conesize*conesize*TMath::Pi();
684 Float_t ptTrig = pCandidate->Pt() ;
685 Float_t phiTrig = pCandidate->Phi();
686 Float_t etaTrig = pCandidate->Eta();
692 Float_t phiUEptsumTrackNorm = 0 ;
693 Float_t etaUEptsumTrackNorm = 0 ;
694 Float_t coneptsumTrackSubPhi = 0 ;
695 Float_t coneptsumTrackSubEta = 0 ;
696 Float_t coneptsumTrackSubPhiNorm = 0 ;
697 Float_t coneptsumTrackSubEtaNorm = 0 ;
698 etaBandptsumTrackNorm = 0 ;
710 Float_t correctConeSumTrack = 1;
711 Float_t correctConeSumTrackPhi = 1;
714 phiUEptsumTrack,etaUEptsumTrack,
715 phiUEptsumTrackNorm,etaUEptsumTrackNorm,
716 correctConeSumTrack,correctConeSumTrackPhi);
718 coneptsumTrackSubPhi = coneptsumTrack - phiUEptsumTrackNorm;
719 coneptsumTrackSubEta = coneptsumTrack - etaUEptsumTrackNorm;
721 etaBandptsumTrackNorm = etaUEptsumTrackNorm;
731 if(coneptsumTrack > 0)
733 coneptsumTrackSubPhiNorm = coneptsumTrackSubPhi/coneptsumTrack;
734 coneptsumTrackSubEtaNorm = coneptsumTrackSubEta/coneptsumTrack;
746 Float_t phiUEptsumClusterNorm = 0 ;
747 Float_t etaUEptsumClusterNorm = 0 ;
748 Float_t coneptsumClusterSubPhi = 0 ;
749 Float_t coneptsumClusterSubEta = 0 ;
750 Float_t coneptsumClusterSubPhiNorm = 0 ;
751 Float_t coneptsumClusterSubEtaNorm = 0 ;
752 Float_t phiUEptsumCellNorm = 0 ;
753 Float_t etaUEptsumCellNorm = 0 ;
754 Float_t coneptsumCellSubPhi = 0 ;
755 Float_t coneptsumCellSubEta = 0 ;
756 Float_t coneptsumCellSubPhiNorm = 0 ;
757 Float_t coneptsumCellSubEtaNorm = 0 ;
758 etaBandptsumClusterNorm = 0;
773 Float_t correctConeSumClusterEta = 1;
774 Float_t correctConeSumClusterPhi = 1;
777 phiUEptsumCluster,etaUEptsumCluster,
778 phiUEptsumClusterNorm,etaUEptsumClusterNorm,
779 correctConeSumClusterEta,correctConeSumClusterPhi);
790 coneptsumClusterSubPhi = coneptsumCluster - phiUEptsumClusterNorm;
791 coneptsumClusterSubEta = coneptsumCluster - etaUEptsumClusterNorm;
793 etaBandptsumClusterNorm = etaUEptsumClusterNorm;
805 if(coneptsumCluster!=0)
807 coneptsumClusterSubPhiNorm = coneptsumClusterSubPhi/coneptsumCluster;
808 coneptsumClusterSubEtaNorm = coneptsumClusterSubEta/coneptsumCluster;
828 Float_t emcEtaSize = 0.7*2;
829 Float_t emcPhiSize = TMath::DegToRad()*100.;
831 if(((2*conesize*emcPhiSize)-coneA)!=0)phiUEptsumCellNorm = phiUEptsumCell*(coneA / ((2*conesize*emcPhiSize)-coneA));
832 if(((2*conesize*emcEtaSize)-coneA)!=0)etaUEptsumCellNorm = etaUEptsumCell*(coneA / ((2*conesize*emcEtaSize)-coneA));
836 Float_t correctConeSumCellEta = 1;
837 if(TMath::Abs(etaTrig)+conesize > emcEtaSize/2.)
839 Float_t excess = TMath::Abs(etaTrig) + conesize - emcEtaSize/2.;
843 if(((2*(conesize-excess)*emcPhiSize)-(coneA-correctConeSumCellEta))!=0)phiUEptsumCellNorm = phiUEptsumCell*(coneA / ((2*(conesize-excess)*emcPhiSize)-(coneA-correctConeSumCellEta)));
846 Float_t correctConeSumCellPhi = 1;
848 if((phiTrig+conesize > 180*TMath::DegToRad()) ||
849 (phiTrig-conesize < 80*TMath::DegToRad()))
852 if( phiTrig+conesize > 180*TMath::DegToRad() ) excess = conesize + phiTrig - 180*TMath::DegToRad() ;
853 else excess = conesize - phiTrig + 80*TMath::DegToRad() ;
859 if(((2*(conesize-excess)*emcEtaSize)-(coneA-correctConeSumCellPhi))!=0)etaUEptsumCellNorm = etaUEptsumCell*(coneA / ((2*(conesize-excess)*emcEtaSize)-(coneA-correctConeSumCellPhi)));
863 coneptsumCellSubPhi = coneptsumCell*correctConeSumCellEta*correctConeSumCellPhi - phiUEptsumCellNorm;
864 coneptsumCellSubEta = coneptsumCell*correctConeSumCellEta*correctConeSumCellPhi - etaUEptsumCellNorm;
875 if ( coneptsumCell > 0.01 )
877 coneptsumCellSubPhiNorm = coneptsumCellSubPhi/coneptsumCell;
878 coneptsumCellSubEtaNorm = coneptsumCellSubEta/coneptsumCell;
894 Double_t sumPhiUESub = coneptsumClusterSubPhi + coneptsumTrackSubPhi;
895 Double_t sumEtaUESub = coneptsumClusterSubEta + coneptsumTrackSubEta;
916 Double_t sumPhiUESubTrackCell = coneptsumCellSubPhi + coneptsumTrackSubPhi;
917 Double_t sumEtaUESubTrackCell = coneptsumCellSubEta + coneptsumTrackSubEta;
939 Float_t & coneptsumCluster, Float_t & coneptLeadCluster)
941 coneptLeadCluster = 0;
942 coneptsumCluster = 0;
948 if(!refclusters) return ;
950 Float_t ptTrig = aodParticle->Pt();
953 Double_t vertex[] = {0,0,0} ;
959 for(Int_t icalo=0; icalo < refclusters->GetEntriesFast(); icalo++)
961 AliVCluster* calo = (AliVCluster *) refclusters->At(icalo);
981 coneptsumCluster+=ptcone;
982 if(ptcone > coneptLeadCluster) coneptLeadCluster = ptcone;
988 aodParticle->SetNeutralLeadPtInCone(coneptLeadCluster);
989 aodParticle->SetNeutralPtSumInCone(coneptsumCluster);
997 Float_t & coneptsumCell)
1003 Float_t ptTrig = aodParticle->Pt();
1004 Float_t phiTrig = aodParticle->Phi();
1005 if(phiTrig<0) phiTrig += TMath::TwoPi();
1006 Float_t etaTrig = aodParticle->Eta();
1008 if(aodParticle->GetDetectorTag()==
kEMCAL)
1010 AliEMCALGeometry* eGeom = AliEMCALGeometry::GetInstance();
1013 if (eGeom->GetAbsCellIdFromEtaPhi(etaTrig,phiTrig,absId))
1015 if(!eGeom->CheckAbsCellId(absId))
return ;
1018 Int_t nSupMod = eGeom->GetSuperModuleNumber(absId);
1020 Int_t imEta=-1, imPhi=-1;
1021 Int_t ieta =-1, iphi =-1;
1023 if (eGeom->GetCellIndex(absId,nSupMod,nModule,imPhi,imEta))
1025 Int_t iEta=-1, iPhi=-1;
1026 eGeom->GetCellPhiEtaIndexInSModule(nSupMod,nModule,imPhi,imEta,iphi,ieta);
1028 Int_t colTrig = iEta;
1029 if (nSupMod % 2) colTrig = AliEMCALGeoParams::fgkEMCALCols + iEta ;
1030 Int_t rowTrig = iPhi + AliEMCALGeoParams::fgkEMCALRows*int(nSupMod/2);
1032 Int_t sqrSize = int(conesize/0.0143);
1037 for(Int_t irow = rowTrig-sqrSize; irow < rowTrig+sqrSize; irow++)
1039 for(Int_t icol = colTrig-sqrSize; icol < colTrig+sqrSize; icol++)
1041 Int_t inSector = int(irow/AliEMCALGeoParams::fgkEMCALRows);
1042 if(inSector==5)
continue;
1044 Int_t inSupMod = -1;
1046 if(icol < AliEMCALGeoParams::fgkEMCALCols)
1048 inSupMod = 2*inSector + 1;
1051 else if(icol > AliEMCALGeoParams::fgkEMCALCols - 1)
1053 inSupMod = 2*inSector;
1054 icolLoc = icol-AliEMCALGeoParams::fgkEMCALCols;
1057 Int_t irowLoc = irow - AliEMCALGeoParams::fgkEMCALRows*inSector ;
1059 Int_t iabsId = eGeom->GetAbsCellIdFromCellIndexes(inSupMod,irowLoc,icolLoc);
1060 if(!eGeom->CheckAbsCellId(iabsId))
continue;
1063 coneptsumCell += cells->GetCellAmplitude(iabsId);
1077 Float_t & coneptsumTrack, Float_t & coneptLeadTrack)
1083 if(!reftracks) return ;
1085 Float_t ptTrig = aodParticle->Pt();
1088 for(Int_t itrack=0; itrack < reftracks->GetEntriesFast(); itrack++)
1090 AliVTrack* track = (AliVTrack *) reftracks->At(itrack);
1091 Float_t pTtrack = track->Pt();
1098 ULong_t status = track->GetStatus();
1099 Bool_t okTOF = ( (status & AliVTrack::kTOFout) == AliVTrack::kTOFout ) ;
1101 Int_t trackBC = track->GetTOFBunchCrossing(bz);
1122 coneptsumTrack+=pTtrack;
1123 if(pTtrack > coneptLeadTrack) coneptLeadTrack = pTtrack;
1129 aodParticle->SetChargedLeadPtInCone(coneptLeadTrack);
1130 aodParticle->SetChargedPtSumInCone(coneptsumTrack);
1166 if(energy < 8)
return;
1168 AliESDEvent* esdEv =
dynamic_cast<AliESDEvent*
> (event);
1169 AliAODEvent* aodEv =
dynamic_cast<AliAODEvent*
> (event);
1172 Int_t nVerticesSPD = -1;
1173 Int_t nVerticesTracks = -1;
1177 nVerticesSPD = esdEv->GetNumberOfPileupVerticesSPD();
1178 nVerticesTracks = esdEv->GetNumberOfPileupVerticesTracks();
1183 nVerticesSPD = aodEv->GetNumberOfPileupVerticesSPD();
1184 nVerticesTracks = aodEv->GetNumberOfPileupVerticesTracks();
1194 Float_t z1 = -1, z2 = -1;
1196 for(Int_t iVert=0; iVert<nVerticesSPD;iVert++)
1200 const AliESDVertex* pv=esdEv->GetPileupVertexSPD(iVert);
1201 ncont=pv->GetNContributors();
1202 z1 = esdEv->GetPrimaryVertexSPD()->GetZ();
1204 diamZ = esdEv->GetDiamondZ();
1208 AliAODVertex *pv=aodEv->GetVertex(iVert);
1209 if(pv->GetType()!=AliAODVertex::kPileupSPD)
continue;
1210 ncont=pv->GetNContributors();
1211 z1=aodEv->GetPrimaryVertexSPD()->GetZ();
1213 diamZ = aodEv->GetDiamondZ();
1216 Double_t distZ = TMath::Abs(z2-z1);
1217 diamZ = TMath::Abs(z2-diamZ);
1230 Float_t coneptsum, Float_t coneleadpt,
1235 Int_t clusterID = pCandidate->GetCaloLabel(0) ;
1236 Int_t nMaxima = pCandidate->GetNLM();
1237 Int_t mcTag = pCandidate->GetTag() ;
1238 Bool_t isolated = pCandidate->IsIsolated();
1240 if ( clusterID < 0 )
1242 AliWarning(Form(
"ID of cluster = %d, not possible!", clusterID));
1246 Float_t m02 = pCandidate->GetM02() ;
1247 Float_t
energy = pCandidate->E();
1248 Float_t pt = pCandidate->Pt();
1249 Float_t eta = pCandidate->Eta();
1250 Float_t phi = pCandidate->Phi();
1251 if(phi<0) phi+= TMath::TwoPi();
1270 Int_t decayTag = pCandidate->DecayTag();
1271 if(decayTag < 0) decayTag = 0;
1308 Int_t ptsumBin = -1;
1309 Int_t leadptBin = -1;
1311 AliDebug(1,Form(
"pT cand: %2.2f, In cone pT: Sum %2.2f, Lead %2.2f, n bins %d",pt,coneptsum,coneleadpt,
fNBkgBin));
1313 for(Int_t ibin = 0; ibin <
fNBkgBin; ibin++)
1321 if ( leadptBin >= 0 )
1330 if ( leadptBin == 0 )
1331 AliDebug(1,Form(
"No track/clusters in isolation cone: cand pt %2.2f GeV/c, track multiplicity %d, N clusters %d",
1335 if ( ptsumBin >= 0 )
1347 Int_t decayTag = pCandidate->DecayTag();
1348 if(decayTag < 0) decayTag = 0;
1354 Int_t leadptBinDecay = leadptBin+ibit*
fNBkgBin;
1355 Int_t ptsumBinDecay = ptsumBin+ibit*
fNBkgBin;
1364 Int_t leadptBinMC = leadptBin+mcIndex*
fNBkgBin;
1365 Int_t ptsumBinMC = ptsumBin+mcIndex*
fNBkgBin;
1410 AliFatal(Form(
"Lost decay Bit assigned to bad case, mcIndex %d",mcIndex));
1432 Int_t ptTrigBin = -1;
1441 if ( ptTrigBin >= 0 )
1458 Int_t decayTag = pCandidate->DecayTag();
1459 if(decayTag < 0) decayTag = 0;
1476 Int_t ptTrigBinMC = ptTrigBin+mcIndex*
fNPtTrigBin;
1562 Int_t noverlaps = 0;
1565 const UInt_t nlabels =
fCluster->GetNLabels();
1566 Int_t overpdg[nlabels];
1595 if ( noverlaps == 1 )
1622 else if (noverlaps > 1 )
1683 Float_t dZ =
fCluster->GetTrackDz();
1684 Float_t dR =
fCluster->GetTrackDx();
1708 if(TMath::Abs(dZ) < 0.05 && TMath::Abs(dR) < 0.05)
1714 Float_t dEdx = track->GetTPCsignal();
1717 Float_t eOverp =
fCluster->E()/track->P();
1754 const Int_t buffersize = 255;
1755 char onePar[buffersize] ;
1757 snprintf(onePar, buffersize,
"--- AliAnaParticleIsolation ---:") ;
1761 snprintf(onePar, buffersize,
"Isolation Cand Detector: %s;",
fIsoDetectorString.Data()) ;
1763 snprintf(onePar, buffersize,
"fReMakeIC =%d (Flag for reisolation during histogram filling);",
fReMakeIC) ;
1765 snprintf(onePar, buffersize,
"fMakeSeveralIC=%d (Flag for isolation with several cuts at the same time );",
fMakeSeveralIC) ;
1767 snprintf(onePar, buffersize,
"fFillTMHisto=%d (Flag for track matching histograms);",
fFillTMHisto) ;
1769 snprintf(onePar, buffersize,
"fFillSSHisto=%d (Flag for shower shape histograms);",
fFillSSHisto) ;
1774 snprintf(onePar, buffersize,
"fNCones =%d (Number of cone sizes);",
fNCones) ;
1776 snprintf(onePar, buffersize,
"fNPtThresFrac=%d (Flag for isolation with several cuts at the same time);",
fNPtThresFrac) ;
1779 for(Int_t icone = 0; icone <
fNCones ; icone++)
1781 snprintf(onePar, buffersize,
"fConeSizes[%d]=%1.2f (isolation cone size);",icone,
fConeSizes[icone]) ;
1786 snprintf(onePar, buffersize,
"fPtThresholds[%d]=%1.2f (isolation pt threshold);",ipt,
fPtThresholds[ipt]) ;
1791 snprintf(onePar, buffersize,
"fPtFractions[%d]=%1.2f (isolation pt fraction threshold);",ipt,
fPtFractions[ipt]) ;
1796 snprintf(onePar, buffersize,
"fSumPtThresholds[%d]=%1.2f (isolation sum pt threshold);",ipt,
fSumPtThresholds[ipt]) ;
1807 return new TObjString(parList) ;
1816 TList * outputContainer =
new TList() ;
1817 outputContainer->SetName(
"IsolatedParticleHistos") ;
1863 TString sThreshold =
"";
1866 sThreshold = Form(
", %2.2f < #Sigma #it{p}_{T}^{in cone} < %2.2f GeV/#it{c}",
1869 sThreshold = Form(
", #Sigma #it{p}_{T}^{in cone} = %2.2f GeV/#it{c}",
1874 sThreshold = Form(
", %2.2f < #it{p}_{T}^{th} < %2.2f GeV/#it{c}",
1877 sThreshold = Form(
", #it{p}_{T}^{th} = %2.2f GeV/#it{c}",
1881 sThreshold = Form(
", #Sigma #it{p}_{T}^{in cone}/#it{p}_{T}^{trig} = %2.2f" ,
1884 TString sParticle =
", x^{0,#pm}";
1888 TString parTitle = Form(
"#it{R} = %2.2f%s%s",
GetIsolationCut()->GetConeSize(), sThreshold.Data(),sParticle.Data());
1890 TString pileUpName[] = {
"SPD",
"EMCAL",
"SPDOrEMCAL",
"SPDAndEMCAL",
"SPDAndNotEMCAL",
"EMCALAndNotSPD",
"NotSPDAndNotEMCAL"} ;
1893 TString mcPartType[] = {
"#gamma" ,
"#gamma_{prompt}" ,
"#gamma_{fragmentation}",
1894 "#pi^{0} (merged #gamma)",
"#gamma_{#pi decay}" ,
"#gamma_{#pi decay} lost companion",
1895 "#eta (merged #gamma)" ,
"#gamma_{#eta decay}",
"#gamma_{#eta decay} lost companion",
1896 "#gamma_{other decay}" ,
"e^{#pm}" ,
"hadrons?"} ;
1898 TString mcPartName[] = {
"Photon",
"PhotonPrompt",
"PhotonFrag",
1899 "Pi0" ,
"Pi0Decay" ,
"Pi0DecayLostPair",
1900 "Eta" ,
"EtaDecay" ,
"EtaDecayLostPair",
1901 "OtherDecay",
"Electron",
"Hadron"} ;
1904 TString pptype[] = {
"#gamma" ,
"#gamma_{#pi decay}" ,
"#gamma_{#eta decay}",
"#gamma_{other decay}",
1905 "#gamma_{prompt}",
"#gamma_{fragmentation}",
"#gamma_{ISR}" ,
1906 "#pi^{0}" ,
"#eta"} ;
1908 TString ppname[] = {
"Photon" ,
"PhotonPi0Decay",
"PhotonEtaDecay",
"PhotonOtherDecay",
1909 "PhotonPrompt",
"PhotonFrag" ,
"PhotonISR" ,
1915 Form(
"Number of not isolated leading particles vs #it{p}_{T}, %s",parTitle.Data()),
1916 nptbins,ptmin,ptmax);
1917 fhENoIso->SetYTitle(
"#it{counts}");
1918 fhENoIso->SetXTitle(
"E (GeV/#it{c})");
1922 Form(
"Number of not isolated leading particles vs #it{p}_{T}, %s",parTitle.Data()),
1923 nptbins,ptmin,ptmax);
1925 fhPtNoIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
1929 Form(
"Number of not isolated leading particles #eta vs #phi, %s",parTitle.Data()),
1930 netabins,etamin,etamax,nphibins,phimin,phimax);
1941 fhPtNoIsoMC[imc] =
new TH1F(Form(
"hPtNoIsoMC%s",mcPartName[imc].
Data()),
1942 Form(
"#it{p}_{T} of NOT isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1943 nptbins,ptmin,ptmax);
1945 fhPtNoIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
1948 fhPtIsoMC[imc] =
new TH1F(Form(
"hPtMC%s",mcPartName[imc].
Data()),
1949 Form(
"#it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1950 nptbins,ptmin,ptmax);
1951 fhPtIsoMC[imc]->SetYTitle(
"#it{counts}");
1952 fhPtIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
1955 fhPhiIsoMC[imc] =
new TH2F(Form(
"hPhiMC%s",mcPartName[imc].
Data()),
1956 Form(
"#phi vs #it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1957 nptbins,ptmin,ptmax,nphibins,phimin,phimax);
1959 fhPhiIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
1962 fhEtaIsoMC[imc] =
new TH2F(Form(
"hEtaMC%s",mcPartName[imc].
Data()),
1963 Form(
"#phi vs #it{p}_{T} of isolated %s, %s",mcPartType[imc].
Data(),parTitle.Data()),
1964 nptbins,ptmin,ptmax,netabins,etamin,etamax);
1966 fhEtaIsoMC[imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
1974 TString isoName [] = {
"NoIso",
"Iso"};
1975 TString isoTitle[] = {
"Not isolated" ,
"isolated"};
1979 for(Int_t iso = 0; iso < 2; iso++)
1983 new TH1F(Form(
"hPtDecay%s_bit%d",isoName[iso].
Data(),
fDecayBits[ibit]),
1984 Form(
"Number of %s leading pi0 decay particles vs #it{p}_{T}, bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],parTitle.Data()),
1985 nptbins,ptmin,ptmax);
1986 fhPtDecay[iso][ibit]->SetYTitle(
"#it{counts}");
1987 fhPtDecay[iso][ibit]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
1988 outputContainer->Add(
fhPtDecay[iso][ibit]) ;
1991 new TH2F(Form(
"hEtaPhiDecay%s_bit%d",isoName[iso].
Data(),
fDecayBits[ibit]),
1992 Form(
"Number of %s leading Pi0 decay particles #eta vs #phi, bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],parTitle.Data()),
1993 netabins,etamin,etamax,nphibins,phimin,phimax);
2001 (Form(
"hPtLambda0Decay%s_bit%d",isoName[iso].
Data(),
fDecayBits[ibit]),
2002 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}, decay bit %d, %s",isoTitle[iso].
Data(),
fDecayBits[ibit], parTitle.Data()),
2003 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
2014 new TH1F(Form(
"hPtDecay%s_bit%d_MC%s",isoName[iso].
Data(),
fDecayBits[ibit],mcPartName[imc].
Data()),
2015 Form(
"#it{p}_{T} of %s, decay bit %d, %s, %s",isoTitle[iso].
Data(),
fDecayBits[ibit],mcPartType[imc].
Data(),parTitle.Data()),
2016 nptbins,ptmin,ptmax);
2017 fhPtDecayMC[iso][ibit][imc]->SetYTitle(
"#it{counts}");
2018 fhPtDecayMC[iso][ibit][imc]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
2019 outputContainer->Add(
fhPtDecayMC[iso][ibit][imc]) ;
2028 TString isoName [] = {
"NoIso",
"Iso"};
2029 TString isoTitle[] = {
"Not isolated" ,
"isolated"};
2032 Form(
"Number of isolated particles vs E, %s",parTitle.Data()),
2033 nptbins,ptmin,ptmax);
2034 fhEIso->SetYTitle(
"d#it{N} / d#it{E}");
2035 fhEIso->SetXTitle(
"#it{E} (GeV/#it{c})");
2036 outputContainer->Add(
fhEIso) ;
2039 Form(
"Number of isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
2040 nptbins,ptmin,ptmax);
2041 fhPtIso->SetYTitle(
"d#it{N} / #it{p}_{T}");
2042 fhPtIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2043 outputContainer->Add(
fhPtIso) ;
2046 Form(
"Number of isolated particles vs #phi, %s",parTitle.Data()),
2047 nptbins,ptmin,ptmax,nphibins,phimin,phimax);
2049 fhPhiIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2053 Form(
"Number of isolated particles vs #eta, %s",parTitle.Data()),
2054 nptbins,ptmin,ptmax,netabins,etamin,etamax);
2056 fhEtaIso->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2060 Form(
"Number of isolated particles #eta vs #phi, %s",parTitle.Data()),
2061 netabins,etamin,etamax,nphibins,phimin,phimax);
2069 Form(
"centrality vs #it{p}_{T} for isolated particles, %s",parTitle.Data()),
2070 nptbins,ptmin,ptmax, 100,0,100);
2076 Form(
"event plane angle vs #it{p}_{T} for isolated particles, %s",parTitle.Data()),
2077 nptbins,ptmin,ptmax, 100,0,TMath::Pi());
2086 Form(
"Number of isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
2087 nptbins,ptmin,ptmax,10,0,10);
2092 Form(
"Number of not isolated particles vs #it{p}_{T}, %s",parTitle.Data()),
2093 nptbins,ptmin,ptmax,10,0,10);
2100 Form(
"Track or Cluster leading #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2101 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
2102 fhConePtLead->SetYTitle(
"#it{p}_{T, leading} (GeV/#it{c})");
2103 fhConePtLead->SetXTitle(
"#it{p}_{T, trigger} (GeV/#it{c})");
2107 Form(
"Track and Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2108 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2110 fhConeSumPt->SetXTitle(
"#it{p}_{T, trigger} (GeV/#it{c})");
2114 Form(
"Trigger #eta vs #phi, #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2115 netabins,etamin,etamax,nphibins,phimin,phimax);
2122 Form(
"#it{p}_{T} of clusters and tracks in isolation cone for #it{R} = %2.2f",r),
2123 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2124 fhPtInCone->SetYTitle(
"#it{p}_{T in cone} (GeV/#it{c})");
2125 fhPtInCone->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
2156 for(Int_t ibin = 0; ibin <
fNBkgBin; ibin++)
2159 (Form(
"hPtLeadCone_Bin%d",ibin),
2160 Form(
"cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
2167 (Form(
"hSumPtCone_Bin%d",ibin),
2168 Form(
"in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
2176 for(Int_t idecay = 0; idecay <
fNDecayBits; idecay++)
2178 Int_t bindecay = ibin+idecay*
fNBkgBin;
2181 (Form(
"hPtLeadCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2182 Form(
"Decay bit %d, cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
2189 (Form(
"hSumPtCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2190 Form(
"Decay bit %d, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
2204 (Form(
"hPtLeadCone_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2205 Form(
"in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, MC %s, %s",
2212 (Form(
"hSumPtCone_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2213 Form(
"in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, MC %s, %s",
2224 (Form(
"hPtLeadConeLambda0_Bin%d",ibin),
2225 Form(
"#lambda_{0}, in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, %s",
2232 (Form(
"hSumPtConeLambda0_Bin%d",ibin),
2233 Form(
"#lambda_{0}, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, %s",
2245 (Form(
"hPtLeadConeLambda0_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2246 Form(
"#lambda_{0}, in cone %2.2f<#it{p}_{T}^{leading}<%2.2f GeV/#it{c}, MC %s, %s",
2253 (Form(
"hSumPtConeLambda0_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2254 Form(
"#lambda_{0}, in cone %2.2f <#Sigma #it{p}_{T}< %2.2f GeV/#it{c}, MC %s, %s",
2294 (Form(
"hPtTrigBin_PtLeadCone_Bin%d",ibin),
2295 Form(
"#it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
2302 (Form(
"hPtTrigBin_SumPtCone_Bin%d",ibin),
2303 Form(
"#Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
2311 for(Int_t idecay = 0; idecay <
fNDecayBits; idecay++)
2316 (Form(
"hPtTrigBin_PtLeadCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2317 Form(
"Decay bit %d, #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
2324 (Form(
"hPtTrigBin_SumPtCone_Bin%d_DecayBit%d",ibin,
fDecayBits[idecay]),
2325 Form(
"Decay bit %d, #Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
2339 (Form(
"hPtTrigBin_PtLeadCone_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2340 Form(
"#it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, MC %s, %s",
2347 (Form(
"hPtTrigBin_SumPtCone_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2348 Form(
"#Sigma #it{p}_{T}^{in cone}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
2359 (Form(
"hPtTrigBin_PtLeadConeVSLambda0_Bin%d",ibin),
2360 Form(
"#lambda_{0} vs #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, %s",
2367 (Form(
"hPtTrigBin_SumPtConeVSLambda0_Bin%d",ibin),
2368 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone} %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, %s",
2380 (Form(
"hPtTrigBin_PtLeadConeVSLambda0_Bin%d_MC%s",ibin, mcPartName[imc].
Data()),
2381 Form(
"#lambda_{0} vs #it{p}_{T}^{lead. in cone}, %2.2f<#it{p}_{T}^{cand}<%2.2f GeV/#it{c}, MC %s, %s",
2388 (Form(
"hPtTrigBin_SumPtConeVSLambda0_Bin%d_MC%s",ibin,mcPartName[imc].
Data()),
2389 Form(
"#lambda_{0} vs #Sigma #it{p}_{T}^{in cone}, %2.2f <#it{p}_{T}^{cand}< %2.2f GeV/#it{c}, MC %s, %s",
2403 Form(
"#it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2404 100,0,100,nptinconebins,ptinconemin,ptinconemax);
2414 Form(
"Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2415 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2421 Form(
"Cluster leading in isolation cone for #it{R} = %2.2f",r),
2422 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
2431 Form(
"Cell #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2432 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2441 "#Sigma cluster #it{p}_{T} in UE Eta Band",
2442 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2448 "#Sigma cluster #it{p}_{T} UE Phi Band",
2449 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2455 "Trigger #eta vs #phi, #Sigma cluster #it{p}_{T} in UE Eta Band",
2456 netabins,etamin,etamax,nphibins,phimin,phimax);
2463 "Trigger #eta vs #phi, #Sigma cluster #it{p}_{T} UE Phi Band",
2464 netabins,etamin,etamax,nphibins,phimin,phimax);
2473 "#Sigma cell #it{p}_{T} in UE Eta Band",
2474 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2480 "#Sigma cell #it{p}_{T} UE Phi Band",
2481 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2487 "Trigger #eta vs #phi, #Sigma cell #it{p}_{T} in UE Eta Band",
2488 netabins,etamin,etamax,nphibins,phimin,phimax);
2495 "Trigger #eta vs #phi, #Sigma cell #it{p}_{T} UE Phi Band",
2496 netabins,etamin,etamax,nphibins,phimin,phimax);
2504 Form(
"#eta vs #phi of clusters in #eta band isolation cone for #it{R} = %2.2f",r),
2505 netabins,-1,1,nphibins,0,TMath::TwoPi());
2511 Form(
"#eta vs #phi of clusters in #phi band isolation cone for #it{R} = %2.2f",r),
2512 netabins,-1,1,nphibins,0,TMath::TwoPi());
2518 Form(
"#eta vs #phi of clusters in cone for #it{R} = %2.2f",r),
2519 netabins,-1,1,nphibins,0,TMath::TwoPi());
2525 Form(
"#eta vs #phi of all clusters"),
2526 netabins,-1,1,nphibins,0,TMath::TwoPi());
2534 Form(
"#it{p}_{T} of clusters in isolation cone for #it{R} = %2.2f",r),
2535 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2543 Form(
"#it{p}_{T} of cells in isolation cone for #it{R} = %2.2f",r),
2544 nptbins,ptmin,ptmax,1000,0,50);
2550 Form(
"#col vs #row of cells in #eta band isolation cone for #it{R} = %2.2f",r),
2557 Form(
"#col vs #row of cells in #phi band isolation cone for #it{R} = %2.2f",r),
2567 Form(
"Clusters #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2568 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2574 Form(
"Clusters #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2575 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2581 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),
2582 netabins,etamin,etamax,nphibins,phimin,phimax);
2589 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),
2590 netabins,etamin,etamax,nphibins,phimin,phimax);
2599 Form(
"Cells #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2600 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2606 Form(
"Cells #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2607 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2613 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),
2614 netabins,etamin,etamax,nphibins,phimin,phimax);
2621 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),
2622 netabins,etamin,etamax,nphibins,phimin,phimax);
2630 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #eta acceptance",r),
2631 nptbins,ptmin,ptmax,100,0,1);
2637 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #eta acceptance, in trigger #eta-#phi ",r),
2638 netabins,etamin,etamax,nphibins,phimin,phimax);
2645 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #phi acceptance",r),
2646 nptbins,ptmin,ptmax,100,0,1);
2652 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of clusters #phi acceptance, in trigger #eta-#phi ",r),
2653 netabins,etamin,etamax,nphibins,phimin,phimax);
2660 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),
2661 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2667 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),
2668 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2674 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),
2675 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2681 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),
2682 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2688 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in eta band for cluster (before normalization), R=%2.2f",r),
2689 nptsumbins,ptsummin,ptsummax,2*nptsumbins,ptsummin,2*ptsummax);
2695 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in phi band for cluster (before normalization), R=%2.2f",r),
2696 nptsumbins,ptsummin,ptsummax,8*nptsumbins,ptsummin,8*ptsummax);
2704 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #eta acceptance",r),
2705 nptbins,ptmin,ptmax,100,0,1);
2711 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #eta acceptance, in trigger #eta-#phi ",r),
2712 netabins,etamin,etamax,nphibins,phimin,phimax);
2719 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #phi acceptance",r),
2720 nptbins,ptmin,ptmax,100,0,1);
2726 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of cells #phi acceptance, in trigger #eta-#phi ",r),
2727 netabins,etamin,etamax,nphibins,phimin,phimax);
2735 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),
2736 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2742 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),
2743 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2749 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),
2750 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2756 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),
2757 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2769 Form(
"Track #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2770 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2776 Form(
"Track leading in isolation cone for #it{R} = %2.2f",r),
2777 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
2783 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f",r),
2784 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2793 "#Sigma track #it{p}_{T} in UE Eta Band",
2794 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2800 "#Sigma track #it{p}_{T} in UE Phi Band",
2801 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax*8);
2808 "Trigger #eta vs #phi, #Sigma track #it{p}_{T} in UE Eta Band",
2809 netabins,etamin,etamax,nphibins,phimin,phimax);
2816 "Trigger #eta vs #phi, #Sigma track #it{p}_{T} in UE Phi Band",
2817 netabins,etamin,etamax,nphibins,phimin,phimax);
2824 Form(
"#eta vs #phi of tracks in #eta band isolation cone for #it{R} = %2.2f",r),
2825 netabins,-1,1,nphibins,0,TMath::TwoPi());
2831 Form(
"#eta vs #phi of tracks in #phi band isolation cone for #it{R} = %2.2f",r),
2832 netabins,-1,1,nphibins,0,TMath::TwoPi());
2838 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
2839 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2845 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
2846 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
2852 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),
2853 netabins,etamin,etamax,nphibins,phimin,phimax);
2860 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),
2861 netabins,etamin,etamax,nphibins,phimin,phimax);
2868 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of tracks #eta acceptance",r),
2869 nptbins,ptmin,ptmax,100,0,1);
2875 Form(
"Fraction of the isolation cone #it{R} = %2.2f, out of tracks #eta acceptance, in trigger #eta-#phi ",r),
2876 netabins,etamin,etamax,nphibins,phimin,phimax);
2883 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),
2884 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2890 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),
2891 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2897 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),
2898 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2904 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),
2905 nptsumbins,ptsummin,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
2913 Form(
"#Sigma #it{p}_{T} in isolation cone at #pm 45 degree phi from trigger particle, #it{R} = %2.2f",r),
2914 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
2920 Form(
"#it{p}_{T} in isolation cone at #pm 45 degree phi from trigger particle, #it{R} = %2.2f",r),
2921 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
2927 Form(
"#eta vs #phi of all Tracks"),
2928 netabins,-1,1,nphibins,0,TMath::TwoPi());
2934 Form(
"#eta vs #phi of Tracks in cone for #it{R} = %2.2f",r),
2935 netabins,-1,1,nphibins,0,TMath::TwoPi());
2941 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in eta band for tracks (before normalization), R=%2.2f",r),
2942 nptsumbins,ptsummin,ptsummax,2*nptsumbins,ptsummin,2*ptsummax);
2948 Form(
"#Sigma #it{p}_{T} in cone versus #Sigma #it{p}_{T} in phi band for tracks (before normalization), R=%2.2f",r),
2949 nptsumbins,ptsummin,ptsummax,8*nptsumbins,ptsummin,8*ptsummax);
2959 Form(
"Track vs Cluster #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2960 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
2966 Form(
"#Sigma #it{p}_{T}^{cluster}/#Sigma #it{p}_{T}^{track} in isolation cone for #it{R} = %2.2f",r),
2967 nptbins,ptmin,ptmax,200,0,5);
2974 Form(
"Track vs Cluster lead #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2975 nptbins,ptmin,ptmax,nptbins,ptmin,ptmax);
2981 Form(
" #it{p}^{leading cluster}_{T}/#it{p}^{leading track}_{T} in isolation cone for #it{R} = %2.2f",r),
2982 nptbins,ptmin,ptmax,200,0,5);
2991 Form(
"Track vs cell #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2992 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
2998 Form(
"Track and Cell #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
2999 nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3005 Form(
"Trigger #eta vs #phi, #Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",r),
3006 netabins,etamin,etamax,nphibins,phimin,phimax);
3016 Form(
"#Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
3017 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3023 Form(
"#Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
3024 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3030 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),
3031 netabins,etamin,etamax,nphibins,phimin,phimax);
3038 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),
3039 netabins,etamin,etamax,nphibins,phimin,phimax);
3046 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub eta band in isolation cone for #it{R} = %2.2f",r),
3047 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3053 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub phi band in isolation cone for #it{R} = %2.2f",r),
3054 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3060 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3061 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3067 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3068 nptsumbins,ptsummin,ptsummax*4,nptsumbins,ptsummin,ptsummax*8);
3074 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3075 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3081 Form(
"Track vs Cluster #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3082 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3088 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub eta band in isolation cone for #it{R} = %2.2f",r),
3089 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3095 Form(
"Track vs Cluster #Sigma #it{p}_{T} UE sub phi band in isolation cone for #it{R} = %2.2f",r),
3096 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3105 Form(
"Track vs Cell #Sigma #it{p}_{T} UE sub eta band in isolation cone for #it{R} = %2.2f",r),
3106 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3112 Form(
"Track vs Cell #Sigma #it{p}_{T} UE sub phi band in isolation cone for #it{R} = %2.2f",r),
3113 2*nptsumbins,-ptsummax,ptsummax,2*nptsumbins,-ptsummax,ptsummax);
3119 Form(
"Track vs Cell #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3120 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3126 Form(
"Track vs Cell #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3127 nptsumbins,ptsummin,ptsummax*4,nptsumbins,ptsummin,ptsummax*8);
3133 Form(
"Track vs Cell #Sigma #it{p}_{T} in Eta band in isolation cone for #it{R} = %2.2f",r),
3134 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3140 Form(
"Track vs Cell #Sigma #it{p}_{T} in Phi band in isolation cone for #it{R} = %2.2f",r),
3141 nptsumbins,ptsummin,ptsummax,nptsumbins,ptsummin,ptsummax);
3147 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from eta band in the isolation cone for #it{R} = %2.2f",r),
3148 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3154 Form(
"Tracks #Sigma #it{p}_{T} after bkg subtraction from phi band in the isolation cone for #it{R} = %2.2f",r),
3155 nptbins,ptmin,ptmax,2*nptsumbins,-ptsummax,ptsummax);
3161 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),
3162 netabins,etamin,etamax,nphibins,phimin,phimax);
3169 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),
3170 netabins,etamin,etamax,nphibins,phimin,phimax);
3179 TString region[] = {
"ITS",
"TPC",
"TRD",
"TOF",
"Top EMCal",
"In EMCal"};
3181 for(Int_t iso = 0; iso < 2; iso++)
3186 (Form(
"hTrackMatchedDEta%s",isoName[iso].
Data()),
3187 Form(
"%s - d#eta of cluster-track vs cluster energy, %s",isoTitle[iso].
Data(),parTitle.Data()),
3188 nptbins,ptmin,ptmax,nresetabins,resetamin,resetamax);
3193 (Form(
"hTrackMatchedDPhi%s",isoName[iso].
Data()),
3194 Form(
"%s - d#phi of cluster-track vs cluster energy, %s",isoTitle[iso].
Data(),parTitle.Data()),
3195 nptbins,ptmin,ptmax,nresphibins,resphimin,resphimax);
3200 (Form(
"hTrackMatchedDEtaDPhi%s",isoName[iso].
Data()),
3201 Form(
"%s - d#eta vs d#phi of cluster-track, %s",isoTitle[iso].
Data(),parTitle.Data()),
3202 nresetabins,resetamin,resetamax,nresphibins,resphimin,resphimax);
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(
"%s - d#phi of cluster-track vs cluster energy, %s",isoTitle[iso].
Data(),parTitle.Data()),
3222 nptbins,ptmin,ptmax,nresetabins,resphimin,resphimax);
3227 (Form(
"hTrackMatchedDEtaDPhi%s_MC%s",isoName[iso].
Data(),mcPartName[imc].
Data()),
3228 Form(
"%s - d#eta vs d#phi of cluster-track, %s",isoTitle[iso].
Data(),parTitle.Data()),
3229 nresetabins,resetamin,resetamax,nresphibins,resphimin,resphimax);
3241 (Form(
"hdEdx%s",isoName[iso].
Data()),
3242 Form(
"%s - Matched track <d#it{E}/d#it{x}> vs cluster #it{E}, %s",isoTitle[iso].
Data(),parTitle.Data()),
3243 nptbins,ptmin,ptmax,ndedxbins, dedxmin, dedxmax);
3244 fhdEdx[iso]->SetXTitle(
"#it{E} (GeV)");
3245 fhdEdx[iso]->SetYTitle(
"<d#it{E}/d#it{x}>");
3246 outputContainer->Add(
fhdEdx[iso]);
3249 (Form(
"hEOverP%s",isoName[iso].
Data()),
3250 Form(
"%s - Matched track #it{E}/#it{p} vs cluster, %s",isoTitle[iso].
Data(),parTitle.Data()),
3251 nptbins,ptmin,ptmax,nPoverEbins,pOverEmin,pOverEmax);
3252 fhEOverP[iso]->SetXTitle(
"#it{E} (GeV)");
3253 fhEOverP[iso]->SetYTitle(
"#it{E}/#it{p}");
3254 outputContainer->Add(
fhEOverP[iso]);
3259 (Form(
"hTrackMatchedMCParticle%s",isoName[iso].
Data()),
3260 Form(
"%s - Origin of particle vs cluster #it{E}, %s",isoTitle[iso].
Data(),parTitle.Data()),
3261 nptbins,ptmin,ptmax,8,0,8);
3281 (Form(
"hELambda0%s",isoName[iso].
Data()),
3282 Form(
"%s cluster : #it{E} vs #lambda_{0}, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3283 fhELambda0[iso]->SetYTitle(
"#lambda_{0}^{2}");
3295 (Form(
"hPtLambda0%s",isoName[iso].
Data()),
3296 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}, %s",isoTitle[iso].
Data(), parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3298 fhPtLambda0[iso]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3305 fhPtLambda0MC[imc][iso] =
new TH2F(Form(
"hPtLambda0%s_MC%s",isoName[iso].
Data(),mcPartName[imc].
Data()),
3306 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3307 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3309 fhPtLambda0MC[imc][iso]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
3313 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3314 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3322 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3323 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3329 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3330 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3336 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3337 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3343 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3344 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3350 fhPtNOverlap[imc][iso] =
new TH2F(Form(
"hPtNOverlaps%s_MC%s_1Overlap",isoName[iso].
Data(),mcPartName[imc].
Data()),
3351 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3352 nptbins,ptmin,ptmax,10,0,10);
3354 fhPtNOverlap[imc][iso]->SetXTitle(
"#it{p}_{T}(GeV/#it{c})");
3357 fhPtNOverlapConv[imc][iso] =
new TH2F(Form(
"hPtNOverlaps%s_MC%sConv_1Overlap",isoName[iso].
Data(),mcPartName[imc].
Data()),
3358 Form(
"%s cluster : #it{p}_{T} vs #lambda_{0}: %s %s, from conversion, 1 overlap",isoTitle[iso].
Data(),mcPartType[imc].
Data(),parTitle.Data()),
3359 nptbins,ptmin,ptmax,10,0,10);
3371 (Form(
"hPtLambda0TRD%s",isoName[iso].
Data()),
3372 Form(
"%s cluster: #it{p}_{T} vs #lambda_{0}, SM behind TRD, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3378 (Form(
"hELambda0TRD%s",isoName[iso].
Data()),
3379 Form(
"%s cluster: #it{E} vs #lambda_{0}, SM behind TRD, %s",isoTitle[iso].
Data(),parTitle.Data()),nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3395 (Form(
"hNLocMax%s",isoName[iso].
Data()),
3396 Form(
"%s - Number of local maxima in cluster, %s",isoTitle[iso].
Data(),parTitle.Data()),
3397 nptbins,ptmin,ptmax,10,0,10);
3399 fhNLocMax[iso]->SetXTitle(
"#it{E} (GeV)");
3403 (Form(
"hELambda0LocMax1%s",isoName[iso].
Data()),
3404 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);
3410 (Form(
"hELambda1LocMax1%s",isoName[iso].
Data()),
3411 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);
3417 (Form(
"hELambda0LocMax2%s",isoName[iso].
Data()),
3418 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);
3424 (Form(
"hELambda1LocMax2%s",isoName[iso].
Data()),
3425 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);
3431 ( Form(
"hELambda0LocMaxN%s",isoName[iso].
Data()),
3432 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);
3438 (Form(
"hELambda1LocMaxN%s",isoName[iso].
Data()),
3439 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);
3449 for(Int_t ieta = 0; ieta < 4; ieta++)
3451 for(Int_t iphi = 0; iphi < 3; iphi++)
3477 new TH2F(Form(
"hLam0_%s_eta%d_phi%d_sm%d",isoName[iso].
Data(),ieta,iphi,ism),
3478 Form(
"%s, cluster from converted photon, #it{p}_{T} vs #lambda_{0}^{2}, sm %d, region eta %d, phi %d",
3479 isoTitle[iso].
Data(),ism,ieta,iphi),
3480 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3488 Float_t ptLimit[] = {2,3,4,5,6,8,10,12};
3489 for(Int_t ipt = 0; ipt < 7; ipt++)
3492 (Form(
"hEtaPhiLam0BinPtBin%d%s",ipt,isoName[iso].
Data()),
3493 Form(
"%s, #eta vs #phi in #it{p}_{T}=[%2.1f,%2.1f] GeV/#it{c} and #lambda^{2}_{0}=[0.3,0.4]",
3494 isoTitle[iso].
Data(),ptLimit[ipt],ptLimit[ipt+1]),
3495 netabins,etamin,etamax,nphibins,phimin,phimax);
3505 Form(
"%s, cluster from converted photon, #it{p}_{T} vs vertex distance, %s",
3506 isoTitle[iso].
Data(),parTitle.Data()),
3507 nptbins,ptmin,ptmax,500,0,500);
3515 Form(
"%s, cluster from converted photon, #it{p}_{T} vs vertex distance, %s, SM covered by TRD",
3516 isoTitle[iso].
Data(),parTitle.Data()),
3517 nptbins,ptmin,ptmax,500,0,500);
3525 for(Int_t iR = 0; iR < 6; iR++)
3528 Form(
"%s, cluster from converted photon, #it{p}_{T} vs #lambda_{0}^{2}, conversion in %s",
3529 isoTitle[iso].
Data(),region[iR].
Data()),
3530 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3538 Form(
"%s, cluster from converted photon, #it{p}_{T} vs #lambda_{0}^{2}, conversion in %s, SM covered by TRD",
3539 isoTitle[iso].
Data(),region[iR].
Data()),
3540 nptbins,ptmin,ptmax,ssbins,ssmin,ssmax);
3590 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC!=0",r),
3591 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3597 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC!=0, pile-up from SPD",r),
3598 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3604 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC==0",r),
3605 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3611 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC==0",r),
3612 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3619 Form(
"#it{p}_{T} of tracks in isolation cone for #it{R} = %2.2f, TOF from BC==0, pile-up from SPD",r),
3620 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3626 for (Int_t i = 0; i < 7 ; i++)
3629 Form(
"#it{p}_{T} in isolation cone for #it{R} = %2.2f, from pile-up (%s)",r,pileUpName[i].
Data()),
3630 nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3643 fhEPrimMC[i] =
new TH1F(Form(
"hEPrim_MC%s",ppname[i].
Data()),
3644 Form(
"primary photon %s : #it{E}, %s",pptype[i].
Data(),parTitle.Data()),
3645 nptbins,ptmin,ptmax);
3646 fhEPrimMC[i]->SetXTitle(
"#it{E} (GeV)");
3650 Form(
"primary photon %s : #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3651 nptbins,ptmin,ptmax);
3652 fhPtPrimMC[i]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3656 Form(
"primary isolated photon %s : #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3657 nptbins,ptmin,ptmax);
3662 Form(
"primary photon %s : #eta vs #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3663 nptbins,ptmin,ptmax,200,-2,2);
3665 fhEtaPrimMC[i]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3669 Form(
"primary photon %s : #phi vs #it{p}_{T}, %s",pptype[i].
Data(),parTitle.Data()),
3670 nptbins,ptmin,ptmax,200,0.,TMath::TwoPi());
3672 fhPhiPrimMC[i]->SetXTitle(
"#it{p}_{T} (GeV/#it{c})");
3679 Form(
"primary photon %s : #it{p}_{T}, pair in cone, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3680 nptbins,ptmin,ptmax);
3685 Form(
"isolated primary photon %s, pair in cone : #it{p}_{T}, %s",
3687 nptbins,ptmin,ptmax);
3692 Form(
"primary photon %s, no overlap, pair in cone : #it{p}_{T}, %s",
3694 nptbins,ptmin,ptmax);
3699 Form(
"isolated primary photon %s, pair in cone,no overlap : #it{p}_{T}, %s",
3701 nptbins,ptmin,ptmax);
3706 Form(
"primary photon %s, no overlap, pair in cone, E > calo min: #it{p}_{T}, %s",
3708 nptbins,ptmin,ptmax);
3713 Form(
"isolated primary photon %s, pair in cone,no overlap, E > calo min: #it{p}_{T}, %s",
3715 nptbins,ptmin,ptmax);
3721 Form(
"primary photon %s, no overlap: #it{p}_{T}, %s",
3723 nptbins,ptmin,ptmax);
3728 Form(
"isolated primary photon %s, no overlap: #it{p}_{T}, %s",
3730 nptbins,ptmin,ptmax);
3735 Form(
"primary photon %s : #it{p}_{T}, pair out of cone, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3736 nptbins,ptmin,ptmax);
3741 Form(
"isolated primary photon %s, pair out of cone : #it{p}_{T}, %s",
3743 nptbins,ptmin,ptmax);
3748 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3749 nptbins,ptmin,ptmax);
3754 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, no overlap, %s",pptype[
kmcPrimPi0Decay].
Data(),parTitle.Data()),
3755 nptbins,ptmin,ptmax);
3760 Form(
"isolated primary photon %s, pair out of acceptance : #it{p}_{T}, %s",
3762 nptbins,ptmin,ptmax);
3767 Form(
"isolated primary photon %s, pair out of acceptance, no overlap : #it{p}_{T}, %s",
3769 nptbins,ptmin,ptmax);
3774 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3776 nptbins,ptmin,ptmax);
3781 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3783 nptbins,ptmin,ptmax);
3795 Form(
"primary photon %s : #it{p}_{T}, pair in cone, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3796 nptbins,ptmin,ptmax);
3801 Form(
"isolated primary photon %s, pair in cone : #it{p}_{T}, %s",
3803 nptbins,ptmin,ptmax);
3808 Form(
"primary photon %s, no overlap, pair in cone : #it{p}_{T}, %s",
3810 nptbins,ptmin,ptmax);
3815 Form(
"isolated primary photon %s, pair in cone,no overlap : #it{p}_{T}, %s",
3817 nptbins,ptmin,ptmax);
3822 Form(
"primary photon %s, no overlap, pair in cone, E > calo min: #it{p}_{T}, %s",
3824 nptbins,ptmin,ptmax);
3829 Form(
"isolated primary photon %s, pair in cone,no overlap, E > calo min: #it{p}_{T}, %s",
3831 nptbins,ptmin,ptmax);
3837 Form(
"primary photon %s, no overlap: #it{p}_{T}, %s",
3839 nptbins,ptmin,ptmax);
3844 Form(
"isolated primary photon %s, no overlap: #it{p}_{T}, %s",
3846 nptbins,ptmin,ptmax);
3851 Form(
"primary photon %s : #it{p}_{T}, pair out of cone, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3852 nptbins,ptmin,ptmax);
3857 Form(
"isolated primary photon %s, pair out of cone : #it{p}_{T}, %s",
3859 nptbins,ptmin,ptmax);
3864 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3865 nptbins,ptmin,ptmax);
3870 Form(
"primary photon %s : #it{p}_{T}, pair out of acceptance, no overlap, %s",pptype[
kmcPrimEtaDecay].
Data(),parTitle.Data()),
3871 nptbins,ptmin,ptmax);
3876 Form(
"isolated primary photon %s, pair out of acceptance : #it{p}_{T}, %s",
3878 nptbins,ptmin,ptmax);
3883 Form(
"isolated primary photon %s, pair out of acceptance, no overlap : #it{p}_{T}, %s",
3885 nptbins,ptmin,ptmax);
3890 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3892 nptbins,ptmin,ptmax);
3897 Form(
"primary %s, overlap: #it{p}_{T}, %s",
3899 nptbins,ptmin,ptmax);
3911 const Int_t buffersize = 255;
3912 char name[buffersize];
3913 char title[buffersize];
3914 for(Int_t icone = 0; icone<
fNCones; icone++)
3917 snprintf(name, buffersize,
"hSumPtLeadingPt_Cone_%d",icone);
3918 snprintf(title, buffersize,
"#Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3919 fhSumPtLeadingPt[icone] =
new TH2F(name, title,nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3925 snprintf(name, buffersize,
"hPtLeadingPt_Cone_%d",icone);
3926 snprintf(title, buffersize,
"#it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3927 fhPtLeadingPt[icone] =
new TH2F(name, title, nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3928 fhPtLeadingPt[icone] ->SetYTitle(
"#it{p}_{T}^{cone} (GeV/#it{c})");
3929 fhPtLeadingPt[icone] ->SetXTitle(
"#it{p}_{T}^{leading} (GeV/#it{c})");
3933 snprintf(name, buffersize,
"hPerpSumPtLeadingPt_Cone_%d",icone);
3934 snprintf(title, buffersize,
"#Sigma #it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3935 fhPerpSumPtLeadingPt[icone] =
new TH2F(name, title,nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3941 snprintf(name, buffersize,
"hPerpPtLeadingPt_Cone_%d",icone);
3942 snprintf(title, buffersize,
"#it{p}_{T} in isolation cone for #it{R} = %2.2f",
fConeSizes[icone]);
3943 fhPerpPtLeadingPt[icone] =
new TH2F(name, title, nptbins,ptmin,ptmax,nptinconebins,ptinconemin,ptinconemax);
3952 snprintf(name , buffersize,
"hSumPtLeadingPt_MC%s_Cone_%d",mcPartName[imc].
Data(),icone);
3953 snprintf(title, buffersize,
"Candidate %s #it{p}_{T} vs cone #Sigma #it{p}_{T} for #it{R}=%2.2f",mcPartType[imc].
Data(),
fConeSizes[icone]);
3954 fhSumPtLeadingPtMC[imc][icone] =
new TH2F(name, title,nptbins,ptmin,ptmax,nptsumbins,ptsummin,ptsummax);
3963 snprintf(name, buffersize,
"hPtThres_Cone_%d_Pt%d",icone,ipt);
3964 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]);
3969 snprintf(name, buffersize,
"hPtFrac_Cone_%d_Pt%d",icone,ipt);
3970 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]);
3975 snprintf(name, buffersize,
"hSumPt_Cone_%d_Pt%d",icone,ipt);
3976 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]);
3977 fhSumPtIsolated[icone][ipt] =
new TH1F(name, title,nptbins,ptmin,ptmax);
3982 snprintf(name, buffersize,
"hPtSumDensity_Cone_%d_Pt%d",icone,ipt);
3983 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]);
3989 snprintf(name, buffersize,
"hPtFracPtSum_Cone_%d_Pt%d",icone,ipt);
3990 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]);
3997 snprintf(name, buffersize,
"hEtaPhiPtThres_Cone_%d_Pt%d",icone,ipt);
3998 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]);
3999 fhEtaPhiPtThresIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4004 snprintf(name, buffersize,
"hEtaPhiPtFrac_Cone_%d_Pt%d",icone,ipt);
4005 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]);
4006 fhEtaPhiPtFracIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4011 snprintf(name, buffersize,
"hEtaPhiPtSum_Cone_%d_Pt%d",icone,ipt);
4012 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]);
4013 fhEtaPhiPtSumIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4018 snprintf(name, buffersize,
"hEtaPhiSumDensity_Cone_%d_Pt%d",icone,ipt);
4019 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]);
4020 fhEtaPhiSumDensityIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4025 snprintf(name, buffersize,
"hEtaPhiFracPtSum_Cone_%d_Pt%d",icone,ipt);
4026 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]);
4027 fhEtaPhiFracPtSumIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4035 snprintf(name, buffersize,
"hPtThres_Decay_Cone_%d_Pt%d",icone,ipt);
4036 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]);
4041 snprintf(name, buffersize,
"hPtFrac_Decay_Cone_%d_Pt%d",icone,ipt);
4042 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]);
4047 snprintf(name, buffersize,
"hPtSum_Decay_Cone_%d_Pt%d",icone,ipt);
4048 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]);
4054 snprintf(name, buffersize,
"hPtSumDensity_Decay_Cone_%d_Pt%d",icone,ipt);
4055 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]);
4061 snprintf(name, buffersize,
"hPtFracPtSum_Decay_Cone_%d_Pt%d",icone,ipt);
4062 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]);
4069 snprintf(name, buffersize,
"hEtaPhiPtThres_Decay_Cone_%d_Pt%d",icone,ipt);
4070 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]);
4076 snprintf(name, buffersize,
"hEtaPhiPtFrac_Decay_Cone_%d_Pt%d",icone,ipt);
4077 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]);
4078 fhEtaPhiPtFracDecayIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4084 snprintf(name, buffersize,
"hEtaPhiPtSum_Decay_Cone_%d_Pt%d",icone,ipt);
4085 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]);
4086 fhEtaPhiPtSumDecayIso[icone][ipt] =
new TH2F(name, title,netabins,etamin,etamax,nphibins,phimin,phimax);
4091 snprintf(name, buffersize,
"hEtaPhiSumDensity_Decay_Cone_%d_Pt%d",icone,ipt);
4092 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]);
4098 snprintf(name, buffersize,
"hEtaPhiFracPtSum_Decay_Cone_%d_Pt%d",icone,ipt);
4099 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]);
4111 snprintf(name , buffersize,
"hPtThreshMC%s_Cone_%d_Pt%d",mcPartName[imc].
Data(),icone,ipt);
4112 snprintf(title, buffersize,
"Isolated %s #it{p}_{T} for #it{R}=%2.2f and #it{p}_{T}^{th}=%2.2f",
4120 snprintf(name , buffersize,
"hPtFracMC%s_Cone_%d_Pt%d",mcPartName[imc].
Data(),icone,ipt);
4121 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",
4128 snprintf(name , buffersize,
"hSumPtMC%s_Cone_%d_Pt%d",mcPartName[imc].
Data(),icone,ipt);
4129 snprintf(title, buffersize,
"Isolated %s #it{p}_{T} for #it{R}=%2.2f and #Sigma #it{p}_{T}^{in cone}=%2.2f",
4143 for (Int_t i = 0; i < 7 ; i++)
4146 Form(
"Number of isolated particles vs E, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4147 nptbins,ptmin,ptmax);
4153 Form(
"Number of isolated particles vs #it{p}_{T}, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4154 nptbins,ptmin,ptmax);
4160 Form(
"Number of not isolated particles vs E, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4161 nptbins,ptmin,ptmax);
4167 Form(
"Number of not isolated particles vs #it{p}_{T}, %s, pile-up event by %s",parTitle.Data(),pileUpName[i].Data()),
4168 nptbins,ptmin,ptmax);
4174 fhTimeENoCut =
new TH2F (
"hTimeE_NoCut",
"time of cluster vs E of clusters, no cut", nptbins,ptmin,ptmax, ntimebins,timemin,timemax);
4179 fhTimeESPD =
new TH2F (
"hTimeE_SPD",
"time of cluster vs E of clusters, SPD cut", nptbins,ptmin,ptmax, ntimebins,timemin,timemax);
4184 fhTimeESPDMulti =
new TH2F (
"hTimeE_SPDMulti",
"time of cluster vs E of clusters, SPD multi cut", nptbins,ptmin,ptmax, ntimebins,timemin,timemax);
4189 fhTimeNPileUpVertSPD =
new TH2F (
"hTime_NPileUpVertSPD",
"time of cluster vs N pile-up SPD vertex", ntimebins,timemin,timemax,50,0,50);
4194 fhTimeNPileUpVertTrack =
new TH2F (
"hTime_NPileUpVertTracks",
"time of cluster vs N pile-up Tracks vertex", ntimebins,timemin,timemax, 50,0,50 );
4199 fhTimeNPileUpVertContributors =
new TH2F (
"hTime_NPileUpVertContributors",
"time of cluster vs N constributors to pile-up SPD vertex", ntimebins,timemin,timemax,50,0,50);
4204 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);
4209 fhTimePileUpMainVertexZDiamond =
new TH2F (
"hTime_PileUpMainVertexZDiamond",
"time of cluster vs distance in Z pile-up SPD vertex - z diamond",ntimebins,timemin,timemax,100,0,50);
4215 return outputContainer ;
4275 AliInfo(
"Open default isolation cuts for multiple Isolation analysis");
4282 AliFatal(
"STOP!: You want to use CTS tracks in analysis but not read!! \n!!Check the configuration file!!");
4345 Double_t phiTrig = 0 ;
4347 AliAODPWG4ParticleCorrelation* pLeading = 0;
4353 AliAODPWG4ParticleCorrelation* particle = (AliAODPWG4ParticleCorrelation*) (
GetInputAODBranch()->At(iaod));
4354 particle->SetLeadingParticle(kFALSE);
4360 if(check == 0)
continue;
4361 if(check == -1)
return kFALSE;
4373 if (particle->Pt() > ptTrig)
4375 ptTrig = particle->Pt() ;
4376 phiTrig = particle->Phi();
4378 pLeading = particle ;
4382 if(index < 0)
return kFALSE;
4388 if(phiTrig < 0 ) phiTrig += TMath::TwoPi();
4392 for(Int_t ipr = 0;ipr <
GetCTSTracks()->GetEntriesFast() ; ipr ++ )
4394 AliVTrack * track = (AliVTrack *) (
GetCTSTracks()->At(ipr)) ;
4396 if(track->GetID() == pLeading->GetTrackLabel(0) || track->GetID() == pLeading->GetTrackLabel(1) ||
4397 track->GetID() == pLeading->GetTrackLabel(2) || track->GetID() == pLeading->GetTrackLabel(3) )
continue ;
4399 fTrackVector.SetXYZ(track->Px(),track->Py(),track->Pz());
4402 if(phi < 0) phi+=TMath::TwoPi();
4406 Float_t deltaPhi = phiTrig-phi;
4412 if(deltaPhi <= -TMath::PiOver2()) deltaPhi+=TMath::TwoPi();
4413 if(deltaPhi > 3*TMath::PiOver2()) deltaPhi-=TMath::TwoPi();
4415 if(pt > ptTrig && deltaPhi < TMath::PiOver2())
return kFALSE;
4424 TObjArray * nePl = 0x0;
4425 if (pLeading->GetDetectorTag() ==
kPHOS )
4430 if(!nePl)
return kTRUE;
4432 for(Int_t ipr = 0;ipr < nePl->GetEntriesFast() ; ipr ++ )
4434 AliVCluster * cluster = (AliVCluster *) (nePl->At(ipr)) ;
4436 if(cluster->GetID() == pLeading->GetCaloLabel(0) || cluster->GetID() == pLeading->GetCaloLabel(1) )
continue ;
4442 if(phi < 0) phi+=TMath::TwoPi();
4449 Float_t deltaPhi = phiTrig-phi;
4450 if(deltaPhi <= -TMath::PiOver2()) deltaPhi+=TMath::TwoPi();
4451 if(deltaPhi > 3*TMath::PiOver2()) deltaPhi-=TMath::TwoPi();
4453 if(pt > ptTrig && deltaPhi < TMath::PiOver2())
return kFALSE ;
4459 pLeading->SetLeadingParticle(kTRUE);
4461 AliDebug(1,Form(
"Particle AOD with index %d is leading with pT %2.2f",idLeading, pLeading->Pt()));
4474 AliFatal(Form(
"No input particles in AOD with name branch < %s >, STOP",
GetInputAODName().
Data()));
4476 if(strcmp(
GetInputAODBranch()->GetClass()->GetName(),
"AliAODPWG4ParticleCorrelation"))
4477 AliFatal(Form(
"Wrong type of AOD object, change AOD class name in input AOD: It should be <AliAODPWG4ParticleCorrelation> and not <%s>",
4480 Int_t n = 0, nfrac = 0;
4481 Bool_t isolated = kFALSE ;
4482 Float_t coneptsum = 0, coneptlead = 0;
4483 TObjArray * pl = 0x0; ;
4492 Int_t idLeading = -1 ;
4496 AliDebug(1,Form(
"Input aod branch entries %d", naod));
4503 AliDebug(1,
"Not leading; End fill AODs");
4512 for(Int_t iaod = iaod0; iaod < naod; iaod++)
4514 AliAODPWG4ParticleCorrelation * aodinput = (AliAODPWG4ParticleCorrelation*) (
GetInputAODBranch()->At(iaod));
4521 if(! in ) continue ;
4525 Float_t pt = aodinput->Pt();
4537 n=0; nfrac = 0; isolated = kFALSE; coneptsum = 0; coneptlead = 0;
4541 n,nfrac,coneptsum,coneptlead,isolated);
4545 AliDebug(1,Form(
"Particle isolated? %i; if so with index %d",isolated,iaod));
4561 AliDebug(1,Form(
"Histo aod branch entries %d", naod));
4563 for(Int_t iaod = 0; iaod < naod ; iaod++)
4565 AliAODPWG4ParticleCorrelation* aod = (AliAODPWG4ParticleCorrelation*) (
GetInputAODBranch()->At(iaod));
4573 if(! in ) continue ;
4576 Float_t pt = aod->Pt();
4581 Int_t mcTag = aod->GetTag() ;
4598 Bool_t isolated = kFALSE;
4599 Int_t n = 0, nfrac = 0;
4600 Float_t coneptsum = 0, coneptlead = 0;
4609 n,nfrac,coneptsum,coneptlead,isolated);
4612 Bool_t isolated = aod->IsIsolated();
4613 Float_t
energy = aod->E();
4614 Float_t phi = aod->Phi();
4615 Float_t eta = aod->Eta();
4616 Float_t m02 = aod->GetM02();
4617 Int_t iSM = aod->GetSModNumber();
4619 AliDebug(1,Form(
"pt %1.1f, eta %1.1f, phi %1.1f, Isolated %d",pt, eta, phi, isolated));
4624 AliVCluster *cluster = 0;
4632 Int_t etaRegion = -1, phiRegion = -1;
4636 if(etaRegion >= 0 && etaRegion < 4 && phiRegion >=0 && phiRegion < 3)
4648 if(m02 >=0.3 && m02 <= 0.4)
4650 Float_t ptLimit[] = {2,3,4,5,6,8,10,12};
4652 for(Int_t ipt = 0; ipt < 7; ipt++)
4654 if( pt >= ptLimit[ipt] && pt < ptLimit[ipt+1] )
4672 Int_t
pdg = 0, status = 0, momLabel = -1;
4673 Int_t pdgD = 0, statusD = 0, daugLabel = -1;
4674 Bool_t ok = kFALSE, okD = kFALSE;
4696 if ( prodR < 75. ) convR = 0;
4697 else if ( prodR < 275. ) convR = 1;
4698 else if ( prodR < 375. ) convR = 2;
4699 else if ( prodR < 400. ) convR = 3;
4700 else if ( prodR < 430. ) convR = 4;
4738 Float_t coneptLeadCluster= 0;
4739 Float_t coneptLeadTrack = 0;
4740 Float_t coneptsumCluster = 0;
4741 Float_t coneptsumTrack = 0;
4742 Float_t coneptsumCell = 0;
4743 Float_t etaBandptsumClusterNorm = 0;
4744 Float_t etaBandptsumTrackNorm = 0;