11 #include <THnSparse.h>
14 #include <TLorentzVector.h>
16 #include <TProfile2D.h>
17 #include <TProfile3D.h>
20 #include <TClonesArray.h>
21 #include <TObjArray.h>
26 #include "AliAnalysisManager.h"
28 #include "AliESDtrackCuts.h"
29 #include "AliESDEvent.h"
30 #include "AliESDInputHandler.h"
31 #include "AliAODEvent.h"
32 #include "AliVEvent.h"
33 #include "AliMCEvent.h"
34 #include "AliVTrack.h"
35 #include "AliVCluster.h"
37 #include "AliEMCALGeometry.h"
38 #include "AliEMCALRecoUtils.h"
39 #include "AliVCaloCells.h"
63 fhComplementaryTrackPt(0),
64 fhComplementaryTrackEta(0),
65 fhComplementaryTrackPhi(0),
72 fhChargeAndNeutralEvents(0),
73 fhChargeOnlyEvents(0),
74 fhNeutralOnlyEvents(0),
76 fhEMCalChargeAndNeutralEvents(0),
77 fhEMCalChargeOnlyEvents(0),
78 fhEMCalNeutralOnlyEvents(0),
79 fhEMCalNothingEvents(0),
84 fhGlobalTrackEtaPhi(0),
85 fhGlobalTrackPhiPt(0),
86 fhGlobalTrackEtaPt(0),
87 fhComplementaryTrackEtaPhi(0),
88 fhComplementaryTrackPhiPt(0),
89 fhComplementaryTrackEtaPt(0),
95 fhEMCalTrackEventMult(0),
101 fpClusterPtProfile(0),
103 fpFullJetEDProfile(0),
104 fpChargedJetEDProfile(0),
105 fpChargedJetEDProfileScaled(0),
109 fRhoChargedCMSScale(0),
123 fRhoChargedkTScale(0),
134 fEMCalPartJetUnbiased(0),
157 fEMCalPhiMin(1.39626),
158 fEMCalPhiMax(3.26377),
159 fEMCalPhiTotal(1.86750),
166 fTPCPhiTotal(6.28319),
172 fParticlePtUp(200.0),
173 fParticlePtBins(200),
179 fJetAreaCutFrac(0.6),
180 fJetAreaThreshold(0.30159),
186 fNEFSignalJetCut(0.9),
187 fCentralityTag("V0A"),
204 fEMCalJetThreshold(5),
216 fmyAKTChargedJets(0),
223 fEMCalRCBckgFlucSignal(0),
224 fTPCRCBckgFlucSignal(0),
225 fEMCalRCBckgFlucNColl(0),
226 fTPCRCBckgFlucNColl(0)
229 fVertex[0]=0.0,fVertex[1]=0.0,fVertex[2]=0.0;
245 fhComplementaryTrackPt(0),
246 fhComplementaryTrackEta(0),
247 fhComplementaryTrackPhi(0),
252 fhEMCalCellCounts(0),
254 fhChargeAndNeutralEvents(0),
255 fhChargeOnlyEvents(0),
256 fhNeutralOnlyEvents(0),
258 fhEMCalChargeAndNeutralEvents(0),
259 fhEMCalChargeOnlyEvents(0),
260 fhEMCalNeutralOnlyEvents(0),
261 fhEMCalNothingEvents(0),
266 fhGlobalTrackEtaPhi(0),
267 fhGlobalTrackPhiPt(0),
268 fhGlobalTrackEtaPt(0),
269 fhComplementaryTrackEtaPhi(0),
270 fhComplementaryTrackPhiPt(0),
271 fhComplementaryTrackEtaPt(0),
277 fhEMCalTrackEventMult(0),
283 fpClusterPtProfile(0),
285 fpFullJetEDProfile(0),
286 fpChargedJetEDProfile(0),
287 fpChargedJetEDProfileScaled(0),
291 fRhoChargedCMSScale(0),
305 fRhoChargedkTScale(0),
316 fEMCalPartJetUnbiased(0),
339 fEMCalPhiMin(1.39626),
340 fEMCalPhiMax(3.26377),
341 fEMCalPhiTotal(1.86750),
348 fTPCPhiTotal(6.28319),
354 fParticlePtUp(200.0),
355 fParticlePtBins(2000),
361 fJetAreaCutFrac(0.6),
362 fJetAreaThreshold(0.30159),
368 fNEFSignalJetCut(0.9),
369 fCentralityTag(
"V0A"),
386 fEMCalJetThreshold(5),
398 fmyAKTChargedJets(0),
405 fEMCalRCBckgFlucSignal(0),
406 fTPCRCBckgFlucSignal(0),
407 fEMCalRCBckgFlucNColl(0),
408 fTPCRCBckgFlucNColl(0)
416 DefineOutput(1,TList::Class());
424 if (
fOutput && !AliAnalysisManager::GetAnalysisManager()->IsProofMode())
478 Int_t CentralityBinMult=10;
519 fhTrackPt->GetXaxis()->SetTitle(
"p_{T} (GeV/c)");
520 fhTrackPt->GetYaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}");
523 fhTrackPhi =
new TH1F(
"fhTrackPhi",
"#varphi distribution of tracks in event",TCBins,fTPCPhiMin,
fTPCPhiMax);
525 fhTrackPhi->GetYaxis()->SetTitle(
"1/N_{Events} dN/d#varphi");
528 fhTrackEta =
new TH1F(
"fhTrackEta",
"#eta distribution of tracks in event",TCBins,fTPCEtaMin,
fTPCEtaMax);
530 fhTrackEta->GetYaxis()->SetTitle(
"1/N_{Events} dN/d#eta");
536 fhTrackEtaPhi->GetZaxis()->SetTitle(
"1/N_{Events} dN/d#etad#varphi");
542 fhTrackPhiPt->GetZaxis()->SetTitle(
"1/N_{Events} dN/d#varphidp_{T}");
548 fhTrackEtaPt->GetZaxis()->SetTitle(
"1/N_{Events} dN/d#etadp_{T}");
557 fhGlobalTrackPhi =
new TH1F(
"fhGlobalTrackPhi",
"Global #varphi distribution of tracks in event",TCBins,fTPCPhiMin,
fTPCPhiMax);
622 fhTPCEventMult->GetZaxis()->SetTitle(
"1/N_{Events} dN/dCentdN_{Charged}");
672 fhClusterPt->GetXaxis()->SetTitle(
"p_{T} (GeV/c)");
673 fhClusterPt->GetYaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}");
676 fhClusterPhi =
new TH1F(
"fhClusterPhi",
"#varphi distribution of clusters in event",TCBins,fTPCPhiMin,
fTPCPhiMax);
678 fhClusterPhi->GetYaxis()->SetTitle(
"1/N_{Events} dN/d#varphi");
681 fhClusterEta =
new TH1F(
"fhClusterEta",
"#eta distribution of clusters in event",TCBins,fTPCEtaMin,
fTPCEtaMax);
683 fhClusterEta->GetYaxis()->SetTitle(
"1/N_{Events} dN/d#eta");
689 fhClusterEtaPhi->GetZaxis()->SetTitle(
"1/N_{Events} dN/d#etad#varphi");
695 fhClusterPhiPt->GetZaxis()->SetTitle(
"1/N_{Events} dN/d#varphidp_{T}");
701 fhClusterEtaPt->GetZaxis()->SetTitle(
"1/N_{Events} dN/d#etadp_{T}");
707 fhEMCalEventMult->GetZaxis()->SetTitle(
"1/N_{Events} dN/dCentdN_{Neutral}");
766 const Int_t fullEDBins = (Int_t) fullEDR;
767 const Int_t chargedEDBins = (Int_t) chargedEDR;
769 fpFullJetEDProfile =
new TProfile3D(
"fpFullJetEDProfile",
"Jet ED Profile for #varphi_{jet}#in(#varphi_{EMCal min} + R,#varphi_{EMCal max} - R) & #eta_{jet}#in(#eta_{EMCal min} + R,#eta_{EMCal max} - R)",
fParticlePtBins,
fParticlePtLow,
fParticlePtUp,
fCentralityBins,
fCentralityLow,
fCentralityUp,fullEDBins,0,
fFullEDJetR);
774 fpChargedJetEDProfile =
new TProfile3D(
"fpChargedJetEDProfile",
"Charged Jet ED Profile for #eta_{jet}#in(#eta_{TPC min} + R,#eta_{TPC max} - R)",
fParticlePtBins,
fParticlePtLow,
fParticlePtUp,
fCentralityBins,
fCentralityLow,
fCentralityUp,chargedEDBins,0,
fChargedEDJetR);
779 fpChargedJetEDProfileScaled =
new TProfile3D(
"fpChargedJetEDProfileScaled",
"Charged Jet ED Profile x SF for #eta_{jet}#in(#eta_{TPC min} + R,#eta_{TPC max} - R)",
fParticlePtBins,
fParticlePtLow,
fParticlePtUp,
fCentralityBins,
fCentralityLow,
fCentralityUp,chargedEDBins,0,
fChargedEDJetR);
936 AliError(
"Pointer == 0, this can not happen!");
944 AliESDEvent* esd =
dynamic_cast<AliESDEvent*
>(
fEvent);
945 AliAODEvent* aod =
dynamic_cast<AliAODEvent*
>(
fEvent);
957 if (TMath::Sqrt(TMath::Power(esd->GetPrimaryVertex()->GetX(),2)+TMath::Power(esd->GetPrimaryVertex()->GetY(),2))>
fVertexMaxR)
964 esd->GetPrimaryVertex()->GetXYZ(
fVertex);
965 fCells = (AliVCaloCells*) esd->GetEMCALCells();
975 if (TMath::Sqrt(TMath::Power(aod->GetPrimaryVertex()->GetX(),2)+TMath::Power(aod->GetPrimaryVertex()->GetY(),2))>
fVertexMaxR)
982 aod->GetPrimaryVertex()->GetXYZ(
fVertex);
983 fCells = (AliVCaloCells*) aod->GetEMCALCells();
988 AliError(
"Cannot get AOD/ESD event. Rejecting Event");
1012 AliWarning(
"No PicoTracks, Rejecting Event");
1080 AliVTrack* vtrack = (AliVTrack*)
fOrgTracks->At(i);
1084 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta()) == kTRUE)
1100 TLorentzVector *cluster_vec =
new TLorentzVector;
1103 AliVCluster* vcluster = (AliVCluster*)
fOrgClusters->At(i);
1104 vcluster->GetMomentum(*cluster_vec,
fVertex);
1106 if (cluster_vec->Pt()>=
fClusterMinPt && vcluster->IsEMCAL()==kTRUE)
1208 hdummypT->Fill(vtrack->
Eta(),vtrack->
Phi(),vtrack->
Pt());
1210 for (i=1;i<=TCBins;i++)
1212 for (j=1;j<=TCBins;j++)
1214 fpTrackPtProfile->Fill(hdummypT->GetXaxis()->GetBinCenter(i),hdummypT->GetYaxis()->GetBinCenter(j),
fTPCArea*TMath::Power(TCBins,-2)*hdummypT->GetBinContent(i,j));
1227 TLorentzVector *cluster_vec =
new TLorentzVector;
1231 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(i);
1233 if(!vcluster)
continue;
1234 vcluster->GetMomentum(*cluster_vec,
fVertex);
1243 hdummypT->Fill(cluster_vec->Eta(),cluster_vec->Phi(),cluster_vec->Pt());
1244 fEMCALGeometry->GetAbsCellIdFromEtaPhi(cluster_vec->Eta(),cluster_vec->Phi(),myCellID);
1247 for (i=1;i<=TCBins;i++)
1249 for (j=1;j<=TCBins;j++)
1251 fpClusterPtProfile->Fill(hdummypT->GetXaxis()->GetBinCenter(i),hdummypT->GetYaxis()->GetBinCenter(j),
fEMCalArea*TMath::Power(TCBins,-2)*hdummypT->GetBinContent(i,j));
1367 Double_t E_tracks_total=0.;
1368 TRandom3 u(time(NULL));
1373 Int_t event_track_mult=0;
1383 TLorentzVector *dummy=
new TLorentzVector;
1384 TLorentzVector *temp_jet=
new TLorentzVector;
1385 TLorentzVector *track_vec =
new TLorentzVector;
1392 dummy->SetPtEtaPhiE(1,u.Uniform(Eta_Center-
fJetR,Eta_Center+
fJetR),u.Uniform(Phi_Center-
fJetR,Phi_Center+
fJetR),0);
1396 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
1397 if (
IsInTPC(
fJetR,vtrack->Phi(),vtrack->Eta(),kFALSE)==kTRUE)
1399 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
1400 if (dummy->DeltaR(*track_vec)<
fJetR)
1402 E_tracks_total+=vtrack->Pt();
1413 temp_jet->SetPtEtaPhiE(1,u.Uniform(Eta_Center-
fJetR,Eta_Center+
fJetR),u.Uniform(Phi_Center-
fJetR,Phi_Center+
fJetR),0);
1428 dummy->SetPtEtaPhiE(1,u.Uniform(Eta_Center-
fJetR,Eta_Center+
fJetR),u.Uniform(Phi_Center-
fJetR,Phi_Center+
fJetR),0);
1429 while (temp_jet->DeltaR(*dummy)<
fJetR)
1431 dummy->SetPtEtaPhiE(1,u.Uniform(Eta_Center-
fJetR,Eta_Center+
fJetR),u.Uniform(Phi_Center-
fJetR,Phi_Center+
fJetR),0);
1436 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
1437 if (
IsInTPC(
fJetR,vtrack->Phi(),vtrack->Eta(),kFALSE) == kTRUE)
1440 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta()) == kTRUE)
1444 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
1445 if (dummy->DeltaR(*track_vec)<
fJetR)
1448 E_tracks_total+=vtrack->Pt();
1466 Double_t exclusion_prob;
1469 exclusion_prob = u.Uniform(0,1);
1470 if (exclusion_prob<(1/
fNColl))
1488 Double_t E_tracks_total=0.;
1489 Double_t E_caloclusters_total=0.;
1490 TRandom3 u(time(NULL));
1504 TLorentzVector *dummy=
new TLorentzVector;
1505 TLorentzVector *temp_jet=
new TLorentzVector;
1506 TLorentzVector *track_vec =
new TLorentzVector;
1507 TLorentzVector *cluster_vec =
new TLorentzVector;
1513 E_caloclusters_total=0.;
1515 dummy->SetPtEtaPhiE(1,u.Uniform(Eta_Center-
fJetR,Eta_Center+
fJetR),u.Uniform(Phi_Center-
fJetR,Phi_Center+
fJetR),0);
1519 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
1520 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta())==kTRUE)
1522 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
1523 if (dummy->DeltaR(*track_vec)<
fJetR)
1525 E_tracks_total+=vtrack->Pt();
1533 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(i);
1534 vcluster->GetMomentum(*cluster_vec,
fVertex);
1535 if (dummy->DeltaR(*cluster_vec)<
fJetR)
1538 E_caloclusters_total+=cluster_vec->Pt();
1546 E_caloclusters_total=0.;
1549 temp_jet->SetPtEtaPhiE(1,u.Uniform(Eta_Center-
fJetR,Eta_Center+
fJetR),u.Uniform(Phi_Center-
fJetR,Phi_Center+
fJetR),0);
1562 E_caloclusters_total=0.;
1564 dummy->SetPtEtaPhiE(1,u.Uniform(Eta_Center-
fJetR,Eta_Center+
fJetR),u.Uniform(Phi_Center-
fJetR,Phi_Center+
fJetR),0);
1565 while (temp_jet->DeltaR(*dummy)<
fJetR)
1567 dummy->SetPtEtaPhiE(1,u.Uniform(Eta_Center-
fJetR,Eta_Center+
fJetR),u.Uniform(Phi_Center-
fJetR,Phi_Center+
fJetR),0);
1572 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
1573 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta())==kTRUE)
1576 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
1577 if (dummy->DeltaR(*track_vec)<
fJetR)
1580 E_tracks_total+=vtrack->Pt();
1588 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(i);
1589 vcluster->GetMomentum(*cluster_vec,
fVertex);
1591 if (dummy->DeltaR(*cluster_vec)<
fJetR)
1594 E_caloclusters_total+=cluster_vec->Pt();
1607 Double_t exclusion_prob;
1610 exclusion_prob = u.Uniform(0,1);
1611 if (exclusion_prob<(1/
fNColl))
1631 Double_t E_tracks_total=0.0;
1632 Double_t TPC_rho=0.0;
1637 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
1638 if (
IsInTPC(
fJetR,vtrack->Phi(),vtrack->Eta(),kFALSE)==kTRUE)
1640 E_tracks_total+=vtrack->Pt();
1663 Double_t E_tracks_total=0.0;
1664 Double_t TPC_rho=0.;
1666 TLorentzVector *temp_jet=
new TLorentzVector;
1667 TLorentzVector *track_vec =
new TLorentzVector;
1677 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
1678 if (
IsInTPC(
fJetR,vtrack->Phi(),vtrack->Eta(),kFALSE)==kTRUE)
1680 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
1683 E_tracks_total+=vtrack->Pt();
1696 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
1697 if (
IsInTPC(
fJetR,vtrack->Phi(),vtrack->Eta(),kFALSE)==kTRUE)
1699 E_tracks_total+=vtrack->Pt();
1721 Double_t E_tracks_total=0.0;
1722 Double_t TPC_rho=0.;
1724 TLorentzVector *temp_jet1=
new TLorentzVector;
1725 TLorentzVector *temp_jet2=
new TLorentzVector;
1726 TLorentzVector *track_vec =
new TLorentzVector;
1739 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
1740 if (
IsInTPC(
fJetR,vtrack->Phi(),vtrack->Eta(),kFALSE)==kTRUE)
1742 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
1745 E_tracks_total+=vtrack->Pt();
1761 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
1762 if (
IsInTPC(
fJetR,vtrack->Phi(),vtrack->Eta(),kFALSE)==kTRUE)
1764 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
1767 E_tracks_total+=vtrack->Pt();
1780 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
1781 if (
IsInTPC(
fJetR,vtrack->Phi(),vtrack->Eta(),kFALSE)==kTRUE)
1783 E_tracks_total+=vtrack->Pt();
1807 Bool_t track_away_from_jet;
1808 Double_t E_tracks_total=0.0;
1809 Double_t TPC_rho=0.0;
1810 Double_t jet_area_total=0.0;
1812 TLorentzVector *jet_vec=
new TLorentzVector;
1813 TLorentzVector *track_vec =
new TLorentzVector;
1819 AliVTrack* vtrack = (AliVTrack*)
fmyTracks->At(i);
1820 if (
IsInTPC(
fJetR,vtrack->Phi(),vtrack->Eta(),kFALSE)==kTRUE)
1824 E_tracks_total+=vtrack->Pt();
1828 track_away_from_jet=kTRUE;
1830 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
1831 while (track_away_from_jet==kTRUE && j<fTPCJetUnbiased->GetTotalSignalJets())
1837 track_away_from_jet=kFALSE;
1841 if (track_away_from_jet==kTRUE)
1843 E_tracks_total+=vtrack->Pt();
1866 TPC_rho = E_tracks_total/(
fTPCArea-jet_area_total);
1882 Bool_t track_away_from_jet;
1883 Double_t E_tracks_total=0.0;
1884 Double_t TPC_rho=0.0;
1885 Double_t jet_area_total=0.0;
1887 TLorentzVector *jet_vec=
new TLorentzVector;
1888 TLorentzVector *track_vec =
new TLorentzVector;
1894 AliVTrack* vtrack = (AliVTrack*)
fmyTracks->At(i);
1895 if (
IsInTPC(
fJetR,vtrack->Phi(),vtrack->Eta(),kFALSE)==kTRUE)
1899 E_tracks_total+=vtrack->Pt();
1903 track_away_from_jet=kTRUE;
1905 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
1906 while (track_away_from_jet==kTRUE && j<fTPCJetUnbiased->GetTotalSignalJets())
1912 track_away_from_jet=kFALSE;
1916 if (track_away_from_jet==kTRUE)
1918 E_tracks_total+=vtrack->Pt();
1941 TPC_rho = E_tracks_total/(
fTPCArea-jet_area_total);
1958 Double_t kTRho = 0.0;
1965 pTArray[i]=myJet->
Pt();
1966 RhoArray[i]=myJet->
Pt()/myJet->
Area();
1988 Double_t kTRho = 0.0;
1995 pTArray[i]=myJet->
Pt();
1996 RhoArray[i]=myJet->
Pt()/myJet->
Area();
2019 Double_t kTRho = 0.0;
2020 Double_t CMSTotalkTArea = 0.0;
2021 Double_t CMSTrackArea = 0.0;
2022 Double_t CMSCorrectionFactor = 1.0;
2036 CMSTotalkTArea+=myJet->
Area();
2039 CMSTrackArea+=myJet->
Area();
2043 pTArray[k]=myJet->
Pt();
2044 RhoArray[k]=myJet->
Pt()/myJet->
Area();
2065 CMSTotalkTArea+=myJet->
Area();
2068 CMSTrackArea+=myJet->
Area();
2072 pTArray[k]=myJet->
Pt();
2073 RhoArray[k]=myJet->
Pt()/myJet->
Area();
2092 CMSTotalkTArea+=myJet->
Area();
2095 CMSTrackArea+=myJet->
Area();
2097 pTArray[k]=myJet->
Pt();
2098 RhoArray[k]=myJet->
Pt()/myJet->
Area();
2111 if (CMSTotalkTArea==0.0)
2113 CMSCorrectionFactor = 1.0;
2120 kTRho*=CMSCorrectionFactor;
2135 Double_t kTRho = 0.0;
2136 Double_t CMSTotalkTArea = 0.0;
2137 Double_t CMSTrackArea = 0.0;
2138 Double_t CMSCorrectionFactor = 1.0;
2152 CMSTotalkTArea+=myJet->
Area();
2155 CMSTrackArea+=myJet->
Area();
2159 pTArray[k]=myJet->
Pt();
2160 RhoArray[k]=myJet->
Pt()/myJet->
Area();
2181 CMSTotalkTArea+=myJet->
Area();
2184 CMSTrackArea+=myJet->
Area();
2188 pTArray[k]=myJet->
Pt();
2189 RhoArray[k]=myJet->
Pt()/myJet->
Area();
2208 CMSTotalkTArea+=myJet->
Area();
2211 CMSTrackArea+=myJet->
Area();
2213 pTArray[k]=myJet->
Pt();
2214 RhoArray[k]=myJet->
Pt()/myJet->
Area();
2228 if (CMSTotalkTArea==0.0)
2230 CMSCorrectionFactor = 1.0;
2236 kTRho*=CMSCorrectionFactor;
2245 fRhoChargedCMSScale->
DoNEFAnalysis(
fNEFSignalJetCut,
fEMCalJetThreshold,
fmyAKTFullJets,
fEMCalFullJet->
GetJets(),
fEMCalFullJet->
GetTotalJets(),
fmyClusters,
fOrgClusters,
fEvent,
fEMCALGeometry,
fRecoUtil,
fCells);
2257 Double_t E_tracks_total=0.0;
2258 Double_t E_caloclusters_total=0.0;
2259 Double_t EMCal_rho=0.0;
2261 TLorentzVector *cluster_vec =
new TLorentzVector;
2266 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
2267 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta())==kTRUE)
2269 E_tracks_total+=vtrack->Pt();
2276 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(i);
2277 vcluster->GetMomentum(*cluster_vec,
fVertex);
2278 E_caloclusters_total+=cluster_vec->Pt();
2283 EMCal_rho=(E_tracks_total+E_caloclusters_total)/
fEMCalArea;
2299 Double_t E_tracks_total=0.0;
2300 Double_t E_caloclusters_total=0.0;
2301 Double_t EMCal_rho=0.0;
2303 TLorentzVector *temp_jet=
new TLorentzVector;
2304 TLorentzVector *track_vec =
new TLorentzVector;
2305 TLorentzVector *cluster_vec =
new TLorentzVector;
2315 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
2316 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta())==kTRUE)
2318 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
2321 E_tracks_total+=vtrack->Pt();
2329 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(i);
2330 vcluster->GetMomentum(*cluster_vec,
fVertex);
2333 E_caloclusters_total+=cluster_vec->Pt();
2344 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
2345 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta())==kTRUE)
2347 E_tracks_total+=vtrack->Pt();
2354 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(i);
2355 vcluster->GetMomentum(*cluster_vec,
fVertex);
2356 E_caloclusters_total+=cluster_vec->Pt();
2359 EMCal_rho=(E_tracks_total+E_caloclusters_total)/
fEMCalArea;
2378 Double_t E_tracks_total=0.0;
2379 Double_t E_caloclusters_total=0.0;
2380 Double_t EMCal_rho=0.0;
2382 TLorentzVector *temp_jet1 =
new TLorentzVector;
2383 TLorentzVector *temp_jet2 =
new TLorentzVector;
2384 TLorentzVector *track_vec =
new TLorentzVector;
2385 TLorentzVector *cluster_vec =
new TLorentzVector;
2398 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
2399 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta())==kTRUE)
2401 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
2404 E_tracks_total+=vtrack->Pt();
2412 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(i);
2413 vcluster->GetMomentum(*cluster_vec,
fVertex);
2416 E_caloclusters_total+=cluster_vec->Pt();
2431 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
2432 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta())==kTRUE)
2434 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
2437 E_tracks_total+=vtrack->Pt();
2445 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(i);
2446 vcluster->GetMomentum(*cluster_vec,
fVertex);
2449 E_caloclusters_total+=cluster_vec->Pt();
2460 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
2461 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta())==kTRUE)
2463 E_tracks_total+=vtrack->Pt();
2470 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(i);
2471 vcluster->GetMomentum(*cluster_vec,
fVertex);
2472 E_caloclusters_total+=cluster_vec->Pt();
2475 EMCal_rho=(E_tracks_total+E_caloclusters_total)/
fEMCalArea;
2495 Bool_t track_away_from_jet;
2496 Bool_t cluster_away_from_jet;
2497 Double_t E_tracks_total=0.0;
2498 Double_t E_caloclusters_total=0.0;
2499 Double_t EMCal_rho=0.0;
2500 Double_t jet_area_total=0.0;
2502 TLorentzVector *jet_vec=
new TLorentzVector;
2503 TLorentzVector *track_vec =
new TLorentzVector;
2504 TLorentzVector *cluster_vec =
new TLorentzVector;
2510 AliVTrack* vtrack = (AliVTrack*)
fmyTracks->At(i);
2511 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta())==kTRUE)
2515 E_tracks_total+=vtrack->Pt();
2519 track_away_from_jet=kTRUE;
2521 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
2522 while (track_away_from_jet==kTRUE && j<fEMCalPartJetUnbiased->GetTotalSignalJets())
2528 track_away_from_jet=kFALSE;
2532 if (track_away_from_jet==kTRUE)
2534 E_tracks_total+=vtrack->Pt();
2543 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(i);
2544 vcluster->GetMomentum(*cluster_vec,
fVertex);
2547 E_caloclusters_total+=cluster_vec->Pt();
2551 cluster_away_from_jet=kTRUE;
2554 while (cluster_away_from_jet==kTRUE && j<fEMCalPartJetUnbiased->GetTotalSignalJets())
2560 cluster_away_from_jet=kFALSE;
2564 if (cluster_away_from_jet==kTRUE)
2566 E_caloclusters_total+=cluster_vec->Pt();
2589 EMCal_rho=(E_tracks_total+E_caloclusters_total)/(
fEMCalArea-jet_area_total);
2604 Double_t E_tracks_total=0.0;
2605 Double_t E_caloclusters_total=0.0;
2606 Double_t EMCal_rho=0.0;
2608 TLorentzVector *cluster_vec =
new TLorentzVector;
2613 AliVTrack* vtrack =(AliVTrack*)
fmyTracks->At(i);
2614 if (
IsInEMCal(vtrack->Phi(),vtrack->Eta())==kTRUE)
2616 E_tracks_total+=vtrack->Pt();
2623 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(i);
2624 vcluster->GetMomentum(*cluster_vec,
fVertex);
2625 E_caloclusters_total+=cluster_vec->Pt();
2631 EMCal_rho=(E_tracks_total+E_caloclusters_total)/
fEMCalArea;
2646 Double_t kTRho = 0.0;
2653 pTArray[i]=myJet->
Pt();
2654 RhoArray[i]=myJet->
Pt()/myJet->
Area();
2679 Double_t kTRho = 0.0;
2680 Double_t CMSTotalkTArea = 0.0;
2681 Double_t CMSParticleArea = 0.0;
2682 Double_t CMSCorrectionFactor = 1.0;
2696 CMSTotalkTArea+=myJet->
Area();
2699 CMSParticleArea+=myJet->
Area();
2703 pTArray[k]=myJet->
Pt();
2704 RhoArray[k]=myJet->
Pt()/myJet->
Area();
2725 CMSTotalkTArea+=myJet->
Area();
2728 CMSParticleArea+=myJet->
Area();
2732 pTArray[k]=myJet->
Pt();
2733 RhoArray[k]=myJet->
Pt()/myJet->
Area();
2752 CMSTotalkTArea+=myJet->
Area();
2755 CMSParticleArea+=myJet->
Area();
2757 pTArray[k]=myJet->
Pt();
2758 RhoArray[k]=myJet->
Pt()/myJet->
Area();
2771 if (CMSTotalkTArea==0.0)
2773 CMSCorrectionFactor = 1.0;
2780 kTRho*=CMSCorrectionFactor;
2799 const Int_t fullEDBins = (Int_t) fullEDR;
2800 Double_t ED_pT[fullEDBins];
2803 TLorentzVector *jet_vec=
new TLorentzVector;
2804 TLorentzVector *track_vec =
new TLorentzVector;
2805 TLorentzVector *cluster_vec =
new TLorentzVector;
2813 for (j=0;j<fullEDBins;j++)
2822 AliVTrack* vtrack = (AliVTrack*)
fmyTracks->At(j);
2823 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
2824 delta_R=jet_vec->DeltaR(*track_vec);
2827 ED_pT[TMath::FloorNint((delta_R/
fFullEDJetR)*fullEDBins)]+=vtrack->Pt();
2834 AliVCluster* vcluster = (AliVCluster*)
fmyClusters->At(j);
2835 vcluster->GetMomentum(*cluster_vec,
fVertex);
2836 delta_R=jet_vec->DeltaR(*cluster_vec);
2839 ED_pT[TMath::FloorNint((delta_R/
fFullEDJetR)*fullEDBins)]+=cluster_vec->Pt();
2843 for (j=0;j<fullEDBins;j++)
2845 ED_pT[j] /= TMath::Pi()*dR*dR*(2*j+1);
2862 const Int_t chargedEDBins = (Int_t) chargedEDR;
2863 Double_t ED_pT[chargedEDBins];
2866 TLorentzVector *jet_vec=
new TLorentzVector;
2867 TLorentzVector *track_vec =
new TLorentzVector;
2874 for (j=0;j<chargedEDBins;j++)
2883 AliVTrack* vtrack = (AliVTrack*)
fmyTracks->At(j);
2884 track_vec->SetPtEtaPhiE(vtrack->Pt(),vtrack->Eta(),vtrack->Phi(),vtrack->E());
2885 delta_R=jet_vec->DeltaR(*track_vec);
2888 ED_pT[TMath::FloorNint((delta_R/
fChargedEDJetR)*chargedEDBins)]+=vtrack->Pt();
2891 for (j=0;j<chargedEDBins;j++)
2893 ED_pT[j] /= TMath::Pi()*dR*dR*(2*j+1);
2911 else if (delOption==1)
2921 else if (delOption==2)
2983 const Double_t dijet_delta_phi=(180/360.)*2*TMath::Pi();
2984 const Double_t dijet_phi_acceptance=0.5*(30/360.)*2*TMath::Pi();
2985 Double_t dummy_phi=0.0;
2991 dummy_phi=TMath::Min(TMath::Abs(myhJet->
Phi()-myJet->
Phi()),2*TMath::Pi()-TMath::Abs(myhJet->
Phi()-myJet->
Phi()));
2992 if (dummy_phi>(dijet_delta_phi-dijet_phi_acceptance))
3003 if (phi>phi_min && phi<phi_max)
3005 if (eta>eta_min && eta<eta_max)
3033 if (in_EMCal==kFALSE && in_TPC==kTRUE)
3042 if (Complete==kTRUE)
3054 Int_t jetCluster1=0;
3055 Int_t jetCluster2=0;
3063 if (jetTrack1 == jetTrack2)
3069 if (EMCalOn == kTRUE)
3077 if (jetCluster1 == jetCluster2)
3102 return r*r*TMath::Pi()-
AreaEdge(r,z);
3145 if (TMath::Sqrt(x*x+y*y)>=r)
3151 else if ((x>=r && y<0) || (y>=r && x<0))
3155 else if (x>0 && x<r && y<0)
3157 Double_t a=TMath::Sqrt(r*r-x*x);
3158 Double_t b=TMath::Sqrt(r*r-y*y);
3161 return r*r*TMath::ASin(b/r)+y*b;
3165 return 0.5*x*a+0.5*r*r*TMath::ASin(x/r)+0.5*y*b+x*y+0.5*r*r*TMath::ASin(b/r);
3168 else if (y>0 && y<r && x<0)
3170 Double_t a=TMath::Sqrt(r*r-x*x);
3171 Double_t b=TMath::Sqrt(r*r-y*y);
3174 return r*r*TMath::ASin(a/r)+x*a;
3178 return 0.5*y*b+0.5*r*r*TMath::ASin(y/r)+0.5*x*a+x*y+0.5*r*r*TMath::ASin(a/r);
3183 Double_t a=TMath::Sqrt(r*r-x*x);
3184 Double_t b=TMath::Sqrt(r*r-y*y);
3191 return 0.5*x*a+0.5*r*r*TMath::ASin(x/r)+0.5*y*b+x*y+0.5*r*r*TMath::ASin(b/r);
3198 Double_t a=TMath::Sqrt(r*r-z*z);
3199 return r*r*TMath::ASin(a/r)-a*z;
3204 Double_t a=TMath::Sqrt(r*r-x*x);
3205 Double_t b=TMath::Sqrt(r*r-y*y);
3206 return x*y-0.5*(x*a+y*b)+0.5*r*r*(TMath::ASin(b/r)-TMath::ASin(x/r));
3211 Double_t area_left=0;
3212 Double_t area_right=0;
3216 Double_t eta_down=0;
3221 Double_t phi1=phi+u*TMath::Tan(psi0);
3222 Double_t phi2=phi-u*TMath::Tan(psi0);
3223 Double_t phi3=phi+v*TMath::Tan(psi0);
3224 Double_t phi4=phi-v*TMath::Tan(psi0);
3238 eta_up=TMath::Max(eta_a,eta_b);
3239 eta_down=TMath::Min(eta_a,eta_b);
3245 area_left=0.5*(
fEMCalPhiMax-phi2+2*(eta-eta_a)*TMath::Tan(psi0))*(eta_a-fEMCalEtaMin) + (eta-eta_a+r)*TMath::Tan(psi0)*(eta-eta_a-r);
3249 area_left=0.5*(phi1-
fEMCalPhiMin+2*(eta-eta_b)*TMath::Tan(psi0))*(eta_b-fEMCalEtaMin) + (eta-eta_b+r)*TMath::Tan(psi0)*(eta-eta_b-r);
3253 area_left=0.5*(phi1-phi2+2*r*TMath::Tan(psi0))*(u-r);
3268 eta_up=TMath::Max(eta_a,eta_b);
3269 eta_down=TMath::Min(eta_a,eta_b);
3275 area_right=0.5*(
fEMCalPhiMax-phi4+2*(eta_a-eta)*TMath::Tan(psi0))*(
fEMCalEtaMax-eta_a) + (eta_a-eta+r)*TMath::Tan(psi0)*(eta_a-eta-r);
3279 area_right=0.5*(phi3-
fEMCalPhiMin+2*(eta_b-eta)*TMath::Tan(psi0))*(
fEMCalEtaMax-eta_b) + (eta_b-eta+r)*TMath::Tan(psi0)*(eta_b-eta-r);
3283 area_right=0.5*(phi3-phi4+2*r*TMath::Tan(psi0))*(v-r);
3285 return area_left+area_right;
3296 const Double_t rho_min=-9.9999E+99;
3298 Double_t w[nEntries];
3299 Double_t smax=rho_min;
3305 for (j=0;j<nEntries;j++)
3310 for (j=0;j<nEntries;j++)
3312 if (pTkTEntries[j]>pTmax)
3314 pTmax=pTkTEntries[j];
3319 for (j=0;j<nEntries;j++)
3321 for (k=0;k<nEntries;k++)
3323 if (RhokTEntries[k]>smax)
3325 smax=RhokTEntries[k];
3330 RhokTEntries[sindex]=rho_min;
3334 return w[nEntries/2];
3358 fSignalTrackBias(0),
3361 fPtSubLeadingIndex(0),
3386 fPtSubLeadingIndex(0),
3408 SetIsJetsFull(kFALSE);
3410 SetTotalSignalJets(0);
3414 SetAreaCutFraction(0);
3417 SetSignalTrackPtBias(kFALSE);
3419 delete [] fJetsIndex;
3420 delete [] fJetsSCIndex;
3421 delete [] fIsJetInArray;
3422 delete [] fJetMaxChargedPt;
3433 Double_t AreaThreshold = fAreaCutFrac*TMath::Pi()*TMath::Power(
fJetR,2);
3436 for (i=0;i<nEntries;i++)
3443 if (myJet->
Pt()>fPtMax)
3445 SetSubLeading(fPtMaxIndex,fPtMax);
3446 SetLeading(i,myJet->
Pt());
3448 else if (myJet->
Pt()>fPtSubLeading)
3450 SetSubLeading(i,myJet->
Pt());
3456 if (fJetMaxChargedPt[i]>=fSignalPt && myJet->
NEF()<=fNEF)
3458 SetSignalJetIndex(i,l);
3464 if (myJet->
Pt()>=fSignalPt && myJet->
NEF()<=fNEF)
3466 SetSignalJetIndex(i,l);
3474 SetTotalSignalJets(l);
3485 fIsJetsFull = isFull;
3491 fJetsIndex =
new Int_t[fnTotal];
3492 fJetsSCIndex =
new Int_t[fnTotal];
3493 fIsJetInArray =
new Bool_t[fnTotal];
3494 fJetMaxChargedPt =
new Double_t[fnTotal];
3504 fnJetsSC = nSignalJets;
3514 fPtMaxIndex = index;
3520 fPtSubLeadingIndex = index;
3526 fJetsIndex[At] = index;
3531 fJetsSCIndex[At] = index;
3536 fIsJetInArray[At] = isInArray;
3541 fAreaCutFrac = areaFraction;
3592 return fPtSubLeadingIndex;
3597 return fPtSubLeading;
3602 return fJetsIndex[At];
3607 return fJetsSCIndex[At];
3612 return fIsJetInArray[At];
3617 return fJetMaxChargedPt[At];
3646 fh80100BSPtSignal(0),
3653 fh020DeltaPtSignal(0),
3654 fh80100DeltaPtSignal(0),
3656 fhDeltaPtCenSignal(0),
3657 fh020DeltaPtNColl(0),
3658 fh80100DeltaPtNColl(0),
3660 fhDeltaPtCenNColl(0),
3662 fh80100BckgFlucPt(0),
3671 fhJetConstituentPt(0),
3674 fhJetConstituentCounts(0),
3675 fhJetTracksCounts(0),
3676 fhJetClustersCounts(0),
3677 fhJetPtZConstituent(0),
3680 fhJetPtZLeadingConstituent(0),
3681 fhJetPtZLeadingTrack(0),
3682 fhJetPtZLeadingCluster(0),
3684 fhEventCentralityVsZNA(0),
3685 fhEventCentralityVsZNAPt(0),
3690 fhJetNEFSignalInfo(0),
3691 fhClusterNEFInfo(0),
3692 fhClusterNEFSignalInfo(0),
3693 fhClusterShapeAll(0),
3694 fhClusterPtCellAll(0),
3717 fLChargedTrackPtBins(0),
3718 fLChargedTrackPtLow(0),
3719 fLChargedTrackPtUp(0),
3752 fh80100BSPtSignal(0),
3759 fh020DeltaPtSignal(0),
3760 fh80100DeltaPtSignal(0),
3762 fhDeltaPtCenSignal(0),
3763 fh020DeltaPtNColl(0),
3764 fh80100DeltaPtNColl(0),
3766 fhDeltaPtCenNColl(0),
3768 fh80100BckgFlucPt(0),
3777 fhJetConstituentPt(0),
3780 fhJetConstituentCounts(0),
3781 fhJetTracksCounts(0),
3782 fhJetClustersCounts(0),
3783 fhJetPtZConstituent(0),
3786 fhJetPtZLeadingConstituent(0),
3787 fhJetPtZLeadingTrack(0),
3788 fhJetPtZLeadingCluster(0),
3790 fhEventCentralityVsZNA(0),
3791 fhEventCentralityVsZNAPt(0),
3796 fhJetNEFSignalInfo(0),
3797 fhClusterNEFInfo(0),
3798 fhClusterNEFSignalInfo(0),
3799 fhClusterShapeAll(0),
3800 fhClusterPtCellAll(0),
3823 fLChargedTrackPtBins(0),
3824 fLChargedTrackPtLow(0),
3825 fLChargedTrackPtUp(0),
3870 fh80100BSPtSignal(0),
3877 fh020DeltaPtSignal(0),
3878 fh80100DeltaPtSignal(0),
3880 fhDeltaPtCenSignal(0),
3881 fh020DeltaPtNColl(0),
3882 fh80100DeltaPtNColl(0),
3884 fhDeltaPtCenNColl(0),
3886 fh80100BckgFlucPt(0),
3895 fhJetConstituentPt(0),
3898 fhJetConstituentCounts(0),
3899 fhJetTracksCounts(0),
3900 fhJetClustersCounts(0),
3901 fhJetPtZConstituent(0),
3904 fhJetPtZLeadingConstituent(0),
3905 fhJetPtZLeadingTrack(0),
3906 fhJetPtZLeadingCluster(0),
3908 fhEventCentralityVsZNA(0),
3909 fhEventCentralityVsZNAPt(0),
3914 fhJetNEFSignalInfo(0),
3915 fhClusterNEFInfo(0),
3916 fhClusterNEFSignalInfo(0),
3917 fhClusterShapeAll(0),
3918 fhClusterPtCellAll(0),
3941 fLChargedTrackPtBins(0),
3942 fLChargedTrackPtLow(0),
3943 fLChargedTrackPtUp(0),
3988 fh80100BSPtSignal(0),
3995 fh020DeltaPtSignal(0),
3996 fh80100DeltaPtSignal(0),
3998 fhDeltaPtCenSignal(0),
3999 fh020DeltaPtNColl(0),
4000 fh80100DeltaPtNColl(0),
4002 fhDeltaPtCenNColl(0),
4004 fh80100BckgFlucPt(0),
4013 fhJetConstituentPt(0),
4016 fhJetConstituentCounts(0),
4017 fhJetTracksCounts(0),
4018 fhJetClustersCounts(0),
4019 fhJetPtZConstituent(0),
4022 fhJetPtZLeadingConstituent(0),
4023 fhJetPtZLeadingTrack(0),
4024 fhJetPtZLeadingCluster(0),
4026 fhEventCentralityVsZNA(0),
4027 fhEventCentralityVsZNAPt(0),
4032 fhJetNEFSignalInfo(0),
4033 fhClusterNEFInfo(0),
4034 fhClusterNEFSignalInfo(0),
4035 fhClusterShapeAll(0),
4036 fhClusterPtCellAll(0),
4059 fLChargedTrackPtBins(0),
4060 fLChargedTrackPtLow(0),
4061 fLChargedTrackPtUp(0),
4120 TString RhoString=
"";
4121 TString PtString=
"";
4122 TString DeltaPtString=
"";
4123 TString BckgFlucPtString=
"";
4124 TString CentralityString;
4125 TString EventCentralityString;
4126 CentralityString = Form(
"Centrality (%s) ",
fCentralityTag.Data());
4127 EventCentralityString = Form(
"%s vs ZNA Centrality ",
fCentralityTag.Data());
4130 RhoString = Form(
"%d-%d Centrality, Rho Spectrum",0,20);
4131 fh020Rho =
new TH1F(
"fh020Rho",RhoString,fRhoPtBins,fRhoPtLow,fRhoPtUp);
4132 fh020Rho->GetXaxis()->SetTitle(
"p_{T}/Area (GeV/c)");
4133 fh020Rho->GetYaxis()->SetTitle(
"1/N_{Events} dN/d#rho");
4136 RhoString = Form(
"%d-%d Centrality, Rho Spectrum",80,100);
4137 fh80100Rho =
new TH1F(
"fh80100Rho",RhoString,fRhoPtBins,fRhoPtLow,fRhoPtUp);
4138 fh80100Rho->GetXaxis()->SetTitle(
"p_{T}/Area (GeV/c)");
4139 fh80100Rho->GetYaxis()->SetTitle(
"1/N_{Events} dN/d#rho");
4140 fh80100Rho->Sumw2();
4142 RhoString = Form(
"%d-%d Centrality, Rho Spectrum",0,100);
4143 fhRho =
new TH1F(
"fhRho",RhoString,fRhoPtBins,fRhoPtLow,fRhoPtUp);
4144 fhRho->GetXaxis()->SetTitle(
"p_{T}/Area (GeV/c)");
4145 fhRho->GetYaxis()->SetTitle(
"1/N_{Events} dN/d#rho");
4148 RhoString =
"Rho Spectrum vs Centrality";
4150 fhRhoCen->GetXaxis()->SetTitle(
"p_{T}/Area (GeV/c)");
4151 fhRhoCen->GetYaxis()->SetTitle(Form(
"%s",CentralityString.Data()));
4152 fhRhoCen->GetZaxis()->SetTitle(
"1/N_{Events} dN/d#rho");
4156 PtString = Form(
"%d-%d Centrality, Background Subtracted Jet Spectrum",0,20);
4157 fh020BSPt =
new TH1F(
"fh020BSPt",PtString,fPtBins,fPtLow,fPtUp);
4158 fh020BSPt->GetXaxis()->SetTitle(
"p_{T} - #rhoA (GeV/c)");
4159 fh020BSPt->GetYaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4162 PtString = Form(
"%d-%d Centrality, Background Subtracted Jet Spectrum",80,100);
4163 fh80100BSPt =
new TH1F(
"fh80100BSPt",PtString,fPtBins,fPtLow,fPtUp);
4164 fh80100BSPt->GetXaxis()->SetTitle(
"p_{T} - #rhoA (GeV/c)");
4165 fh80100BSPt->GetYaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4166 fh80100BSPt->Sumw2();
4168 PtString = Form(
"%d-%d Centrality, Background Subtracted Jet Spectrum",0,100);
4169 fhBSPt =
new TH1F(
"fhBSPt",PtString,fPtBins,fPtLow,fPtUp);
4170 fhBSPt->GetXaxis()->SetTitle(
"p_{T} - #rhoA (GeV/c)");
4171 fhBSPt->GetYaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4174 PtString =
"Background Subtracted Jet Spectrum vs Centrality";
4176 fhBSPtCen->GetXaxis()->SetTitle(
"p_{T} - #rhoA (GeV/c)");
4177 fhBSPtCen->GetYaxis()->SetTitle(Form(
"%s",CentralityString.Data()));
4178 fhBSPtCen->GetZaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4181 PtString = Form(
"%d-%d Centrality, Background Subtracted Signal Jet Spectrum",0,20);
4182 fh020BSPtSignal =
new TH1F(
"fh020BSPtSignal",PtString,fPtBins,fPtLow,fPtUp);
4183 fh020BSPtSignal->GetXaxis()->SetTitle(
"p_{T} - #rhoA (GeV/c)");
4184 fh020BSPtSignal->GetYaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4185 fh020BSPtSignal->Sumw2();
4187 PtString = Form(
"%d-%d Centrality, Background Subtracted Signal Jet Spectrum",80,100);
4188 fh80100BSPtSignal =
new TH1F(
"fh80100BSPtSignal",PtString,fPtBins,fPtLow,fPtUp);
4189 fh80100BSPtSignal->GetXaxis()->SetTitle(
"p_{T} - #rhoA (GeV/c)");
4190 fh80100BSPtSignal->GetYaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4191 fh80100BSPtSignal->Sumw2();
4193 PtString = Form(
"%d-%d Centrality, Background Subtracted Signal Jet Spectrum",0,100);
4194 fhBSPtSignal =
new TH1F(
"fhBSPtSignal",PtString,fPtBins,fPtLow,fPtUp);
4195 fhBSPtSignal->GetXaxis()->SetTitle(
"p_{T} - #rhoA (GeV/c)");
4196 fhBSPtSignal->GetYaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4197 fhBSPtSignal->Sumw2();
4199 PtString =
"Background Subtracted Signal Jet Spectrum vs Centrality";
4201 fhBSPtCenSignal->GetXaxis()->SetTitle(
"p_{T} - #rhoA (GeV/c)");
4202 fhBSPtCenSignal->GetYaxis()->SetTitle(Form(
"%s",CentralityString.Data()));
4203 fhBSPtCenSignal->GetZaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4204 fhBSPtCenSignal->Sumw2();
4207 DeltaPtString = Form(
"%d-%d Centrality, #deltap_{T} Spectrum",0,20);
4208 fh020DeltaPt =
new TH1F(
"fh020DeltaPt",DeltaPtString,fDeltaPtBins,fDeltaPtLow,fDeltaPtUp);
4209 fh020DeltaPt->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4210 fh020DeltaPt->GetYaxis()->SetTitle(
"Probability Density");
4211 fh020DeltaPt->Sumw2();
4213 DeltaPtString = Form(
"%d-%d Centrality, #deltap_{T} Spectrum",80,100);
4214 fh80100DeltaPt =
new TH1F(
"fh80100DeltaPt",DeltaPtString,fDeltaPtBins,fDeltaPtLow,fDeltaPtUp);
4215 fh80100DeltaPt->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4216 fh80100DeltaPt->GetYaxis()->SetTitle(
"Probability Density");
4217 fh80100DeltaPt->Sumw2();
4219 DeltaPtString = Form(
"%d-%d Centrality, #deltap_{T} Spectrum",0,100);
4220 fhDeltaPt =
new TH1F(
"fhDeltaPt",DeltaPtString,fDeltaPtBins,fDeltaPtLow,fDeltaPtUp);
4221 fhDeltaPt->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4222 fhDeltaPt->GetYaxis()->SetTitle(
"Probability Density");
4225 DeltaPtString =
"#deltap_{T} Spectrum vs Centrality";
4227 fhDeltaPtCen->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4228 fhDeltaPtCen->GetYaxis()->SetTitle(Form(
"%s",CentralityString.Data()));
4229 fhDeltaPtCen->GetZaxis()->SetTitle(
"Probability Density");
4230 fhDeltaPtCen->Sumw2();
4233 DeltaPtString = Form(
"%d-%d Centrality, #deltap_{T} Spectrum",0,20);
4234 fh020DeltaPtSignal =
new TH1F(
"fh020DeltaPtSignal",DeltaPtString,fDeltaPtBins,fDeltaPtLow,fDeltaPtUp);
4235 fh020DeltaPtSignal->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4236 fh020DeltaPtSignal->GetYaxis()->SetTitle(
"Probability Density");
4237 fh020DeltaPtSignal->Sumw2();
4239 DeltaPtString = Form(
"%d-%d Centrality, #deltap_{T} Spectrum",80,100);
4240 fh80100DeltaPtSignal =
new TH1F(
"fh80100DeltaPtSignal",DeltaPtString,fDeltaPtBins,fDeltaPtLow,fDeltaPtUp);
4241 fh80100DeltaPtSignal->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4242 fh80100DeltaPtSignal->GetYaxis()->SetTitle(
"Probability Density");
4243 fh80100DeltaPtSignal->Sumw2();
4245 DeltaPtString = Form(
"%d-%d Centrality, #deltap_{T} Spectrum",0,100);
4246 fhDeltaPtSignal =
new TH1F(
"fhDeltaPtSignal",DeltaPtString,fDeltaPtBins,fDeltaPtLow,fDeltaPtUp);
4247 fhDeltaPtSignal->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4248 fhDeltaPtSignal->GetYaxis()->SetTitle(
"Probability Density");
4249 fhDeltaPtSignal->Sumw2();
4251 DeltaPtString =
"#deltap_{T} Spectrum vs Centrality";
4253 fhDeltaPtCenSignal->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4254 fhDeltaPtCenSignal->GetYaxis()->SetTitle(Form(
"%s",CentralityString.Data()));
4255 fhDeltaPtCenSignal->GetZaxis()->SetTitle(
"Probability Density");
4256 fhDeltaPtCenSignal->Sumw2();
4259 DeltaPtString = Form(
"%d-%d Centrality, #deltap_{T} Spectrum",0,20);
4260 fh020DeltaPtNColl =
new TH1F(
"fh020DeltaPtNColl",DeltaPtString,fDeltaPtBins,fDeltaPtLow,fDeltaPtUp);
4261 fh020DeltaPtNColl->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4262 fh020DeltaPtNColl->GetYaxis()->SetTitle(
"Probability Density");
4263 fh020DeltaPtNColl->Sumw2();
4265 DeltaPtString = Form(
"%d-%d Centrality, #deltap_{T} Spectrum",80,100);
4266 fh80100DeltaPtNColl =
new TH1F(
"fh80100DeltaPtNColl",DeltaPtString,fDeltaPtBins,fDeltaPtLow,fDeltaPtUp);
4267 fh80100DeltaPtNColl->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4268 fh80100DeltaPtNColl->GetYaxis()->SetTitle(
"Probability Density");
4269 fh80100DeltaPtNColl->Sumw2();
4271 DeltaPtString = Form(
"%d-%d Centrality, #deltap_{T} Spectrum",0,100);
4272 fhDeltaPtNColl =
new TH1F(
"fhDeltaPtNColl",DeltaPtString,fDeltaPtBins,fDeltaPtLow,fDeltaPtUp);
4273 fhDeltaPtNColl->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4274 fhDeltaPtNColl->GetYaxis()->SetTitle(
"Probability Density");
4275 fhDeltaPtNColl->Sumw2();
4277 DeltaPtString =
"#deltap_{T} Spectrum vs Centrality";
4279 fhDeltaPtCenNColl->GetXaxis()->SetTitle(
"#deltap_{T} (GeV/c)");
4280 fhDeltaPtCenNColl->GetYaxis()->SetTitle(Form(
"%s",CentralityString.Data()));
4281 fhDeltaPtCenNColl->GetZaxis()->SetTitle(
"Probability Density");
4282 fhDeltaPtCenNColl->Sumw2();
4285 BckgFlucPtString = Form(
"%d-%d Centrality, Background Fluctuation p_{T} Spectrum",0,20);
4286 fh020BckgFlucPt =
new TH1F(
"fh020BckgFlucPt",PtString,fPtBins,fPtLow,fPtUp);
4287 fh020BckgFlucPt->GetXaxis()->SetTitle(
"p_{T} (GeV/c)");
4288 fh020BckgFlucPt->GetYaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4289 fh020BckgFlucPt->Sumw2();
4291 BckgFlucPtString = Form(
"%d-%d Centrality, Background Fluctuation p_{T} Spectrum",80,100);
4292 fh80100BckgFlucPt =
new TH1F(
"fh80100BckgFlucPt",BckgFlucPtString,fBckgFlucPtBins,fBckgFlucPtLow,fBckgFlucPtUp);
4293 fh80100BckgFlucPt->GetXaxis()->SetTitle(
"p_{T} (GeV/c)");
4294 fh80100BckgFlucPt->GetYaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4295 fh80100BckgFlucPt->Sumw2();
4297 BckgFlucPtString = Form(
"%d-%d Centrality, Background Fluctuation p_{T} Spectrum",0,100);
4298 fhBckgFlucPt =
new TH1F(
"fhBckgFlucPt",BckgFlucPtString,fBckgFlucPtBins,fBckgFlucPtLow,fBckgFlucPtUp);
4299 fhBckgFlucPt->GetXaxis()->SetTitle(
"p_{T} (GeV/c)");
4300 fhBckgFlucPt->GetYaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4301 fhBckgFlucPt->Sumw2();
4303 BckgFlucPtString =
"Background Fluctuation p_{T} Spectrum vs Centrality";
4305 fhBckgFlucPtCen->GetXaxis()->SetTitle(
"#p_{T} (GeV/c)");
4306 fhBckgFlucPtCen->GetYaxis()->SetTitle(Form(
"%s",CentralityString.Data()));
4307 fhBckgFlucPtCen->GetZaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}d#etad#varphi");
4308 fhBckgFlucPtCen->Sumw2();
4311 RhoString =
"Background Density vs Centrality";
4313 fpRho->GetXaxis()->SetTitle(Form(
"%s",CentralityString.Data()));
4314 fpRho->GetYaxis()->SetTitle(
"p_{T}/Area (GeV/c)");
4317 fpLJetRho =
new TProfile(
"fpLJetRho",
"#rho vs Leading Jet p_{T}",fLJetPtBins,fLJetPtLow,fLJetPtUp);
4318 fpLJetRho->GetXaxis()->SetTitle(
"Leading Jet p_{T}");
4319 fpLJetRho->GetYaxis()->SetTitle(
"p_{T}/Area (GeV/c)");
4322 Int_t JetPtAreaBins=200;
4323 Double_t JetPtAreaLow=0.0;
4324 Double_t JetPtAreaUp=2.0;
4326 fhJetPtArea =
new TH2F(
"fhJetPtArea",
"Jet Area Distribution",fPtBins,fPtLow,fPtUp,JetPtAreaBins,JetPtAreaLow,JetPtAreaUp);
4327 fhJetPtArea->GetXaxis()->SetTitle(
"p_{T} (GeV/c)");
4328 fhJetPtArea->GetYaxis()->SetTitle(
"A_{jet}");
4329 fhJetPtArea->GetZaxis()->SetTitle(
"1/N_{Events} dN/dA_{jet}dp_{T}");
4330 fhJetPtArea->Sumw2();
4333 fhJetConstituentPt =
new TH2F(
"fhJetConstituentPt",
"Jet constituents p_{T} distribution",fPtBins,fPtLow,fPtUp,10*fPtBins,fPtLow,fPtUp);
4334 fhJetConstituentPt->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4335 fhJetConstituentPt->GetYaxis()->SetTitle(
"Constituent p_{T} (GeV/c)");
4336 fhJetConstituentPt->GetZaxis()->SetTitle(
"1/N_{Events} dN/dp_{T,jet}dp_{T,track}");
4337 fhJetConstituentPt->Sumw2();
4339 fhJetTracksPt =
new TH2F(
"fhJetTracksPt",
"Jet constituents Tracks p_{T} distribution",fPtBins,fPtLow,fPtUp,10*fPtBins,fPtLow,fPtUp);
4340 fhJetTracksPt->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4341 fhJetTracksPt->GetYaxis()->SetTitle(
"Constituent Track p_{T} (GeV/c)");
4342 fhJetTracksPt->GetZaxis()->SetTitle(
"1/N_{Events} dN/dp_{T,jet}dp_{T,track}");
4343 fhJetTracksPt->Sumw2();
4345 fhJetClustersPt =
new TH2F(
"fhJetClustersPt",
"Jet constituents Clusters p_{T} distribution",fPtBins,fPtLow,fPtUp,10*fPtBins,fPtLow,fPtUp);
4346 fhJetClustersPt->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4347 fhJetClustersPt->GetYaxis()->SetTitle(
"Constituent Cluster p_{T} (GeV/c)");
4348 fhJetClustersPt->GetZaxis()->SetTitle(
"1/N_{Events} dN/dp_{T,jet}dp_{T,cluster}");
4349 fhJetClustersPt->Sumw2();
4352 fhJetConstituentCounts =
new TH2F(
"fhJetConstituentCounts",
"Jet constituents distribution",fPtBins,fPtLow,fPtUp,TCBins,0,(Double_t)TCBins);
4353 fhJetConstituentCounts->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4354 fhJetConstituentCounts->GetYaxis()->SetTitle(
"Constituent Count");
4355 fhJetConstituentCounts->GetZaxis()->SetTitle(
"1/N_{Events} dN/dp_{T,jet}dN_{constituent}");
4356 fhJetConstituentCounts->Sumw2();
4358 fhJetTracksCounts =
new TH2F(
"fhJetTracksCounts",
"Jet constituents Tracks distribution",fPtBins,fPtLow,fPtUp,TCBins,0,(Double_t)TCBins);
4359 fhJetTracksCounts->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4360 fhJetTracksCounts->GetYaxis()->SetTitle(
"Constituent Track Count");
4361 fhJetTracksCounts->GetZaxis()->SetTitle(
"1/N_{Events} dN/dp_{T,jet}dN_{track}");
4362 fhJetTracksCounts->Sumw2();
4364 fhJetClustersCounts =
new TH2F(
"fhJetClustersCounts",
"Jet constituents Clusters distribution",fPtBins,fPtLow,fPtUp,TCBins,0,(Double_t)TCBins);
4365 fhJetClustersCounts->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4366 fhJetClustersCounts->GetYaxis()->SetTitle(
"Constituent Cluster Count");
4367 fhJetClustersCounts->GetZaxis()->SetTitle(
"1/N_{Events} dN/dp_{T,jet}dN_{cluster}");
4368 fhJetClustersCounts->Sumw2();
4371 fhJetPtZConstituent =
new TH2F(
"fhJetPtZConstituent",
"Jet z_{constituent} distribution",fPtBins,fPtLow,fPtUp,TCBins,0,1.0);
4372 fhJetPtZConstituent->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4373 fhJetPtZConstituent->GetYaxis()->SetTitle(
"z_{constituent}");
4374 fhJetPtZConstituent->GetZaxis()->SetTitle(
"1/N_{Events} dN_{jet}/dp_{T,jet}dz_{constituent}");
4375 fhJetPtZConstituent->Sumw2();
4377 fhJetPtZTrack =
new TH2F(
"fhJetPtZTrack",
"Jet z_{track} distribution",fPtBins,fPtLow,fPtUp,TCBins,0,1.0);
4378 fhJetPtZTrack->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4379 fhJetPtZTrack->GetYaxis()->SetTitle(
"z_{track}");
4380 fhJetPtZTrack->GetZaxis()->SetTitle(
"1/N_{Events} dN_{jet}/dp_{T,jet}dz_{track}");
4381 fhJetPtZTrack->Sumw2();
4383 fhJetPtZCluster =
new TH2F(
"fhJetPtZCluster",
"Jet z_{cluster} distribution",fPtBins,fPtLow,fPtUp,TCBins,0,1.0);
4384 fhJetPtZCluster->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4385 fhJetPtZCluster->GetYaxis()->SetTitle(
"z_{cluster}");
4386 fhJetPtZCluster->GetZaxis()->SetTitle(
"1/N_{Events} dN_{jet}/dp_{T,jet}dz_{cluster}");
4387 fhJetPtZCluster->Sumw2();
4390 fhJetPtZLeadingConstituent =
new TH2F(
"fhJetPtZLeadingConstituent",
"Jet z_{Leading,constituent} distribution",fPtBins,fPtLow,fPtUp,TCBins,0,1.0);
4391 fhJetPtZLeadingConstituent->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4392 fhJetPtZLeadingConstituent->GetYaxis()->SetTitle(
"z_{Leading,constituent}");
4393 fhJetPtZLeadingConstituent->GetZaxis()->SetTitle(
"1/N_{Events} dN_{jet}/dp_{T,jet}dz_{constituent}");
4394 fhJetPtZLeadingConstituent->Sumw2();
4396 fhJetPtZLeadingTrack =
new TH2F(
"fhJetPtZLeadingTrack",
"Jet z_{Leading,track} distribution",fPtBins,fPtLow,fPtUp,TCBins,0,1.0);
4397 fhJetPtZLeadingTrack->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4398 fhJetPtZLeadingTrack->GetYaxis()->SetTitle(
"z_{Leading,track}");
4399 fhJetPtZLeadingTrack->GetZaxis()->SetTitle(
"1/N_{Events} dN_{jet}/dp_{T,jet}dz_{track}");
4400 fhJetPtZLeadingTrack->Sumw2();
4402 fhJetPtZLeadingCluster =
new TH2F(
"fhJetPtZLeadingCluster",
"Jet z_{Leading,cluster} distribution",fPtBins,fPtLow,fPtUp,TCBins,0,1.0);
4403 fhJetPtZLeadingCluster->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4404 fhJetPtZLeadingCluster->GetYaxis()->SetTitle(
"z_{Leading,cluster}");
4405 fhJetPtZLeadingCluster->GetZaxis()->SetTitle(
"1/N_{Events} dN_{jet}/dp_{T,jet}dz_{cluster}");
4406 fhJetPtZLeadingCluster->Sumw2();
4410 fhEventCentralityVsZNA->GetXaxis()->SetTitle(Form(
"%s",CentralityString.Data()));
4411 fhEventCentralityVsZNA->GetYaxis()->SetTitle(
"Centrality (ZNA)");
4412 fhEventCentralityVsZNA->GetZaxis()->SetTitle(
"Probability Density");
4413 fhEventCentralityVsZNA->Sumw2();
4419 fhJetPtEtaPhi =
new TH3F(
"fhJetPtEtaPhi",
"Jet p_{T} vs #eta-#varphi",fPtBins,fPtLow,fPtUp,TCBins,
fEMCalEtaMin,
fEMCalEtaMax,TCBins,
fEMCalPhiMin,
fEMCalPhiMax);
4420 fhJetPtEtaPhi->GetXaxis()->SetTitle(
"p_{T} (GeV/c)");
4421 fhJetPtEtaPhi->GetYaxis()->SetTitle(
"#eta");
4422 fhJetPtEtaPhi->GetZaxis()->SetTitle(
"#varphi");
4423 fhJetPtEtaPhi->Sumw2();
4425 EventCentralityString = Form(
"%s vs ZNA Centrality vs Leading Jet p_{T} ",
fCentralityTag.Data());
4426 fhEventCentralityVsZNAPt =
new TH3F(
"fhEventCentralityVsZNAPt",EventCentralityString,
fCentralityBins,
fCentralityLow,
fCentralityUp,
fCentralityBins,
fCentralityLow,
fCentralityUp,fPtBins,fPtLow,fPtUp);
4427 fhEventCentralityVsZNAPt->GetXaxis()->SetTitle(Form(
"%s",CentralityString.Data()));
4428 fhEventCentralityVsZNAPt->GetYaxis()->SetTitle(
"Centrality (ZNA)");
4429 fhEventCentralityVsZNAPt->GetZaxis()->SetTitle(
"Leading Jet p_{T} (GeV/c)");
4430 fhEventCentralityVsZNAPt->Sumw2();
4433 fOutput->Add(fhEventCentralityVsZNAPt);
4437 if (fDoNEFQAPlots==kTRUE)
4439 fNEFOutput =
new TList();
4440 fNEFOutput->SetOwner();
4441 fNEFOutput->SetName(
"ListNEFQAPlots");
4443 fhJetPtNEF =
new TH2F(
"fhJetPtNEF",
"Jet p_{T} vs NEF",fPtBins,fPtLow,fPtUp,fNEFBins,fNEFLow,fNEFUp);
4444 fhJetPtNEF->GetXaxis()->SetTitle(
"Jet p_{T} (GeV/c)");
4445 fhJetPtNEF->GetYaxis()->SetTitle(
"Neutral Energy Fraction");
4446 fhJetPtNEF->GetZaxis()->SetTitle(
"1/N_{Events} dN_{jet}/dp_{T}dNEF");
4447 fhJetPtNEF->Sumw2();
4449 SetNEFJetDimensions(10);
4450 SetNEFClusterDimensions(11);
4452 Int_t dimJetBins[fnDimJet];
4453 Double_t dimJetLow[fnDimJet];
4454 Double_t dimJetUp[fnDimJet];
4456 Int_t dimClusterBins[fnDimCluster];
4457 Double_t dimClusterLow[fnDimCluster];
4458 Double_t dimClusterUp[fnDimCluster];
4462 dimJetBins[0] = dimClusterBins[0] = fNEFBins;
4463 dimJetLow[0] = dimClusterLow[0] = fNEFLow;
4464 dimJetUp[0] = dimClusterUp[0] = fNEFUp;
4467 dimJetBins[1] = dimClusterBins[1] = fPtBins;
4468 dimJetLow[1] = dimClusterLow[1] = fPtLow;
4469 dimJetUp[1] = dimClusterUp[1] = fPtUp;
4472 dimJetBins[2] = dimJetBins[3] = dimClusterBins[2] = dimClusterBins[3] = TCBins;
4484 dimJetBins[5] = dimClusterBins[5] = TCBins;
4485 dimJetLow[5] = dimClusterLow[5] = 0.0;
4486 dimJetUp[5] = dimClusterUp[5] = 1.0;
4491 dimJetBins[i] = TCBins;
4493 dimJetUp[i] = (Double_t)TCBins;
4497 dimJetBins[9] = TCBins;
4502 dimClusterBins[6] = fPtBins;
4503 dimClusterLow[6] = fPtLow;
4504 dimClusterUp[6] = fPtUp;
4507 dimClusterBins[7] = TCBins;
4508 dimClusterLow[7] = 0.0;
4509 dimClusterUp[7] = 1.0;
4512 dimClusterBins[8] = 400;
4513 dimClusterLow[8] = -2e-07;
4514 dimClusterUp[8] = 2e-07;
4517 dimClusterBins[9] = 100;
4518 dimClusterLow[9] = 0.0;
4519 dimClusterUp[9] = 1e-07;
4522 dimClusterBins[10] = TCBins;
4523 dimClusterLow[10] = 0.0;
4524 dimClusterUp[10] = 100.0;
4528 fhJetNEFSignalInfo =
new THnSparseF(
"fhJetNEFSignalInfo",
"Signal Jet NEF Information Histogram",fnDimJet,dimJetBins,dimJetLow,dimJetUp);
4529 fhJetNEFSignalInfo->Sumw2();
4531 fhClusterNEFSignalInfo =
new THnSparseF(
"fhClusterNEFSignalInfo",
"Signal Jet NEF Cluster Information Histogram",fnDimCluster,dimClusterBins,dimClusterLow,dimClusterUp);
4532 fhClusterNEFSignalInfo->Sumw2();
4535 fhClusterShapeAll =
new TH1F(
"fhClusterShapeAll",
"Cluster Shape of all CaloClustersCorr",10*TCBins,0,10*TCBins);
4536 fhClusterShapeAll->GetXaxis()->SetTitle(
"Cells");
4537 fhClusterShapeAll->GetYaxis()->SetTitle(
"1/N_{Events} dN/dCells");
4538 fhClusterShapeAll->Sumw2();
4540 fhClusterPtCellAll =
new TH2F(
"fhClusterPtCellAll",
"Cluster p_{T} vs Cluster Shape of all CaloClustersCorr",fPtBins,fPtLow,fPtUp,10*TCBins,0,10*TCBins);
4541 fhClusterPtCellAll->GetXaxis()->SetTitle(
"p_{T} (GeV/c)");
4542 fhClusterPtCellAll->GetYaxis()->SetTitle(
"Cells");
4543 fhClusterPtCellAll->GetZaxis()->SetTitle(
"1/N_{Events} dN/dp_{T}dCells");
4544 fhClusterPtCellAll->Sumw2();
4548 fhJetNEFInfo =
new THnSparseF(
"fhJetNEFInfo",
"Jet NEF Information Histogram",fnDimJet,dimJetBins,dimJetLow,dimJetUp);
4549 fhJetNEFInfo->Sumw2();
4551 fhClusterNEFInfo =
new THnSparseF(
"fhClusterNEFInfo",
"Jet NEF Cluster Information Histogram",fnDimCluster,dimClusterBins,dimClusterLow,dimClusterUp);
4552 fhClusterNEFInfo->Sumw2();
4554 fNEFOutput->Add(fhJetNEFInfo);
4555 fNEFOutput->Add(fhClusterNEFInfo);
4557 fNEFOutput->Add(fhJetNEFSignalInfo);
4558 fNEFOutput->Add(fhClusterNEFSignalInfo);
4559 fNEFOutput->Add(fhClusterShapeAll);
4560 fNEFOutput->Add(fhClusterPtCellAll);
4562 fNEFOutput->Add(fhJetPtNEF);
4575 fOutput->Add(fh020BSPtSignal);
4576 fOutput->Add(fh80100BSPtSignal);
4578 fOutput->Add(fhBSPtCenSignal);
4583 fOutput->Add(fh020DeltaPtSignal);
4584 fOutput->Add(fh80100DeltaPtSignal);
4585 fOutput->Add(fhDeltaPtSignal);
4586 fOutput->Add(fhDeltaPtCenSignal);
4587 fOutput->Add(fh020DeltaPtNColl);
4588 fOutput->Add(fh80100DeltaPtNColl);
4590 fOutput->Add(fhDeltaPtCenNColl);
4591 fOutput->Add(fh020BckgFlucPt);
4592 fOutput->Add(fh80100BckgFlucPt);
4594 fOutput->Add(fhBckgFlucPtCen);
4598 fOutput->Add(fhJetConstituentPt);
4600 fOutput->Add(fhJetClustersPt);
4601 fOutput->Add(fhJetConstituentCounts);
4602 fOutput->Add(fhJetTracksCounts);
4603 fOutput->Add(fhJetClustersCounts);
4604 fOutput->Add(fhJetPtZConstituent);
4606 fOutput->Add(fhJetPtZCluster);
4607 fOutput->Add(fhJetPtZLeadingConstituent);
4608 fOutput->Add(fhJetPtZLeadingTrack);
4609 fOutput->Add(fhJetPtZLeadingCluster);
4610 fOutput->Add(fhEventCentralityVsZNA);
4653 fBckgFlucPtBins=bins;
4667 fLChargedTrackPtBins=bins;
4668 fLChargedTrackPtLow=low;
4669 fLChargedTrackPtUp=up;
4713 fhRhoCen->Fill(rho,eventCentrality);
4714 fpRho->Fill(eventCentrality,rho);
4716 if (eventCentrality<=20)
4718 fh020Rho->Fill(rho);
4720 else if (eventCentrality>=80)
4722 fh80100Rho->Fill(rho);
4729 Double_t tempPt=0.0;
4730 Double_t tempChargedHighPt=0.0;
4732 for (i=0;i<nIndexJetList;i++)
4738 if(indexJetList[i]!=i) cout<<
"indexJetList[i]: "<<indexJetList[i]<<
", i: "<<i<<endl;
4739 myJet = (
AliEmcalJet*) jetList->At(indexJetList[i]);
4741 if(rho!=0){cout<<
"Rho in CY: "<<rho<<endl;}
4742 tempPt=myJet->
Pt()-rho*myJet->
Area();
4745 fhBSPt->Fill(tempPt);
4746 fhBSPtCen->Fill(tempPt,eventCentrality);
4747 if (eventCentrality<=20)
4749 fh020BSPt->Fill(tempPt);
4751 else if (eventCentrality>=80)
4753 fh80100BSPt->Fill(tempPt);
4757 if (tempChargedHighPt>=signalCut)
4759 fhBSPtSignal->Fill(tempPt);
4760 fhBSPtCenSignal->Fill(tempPt,eventCentrality);
4761 if (eventCentrality<=20)
4763 fh020BSPtSignal->Fill(tempPt);
4765 else if (eventCentrality>=80)
4767 fh80100BSPtSignal->Fill(tempPt);
4773 if (tempPt>=signalCut)
4775 fhBSPtSignal->Fill(tempPt);
4776 fhBSPtCenSignal->Fill(tempPt,eventCentrality);
4777 if (eventCentrality<=20)
4779 fh020BSPtSignal->Fill(tempPt);
4781 else if (eventCentrality>=80)
4783 fh80100BSPtSignal->Fill(tempPt);
4788 tempChargedHighPt=0.0;
4795 Double_t tempPt=0.0;
4799 tempPt=RCArray[i]-rho*TMath::Power(jetRadius,2);
4800 fhDeltaPt->Fill(tempPt);
4801 fhDeltaPtCen->Fill(tempPt,eventCentrality);
4802 if (eventCentrality<=20)
4804 fh020DeltaPt->Fill(tempPt);
4806 else if (eventCentrality>=80)
4808 fh80100DeltaPt->Fill(tempPt);
4817 Double_t tempPt=0.0;
4821 tempPt=RCArray[i]-rho*TMath::Power(jetRadius,2);
4822 fhDeltaPtSignal->Fill(tempPt);
4823 fhDeltaPtCenSignal->Fill(tempPt,eventCentrality);
4824 if (eventCentrality<=20)
4826 fh020DeltaPtSignal->Fill(tempPt);
4828 else if (eventCentrality>=80)
4830 fh80100DeltaPtSignal->Fill(tempPt);
4839 Double_t tempPt=0.0;
4843 tempPt=RCArray[i]-rho*TMath::Power(jetRadius,2);
4844 fhDeltaPtNColl->Fill(tempPt);
4845 fhDeltaPtCenNColl->Fill(tempPt,eventCentrality);
4846 if (eventCentrality<=20)
4848 fh020DeltaPtNColl->Fill(tempPt);
4850 else if (eventCentrality>=80)
4852 fh80100DeltaPtNColl->Fill(tempPt);
4860 Double_t tempPt=0.0;
4862 tempPt=rho*TMath::Power(jetRadius,2);
4863 fhBckgFlucPt->Fill(tempPt);
4864 fhBckgFlucPtCen->Fill(tempPt,eventCentrality);
4865 if (eventCentrality<=20)
4867 fh020BckgFlucPt->Fill(tempPt);
4869 else if (eventCentrality>=80)
4871 fh80100BckgFlucPt->Fill(tempPt);
4877 fpLJetRho->Fill(jetPt,rho);
4882 fDoNEFQAPlots = doNEFAna;
4890 void AliAnalysisTaskFullpAJets_Eli_Mod::AlipAJetHistos::DoNEFAnalysis(Double_t nefCut, Double_t signalCut, TClonesArray *jetList, Int_t *indexJetList, Int_t nIndexJetList, TObjArray *clusterList, TClonesArray *orgClusterList, AliVEvent *event, AliEMCALGeometry *geometry, AliEMCALRecoUtils *recoUtils, AliVCaloCells *cells)
4892 if (fDoNEFQAPlots==kFALSE)
4903 Double_t tempChargedHighPt=0.0;
4905 for (i=0;i<nIndexJetList;i++)
4914 if (tempChargedHighPt>=signalCut && nef<=nefCut)
4916 fhJetPtNEF->Fill(jetPt,nef);
4921 if (jetPt>=signalCut && nef<=nefCut)
4923 fhJetPtNEF->Fill(jetPt,nef);
4929 tempChargedHighPt=0.0;
4936 Double_t valJet[fnDimJet];
4937 Double_t valCluster[fnDimJet];
4938 for (i=0;i<fnDimJet;i++)
4946 Double_t tempChargedHighPt=0.0;
4950 Int_t chargedMult=0;
4951 Int_t neutralMult=0;
4952 Int_t iSupMod = -1, absId = -1, ieta = -1, iphi = -1;
4953 Bool_t shared = kFALSE;
4955 Double_t zLeading=0.0;
4956 Double_t zLeadingTrack=0.0;
4957 Double_t ECluster=0.0;
4960 Double_t eCross=0.0;
4961 Double_t FCross=0.0;
4963 Double_t lowTime=9.99e99;
4964 Double_t upTime=-9.99e99;
4966 Double_t tempCellTime=0.0;
4968 Double_t event_centrality =
event->GetCentrality()->GetCentralityPercentile(
fCentralityTag);
4969 valJet[4] = valCluster[4] = event_centrality;
4972 for (i=0;i<nIndexJetList;i++)
4986 valJet[0] = valCluster[0] = nef;
4987 valJet[1] = valCluster[1] = jetPt;
4988 valJet[2] = valCluster[2] = eta;
4989 valJet[3] = valCluster[3] = phi;
4990 valJet[5] = valCluster[5] = zLeading;
4991 valJet[9] = zLeadingTrack;
4993 valJet[6] = totalMult;
4994 valJet[7] = chargedMult;
4995 valJet[8] = neutralMult;
5000 fhJetNEFInfo->Fill(valJet);
5005 if (tempChargedHighPt>=signalCut && nef<=nefCut)
5007 fhJetNEFSignalInfo->Fill(valJet);
5008 fhJetPtNEF->Fill(jetPt,nef);
5013 if (jetPt>=signalCut && nef<=nefCut)
5015 fhJetNEFSignalInfo->Fill(valJet);
5016 fhJetPtNEF->Fill(jetPt,nef);
5020 for (j=0;j<neutralMult;j++)
5022 AliVCluster* vcluster = (AliVCluster*) orgClusterList->At(myJet->
ClusterAt(j));
5023 ECluster = vcluster->E();
5024 recoUtils->GetMaxEnergyCell(geometry,cells,vcluster,absId,iSupMod,ieta,iphi,shared);
5025 eSeed = cells->GetCellAmplitude(absId);
5026 tCell = cells->GetCellTime(absId);
5027 eCross = recoUtils->GetECross(absId,tCell,cells,event->GetBunchCrossNumber());
5028 FCross = 1 - eCross/eSeed;
5033 for (k=0;k<vcluster->GetNCells();k++)
5035 tempCellID=vcluster->GetCellAbsId(k);
5036 tempCellTime=cells->GetCellTime(tempCellID);
5037 if (tempCellTime>upTime)
5039 upTime=tempCellTime;
5041 if (tempCellTime<lowTime)
5043 lowTime=tempCellTime;
5046 valCluster[6] = ECluster;
5047 valCluster[7] = FCross;
5048 valCluster[8] = tCell;
5049 valCluster[9] = upTime-lowTime;
5050 valCluster[10] = vcluster->GetNCells();
5054 fhClusterNEFInfo->Fill(valCluster);
5059 if (tempChargedHighPt>=signalCut && nef<=nefCut)
5061 fhClusterNEFSignalInfo->Fill(valCluster);
5066 if (myJet->
Pt()>=signalCut && nef<=nefCut)
5068 fhClusterNEFSignalInfo->Fill(valCluster);
5077 iSupMod=-1,absId=-1,ieta=-1,iphi=-1;
5082 tempChargedHighPt=0.0;
5094 for (i=0;i<clusterList->GetEntries();i++)
5096 AliVCluster *vcluster = (AliVCluster*) clusterList->At(i);
5097 fhClusterShapeAll->Fill(vcluster->GetNCells());
5098 fhClusterPtCellAll->Fill(vcluster->E(),vcluster->GetNCells());
5106 TLorentzVector *cluster_vec =
new TLorentzVector;
5107 for (i=0;i<nIndexJetList;i++)
5113 fhJetPtEtaPhi->Fill(myJet->
Pt(),myJet->
Eta(),myJet->
Phi());
5115 fhJetPtArea->Fill(myJet->
Pt(),myJet->
Area());
5119 fhJetPtZLeadingConstituent->Fill(myJet->
Pt(),myJet->
MaxPartPt()/myJet->
Pt());
5120 fhJetPtZLeadingTrack->Fill(myJet->
Pt(),myJet->
MaxTrackPt()/myJet->
Pt());
5121 fhJetPtZLeadingCluster->Fill(myJet->
Pt(),myJet->
MaxClusterPt()/myJet->
Pt());
5124 AliVTrack *vtrack = (AliVTrack*) myJet->
TrackAt(j,trackList);
5125 fhJetConstituentPt->Fill(myJet->
Pt(),vtrack->Pt());
5126 fhJetTracksPt->Fill(myJet->
Pt(),vtrack->Pt());
5127 fhJetPtZTrack->Fill(myJet->
Pt(),vtrack->Pt()/myJet->
Pt());
5128 fhJetPtZConstituent->Fill(myJet->
Pt(),vtrack->Pt()/myJet->
Pt());
5132 AliVCluster *vcluster = (AliVCluster*) myJet->
ClusterAt(j,clusterList);
5133 vcluster->GetMomentum(*cluster_vec,vertex);
5134 fhJetConstituentPt->Fill(myJet->
Pt(),cluster_vec->Pt());
5135 fhJetClustersPt->Fill(myJet->
Pt(),vcluster->E());
5136 fhJetPtZCluster->Fill(myJet->
Pt(),cluster_vec->Pt()/myJet->
Pt());
5137 fhJetPtZConstituent->Fill(myJet->
Pt(),cluster_vec->Pt()/myJet->
Pt());
5145 Double_t event_centrality =
event->GetCentrality()->GetCentralityPercentile(
fCentralityTag);
5146 Double_t event_centrality_ZNA =
event->GetCentrality()->GetCentralityPercentile(
"ZNA");
5148 fhEventCentralityVsZNA->Fill(event_centrality,event_centrality_ZNA);
5151 fhEventCentralityVsZNAPt->Fill(event_centrality,event_centrality_ZNA,leadingJetPt);
void SetNEFRange(Int_t bins, Double_t low, Double_t up)
Double_t fEMCalJetThreshold
void DoTHnSparse(Bool_t doTHnSparse)
Double_t * fTPCRCBckgFlucNColl
Stores the pT of RC Background clusters in EMCal with no spatial restrictions.
TClonesArray * fmyKTFullJets
void SetSignalTrackPtBias(Bool_t chargedBias)
void EstimateChargedRhoScale()
AlipAJetData * fEMCalPartJet
void DoNEFQAPlots(Bool_t doNEFAna)
void SetLeading(Int_t index, Double_t Pt)
TH1F * fhComplementaryTrackPt
void SetTotalEntries(Int_t nEntries)
Double_t * fEMCalRCBckgFluc
TClonesArray * fOrgClusters