11 #include <THnSparse.h>
14 #include "AliAnalysisManager.h"
15 #include "AliInputEventHandler.h"
16 #include "AliEventPoolManager.h"
17 #include "AliBasicParticle.h"
18 #include "AliVTrack.h"
31 fDoEventMixing(kFALSE),
32 fNMixingTracks(50000), fMinNTracksMixedEvents(5000), fMinNEventsMixedEvents(5), fNCentBinsMixedEvent(10),
34 fTriggerType(AliVEvent::kEMCEJE), fMixingEventType(AliVEvent::kMB | AliVEvent::kCentral | AliVEvent::kSemiCentral),
35 fDoEffCorrection(0), fEffFunctionCorrection(0),
36 fEmbeddingCorrectionHist(0),
37 fDoLessSparseAxes(0), fDoWiderTrackBin(0),
46 InitializeArraysToZero();
54 fDoEventMixing(kFALSE),
55 fNMixingTracks(50000), fMinNTracksMixedEvents(5000), fMinNEventsMixedEvents(5), fNCentBinsMixedEvent(10),
57 fTriggerType(AliVEvent::kEMCEJE), fMixingEventType(AliVEvent::kMB | AliVEvent::kCentral | AliVEvent::kSemiCentral),
58 fDoEffCorrection(0), fEffFunctionCorrection(0),
59 fEmbeddingCorrectionHist(0),
60 fDoLessSparseAxes(0), fDoWiderTrackBin(0),
81 for(Int_t jetPtBin = 0; jetPtBin <
kMaxJetPtBins; ++jetPtBin){
82 for(Int_t etaBin = 0; etaBin <
kMaxEtaBins; ++etaBin){
83 fHistJetH[centralityBin][jetPtBin][etaBin]=0;
97 fHistTrackPt =
new TH1F(
"fHistTrackPt",
"P_{T} distribution", 1000, 0.0, 100.0);
98 fHistJetEtaPhi =
new TH2F(
"fHistJetEtaPhi",
"Jet eta-phi",900,-1.8,1.8,720,-3.2,3.2);
99 fHistJetHEtaPhi =
new TH2F(
"fHistJetHEtaPhi",
"Jet-Hadron deta-dphi",900,-1.8,1.8,720,-1.6,4.8);
101 fHistJHPsi =
new TH3F(
"fHistJHPsi",
"Jet-Hadron ntr-trpt-dpsi",20,0,100,200,0,20,120,0,180);
111 name = Form(
"fHistTrackEtaPhi_%i", trackPtBin);
112 fHistTrackEtaPhi[trackPtBin] =
new TH2F(name,name,400,-1,1,720,0.0,2.0*TMath::Pi());
117 name = Form(
"fHistJetPt_%i",centralityBin);
118 fHistJetPt[centralityBin] =
new TH1F(name,name,200,0,200);
121 name = Form(
"fHistJetPtBias_%i",centralityBin);
125 for(Int_t jetPtBin = 0; jetPtBin <
kMaxJetPtBins; ++jetPtBin){
126 for(Int_t etaBin = 0; etaBin <
kMaxEtaBins; ++etaBin){
127 name = Form(
"fHistJetH_%i_%i_%i",centralityBin,jetPtBin,etaBin);
128 fHistJetH[centralityBin][jetPtBin][etaBin]=
new TH2F(name,name,72,-0.5*TMath::Pi(),1.5*TMath::Pi(),300,0,30);
131 name = Form(
"fHistJetHBias_%i_%i_%i",centralityBin,jetPtBin,etaBin);
132 fHistJetHBias[centralityBin][jetPtBin][etaBin]=
new TH2F(name,name,72,-0.5*TMath::Pi(),1.5*TMath::Pi(),300,0,30);
140 cifras = 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5;
142 cifras = 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5 | 1<<7;
151 cifras = 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5;
153 cifras = 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5 | 1<<7;
164 Int_t poolSize = 1000;
166 Int_t nZVertexBins = 10;
169 Int_t nEventActivityBins = 8;
170 Double_t* eventActivityBins = 0;
181 eventActivityBins = multiplicityBins;
184 fPoolMgr =
new AliEventPoolManager(poolSize,
fNMixingTracks, nEventActivityBins, eventActivityBins, nZVertexBins, zVertexBins);
192 eta = TMath::Abs(eta);
193 if (eta <= 0.4) etabin = 0;
194 else if (eta > 0.4 && eta < 0.8) etabin = 1;
195 else if (eta >= 0.8) etabin = 2;
203 if (pt < 0.5) ptBin = 0;
204 else if (pt < 1 ) ptBin = 1;
205 else if (pt < 2 ) ptBin = 2;
206 else if (pt < 3 ) ptBin = 3;
207 else if (pt < 5 ) ptBin = 4;
208 else if (pt < 8 ) ptBin = 5;
209 else if (pt < 20 ) ptBin = 6;
220 if (pt >= 15 && pt < 20) ptBin = 0;
221 else if (pt >= 20 && pt < 25) ptBin = 1;
222 else if (pt >= 25 && pt < 30) ptBin = 2;
223 else if (pt >= 30 && pt < 60) ptBin = 3;
224 else if (pt >= 60) ptBin = 4;
241 AliError(Form(
"%s: Unable to retrieve clusters!", GetName()));
248 AliError(Form(
"%s: Unable to retrieve tracks!", GetName()));
255 AliError(Form(
"%s: Unable to retrieve jets!", GetName()));
261 TVector3 jetVector, trackVector;
265 Bool_t biasedJet = kFALSE;
266 Bool_t leadJet = kFALSE;
268 Double_t deltaPhi = 0;
269 Double_t deltaEta = 0;
272 Double_t eventActivity = 0;
274 Double_t efficiency = -999;
284 UInt_t eventTrigger = ((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected();
296 if (jet == leadingJet) leadJet = kTRUE;
302 jetVector.SetXYZ(jet->
Px(), jet->
Py(), jet->
Pz());
306 if (biasedJet == kTRUE) {
312 if (jet->
Pt() > 15) {
314 AliVTrack * track = 0;
325 AliError(Form(
"Jet Pt Bin negative: %f", jet->
Pt()));
331 AliError(Form(
"Eta Bin negative: %f", deltaEta));
338 trackVector.SetXYZ( track->Px(), track->Py(), track->Pz() );
339 if ( (jet->
Pt() > 20.) && (jet->
Pt() < 60.) ) {
340 fHistJHPsi->Fill(tracks->
GetNTracks(), track->Pt(), trackVector.Angle(jetVector) * TMath::RadToDeg() );
349 if (biasedJet == kTRUE) {
353 eventActivity =
fCent;
356 eventActivity =
static_cast<Double_t
>(tracks->
GetNTracks());
360 Double_t triggerEntries[6] = {eventActivity, jet->
Pt(), track->Pt(), deltaEta, deltaPhi,
static_cast<Double_t
>(leadJet)};
363 Double_t triggerEntries[7] = {eventActivity, jet->
Pt(), track->Pt(), deltaEta, deltaPhi,
static_cast<Double_t
>(leadJet), deltaR};
375 TObjArray* tracksClone = 0;
397 AliEventPool *pool = 0;
407 else if (
fBeamType ==
kpp) AliFatal(Form(
"No pool found for ntracks_pp = %d, zVertex = %f", tracks->
GetNTracks(), zVertex));
412 Int_t nMix = pool->GetCurrentNEvents();
414 if(eventTrigger & fTriggerType) {
423 if (jet == leadingJet) { leadJet = kTRUE; }
429 if (jet->
Pt() < 15)
continue;
432 if (biasedJet == kTRUE) {
435 for (Int_t jMix=0; jMix < nMix; jMix++) {
436 TObjArray* bgTracks = pool->GetEvent(jMix);
438 for(Int_t ibg=0; ibg < bgTracks->GetEntries(); ibg++){
440 AliBasicParticle *bgTrack =
static_cast<AliBasicParticle*
>(bgTracks->At(ibg));
443 AliError(Form(
"%s:Failed to retrieve tracks from mixed events", GetName()));
453 eventActivity =
fCent;
456 eventActivity =
static_cast<Double_t
>(tracks->
GetNTracks());
460 Double_t triggerEntries[6] = {eventActivity, jet->
Pt(), bgTrack->Pt(), deltaEta, deltaPhi,
static_cast<Double_t
>(leadJet)};
463 Double_t triggerEntries[7] = {eventActivity, jet->
Pt(), bgTrack->Pt(), deltaEta, deltaPhi,
static_cast<Double_t
>(leadJet), deltaR};
477 pool->UpdatePool(tracksClone);
506 deltaPhi =
DeltaPhi(particleTwo->Phi(), particleOne->Phi(), -1.0*TMath::Pi(), TMath::Pi());
507 deltaEta = particleOne->Eta() - particleTwo->Eta();
508 deltaR = TMath::Sqrt(deltaPhi*deltaPhi + deltaEta*deltaEta);
511 deltaPhi =
DeltaPhi(particleTwo->Phi(), particleOne->Phi(), -0.5*TMath::Pi(), 3*TMath::Pi()/2.);
519 UInt_t tmp = entries;
525 TString hnTitle(name);
526 const Int_t dim = count;
533 while(c<dim && i<32){
538 hnTitle += Form(
";%s",label.Data());
546 return new THnSparseF(name, hnTitle.Data(), dim,
nbins, xmin, xmax);
554 const Double_t
pi = TMath::Pi();
559 label =
"V0 centrality (%)";
566 label =
"corrected jet pt";
601 label =
"leading jet";
608 label =
"trigger track";
622 label =
"leading track";
635 TObjArray* tracksClone =
new TObjArray;
636 tracksClone->SetOwner(kTRUE);
639 AliVParticle * particle = 0;
640 AliBasicParticle * clone = 0;
649 if(trackPtBin > -1)
fHistTrackEtaPhi[trackPtBin]->Fill(particle->Eta(),particle->Phi());
652 clone =
new AliBasicParticle(particle->Eta(), particle->Phi(), particle->Pt(), particle->Charge());
654 clone ->SetUniqueID(particle->GetUniqueID());
656 tracksClone->Add(clone);
666 Double_t x = trackPT;
667 Double_t y = trackETA;
668 Double_t TRefficiency = -999;
669 Int_t runNUM = fCurrentRunNumber;
670 Int_t runSwitchGood = -999;
673 Double_t etaaxis = 0;
677 if ((runNUM == 169975 || runNUM == 169981 || runNUM == 170038 || runNUM == 170040 || runNUM == 170083 || runNUM == 170084 || runNUM == 170085 || runNUM == 170088 || runNUM == 170089 || runNUM == 170091 || runNUM == 170152 || runNUM == 170155 || runNUM == 170159 || runNUM == 170163 || runNUM == 170193 || runNUM == 170195 || runNUM == 170203 || runNUM == 170204 || runNUM == 170228 || runNUM == 170230 || runNUM == 170268 || runNUM == 170269 || runNUM == 170270 || runNUM == 170306 || runNUM == 170308 || runNUM == 170309)) runSwitchGood = 0;
679 if ((runNUM == 167902 || runNUM == 167903 || runNUM == 167915 || runNUM == 167920 || runNUM == 167987 || runNUM == 167988 || runNUM == 168066 || runNUM == 168068 || runNUM == 168069 || runNUM == 168076 || runNUM == 168104 || runNUM == 168107 || runNUM == 168108 || runNUM == 168115 || runNUM == 168212 || runNUM == 168310 || runNUM == 168311 || runNUM == 168322 || runNUM == 168325 || runNUM == 168341 || runNUM == 168342 || runNUM == 168361 || runNUM == 168362 || runNUM == 168458 || runNUM == 168460 || runNUM == 168461 || runNUM == 168464 || runNUM == 168467 || runNUM == 168511 || runNUM == 168512 || runNUM == 168777 || runNUM == 168826 || runNUM == 168984 || runNUM == 168988 || runNUM == 168992 || runNUM == 169035 || runNUM == 169091 || runNUM == 169094 || runNUM == 169138 || runNUM == 169143 || runNUM == 169144 || runNUM == 169145 || runNUM == 169148 || runNUM == 169156 || runNUM == 169160 || runNUM == 169167 || runNUM == 169238 || runNUM == 169411 || runNUM == 169415 || runNUM == 169417 || runNUM == 169835 || runNUM == 169837 || runNUM == 169838 || runNUM == 169846 || runNUM == 169855 || runNUM == 169858 || runNUM == 169859 || runNUM == 169923 || runNUM == 169956 || runNUM == 170027 || runNUM == 170036 || runNUM == 170081)) runSwitchGood = 1;
684 effSwitch = 2 + runSwitchGood*4 +
fCentBin;
688 Double_t p0_10SG[17] = {0.906767, 0.0754127, 1.11638, -0.0233078, 0.795454, 0.00935385, -0.000327857, 1.08903, 0.0107272, 0.443252, -0.143411, 0.965822, 0.359156, -0.581221, 1.0739, 0.00632828, 0.706356};
690 Double_t p10_30SG[17] = {0.908011, 0.0769254, 1.11912, -0.0249449, 0.741488, 0.0361252, -0.00367954, 1.10424, 0.011472, 0.452059, -0.133282, 0.980633, 0.358222, -0.620256, 1.06871, 0.00564449, 0.753168};
692 Double_t p30_50SG[17] = {0.958708, 0.0799197, 1.10817, -0.0357678, 0.75051, 0.0607808, -0.00929713, 0.998801, 0.00692244, 0.615452, -0.0480328, 0.968431, 0.321634, -0.619066, 1.03412, 0.00656201, 0.798666};
694 Double_t p50_90SG[17] = {0.944565, 0.0807258, 1.12709, -0.0324746, 0.666452, 0.0842476, -0.00963837, 1.02829, 0.00666852, 0.549625, -0.0603107, 0.981374, 0.309374, -0.619181, 1.05367, 0.005925, 0.744887};
697 Double_t p0_10G[17] = {0.971679, 0.0767571, 1.13355, -0.0274484, 0.856652, 0.00536795, 3.90795e-05, 1.06889, 0.011007, 0.447046, -0.146626, 0.919777, 0.192601, -0.268515, 1.00243, 0.00620849, 0.709477};
699 Double_t p10_30G[17] = {0.97929, 0.0776039, 1.12213, -0.0300645, 0.844722, 0.0134788, -0.0012333, 1.07955, 0.0116835, 0.456608, -0.132743, 0.930964, 0.174175, -0.267154, 0.993118, 0.00574892, 0.765256};
701 Double_t p30_50G[17] = {0.997696, 0.0816769, 1.14341, -0.0353734, 0.752151, 0.0744259, -0.0102926, 1.01561, 0.00713274, 0.57203, -0.0640248, 0.947747, 0.102007, -0.194698, 0.999164, 0.00568476, 0.7237};
703 Double_t p50_90G[17] = {0.97041, 0.0813559, 1.12151, -0.0368797, 0.709327, 0.0701501, -0.00784043, 1.06276, 0.00676173, 0.53607, -0.0703117, 0.982534, 0.0947881, -0.18073, 1.03229, 0.00580109, 0.737801};
714 ptaxis = (x<2.9)*(p0_10SG[0]*exp(-pow(p0_10SG[1]/x,p0_10SG[2])) + p0_10SG[3]*x) + (x>=2.9)*(p0_10SG[4] + p0_10SG[5]*x + p0_10SG[6]*x*x);
715 etaaxis = (y<-0.07)*(p0_10SG[7]*exp(-pow(p0_10SG[8]/TMath::Abs(y+0.91),p0_10SG[9])) + p0_10SG[10]*y) + (y>=-0.07 && y<=0.4)*(p0_10SG[11] + p0_10SG[12]*y + p0_10SG[13]*y*y) + (y>0.4)*(p0_10SG[14]*exp(-pow(p0_10SG[15]/TMath::Abs(-y+0.91),p0_10SG[16])));
716 TRefficiency = ptaxis*etaaxis;
721 ptaxis = (x<2.9)*(p10_30SG[0]*exp(-pow(p10_30SG[1]/x,p10_30SG[2])) + p10_30SG[3]*x) + (x>=2.9)*(p10_30SG[4] + p10_30SG[5]*x + p10_30SG[6]*x*x);
722 etaaxis = (y<-0.07)*(p10_30SG[7]*exp(-pow(p10_30SG[8]/TMath::Abs(y+0.91),p10_30SG[9])) + p10_30SG[10]*y) + (y>=-0.07 && y<=0.4)*(p10_30SG[11] + p10_30SG[12]*y + p10_30SG[13]*y*y) + (y>0.4)*(p10_30SG[14]*exp(-pow(p10_30SG[15]/TMath::Abs(-y+0.91),p10_30SG[16])));
723 TRefficiency = ptaxis*etaaxis;
728 ptaxis = (x<2.9)*(p30_50SG[0]*exp(-pow(p30_50SG[1]/x,p30_50SG[2])) + p30_50SG[3]*x) + (x>=2.9)*(p30_50SG[4] + p30_50SG[5]*x + p30_50SG[6]*x*x);
729 etaaxis = (y<-0.07)*(p30_50SG[7]*exp(-pow(p30_50SG[8]/TMath::Abs(y+0.91),p30_50SG[9])) + p30_50SG[10]*y) + (y>=-0.07 && y<=0.4)*(p30_50SG[11] + p30_50SG[12]*y + p30_50SG[13]*y*y) + (y>0.4)*(p30_50SG[14]*exp(-pow(p30_50SG[15]/TMath::Abs(-y+0.91),p30_50SG[16])));
730 TRefficiency = ptaxis*etaaxis;
735 ptaxis = (x<2.9)*(p50_90SG[0]*exp(-pow(p50_90SG[1]/x,p50_90SG[2])) + p50_90SG[3]*x) + (x>=2.9)*(p50_90SG[4] + p50_90SG[5]*x + p50_90SG[6]*x*x);
736 etaaxis = (y<-0.07)*(p50_90SG[7]*exp(-pow(p50_90SG[8]/TMath::Abs(y+0.91),p50_90SG[9])) + p50_90SG[10]*y) + (y>=-0.07 && y<=0.4)*(p50_90SG[11] + p50_90SG[12]*y + p50_90SG[13]*y*y) + (y>0.4)*(p50_90SG[14]*exp(-pow(p50_90SG[15]/TMath::Abs(-y+0.91),p50_90SG[16])));
737 TRefficiency = ptaxis*etaaxis;
742 ptaxis = (x<2.9)*(p0_10G[0]*exp(-pow(p0_10G[1]/x,p0_10G[2])) + p0_10G[3]*x) + (x>=2.9)*(p0_10G[4] + p0_10G[5]*x + p0_10G[6]*x*x);
743 etaaxis = (y<0.0)*(p0_10G[7]*exp(-pow(p0_10G[8]/TMath::Abs(y+0.91),p0_10G[9])) + p0_10G[10]*y) + (y>=0.0 && y<=0.4)*(p0_10G[11] + p0_10G[12]*y + p0_10G[13]*y*y) + (y>0.4)*(p0_10G[14]*exp(-pow(p0_10G[15]/TMath::Abs(-y+0.91),p0_10G[16])));
744 TRefficiency = ptaxis*etaaxis;
749 ptaxis = (x<2.9)*(p10_30G[0]*exp(-pow(p10_30G[1]/x,p10_30G[2])) + p10_30G[3]*x) + (x>=2.9)*(p10_30G[4] + p10_30G[5]*x + p10_30G[6]*x*x);
750 etaaxis = (y<0.0)*(p10_30G[7]*exp(-pow(p10_30G[8]/TMath::Abs(y+0.91),p10_30G[9])) + p10_30G[10]*y) + (y>=0.0 && y<=0.4)*(p10_30G[11] + p10_30G[12]*y + p10_30G[13]*y*y) + (y>0.4)*(p10_30G[14]*exp(-pow(p10_30G[15]/TMath::Abs(-y+0.91),p10_30G[16])));
751 TRefficiency = ptaxis*etaaxis;
756 ptaxis = (x<2.9)*(p30_50G[0]*exp(-pow(p30_50G[1]/x,p30_50G[2])) + p30_50G[3]*x) + (x>=2.9)*(p30_50G[4] + p30_50G[5]*x + p30_50G[6]*x*x);
757 etaaxis = (y<0.0)*(p30_50G[7]*exp(-pow(p30_50G[8]/TMath::Abs(y+0.91),p30_50G[9])) + p30_50G[10]*y) + (y>=0.0 && y<=0.4)*(p30_50G[11] + p30_50G[12]*y + p30_50G[13]*y*y) + (y>0.4)*(p30_50G[14]*exp(-pow(p30_50G[15]/TMath::Abs(-y+0.91),p30_50G[16])));
758 TRefficiency = ptaxis*etaaxis;
763 ptaxis = (x<2.9)*(p50_90G[0]*exp(-pow(p50_90G[1]/x,p50_90G[2])) + p50_90G[3]*x) + (x>=2.9)*(p50_90G[4] + p50_90G[5]*x + p50_90G[6]*x*x);
764 etaaxis = (y<0.0)*(p50_90G[7]*exp(-pow(p50_90G[8]/TMath::Abs(y+0.91),p50_90G[9])) + p50_90G[10]*y) + (y>=0.0 && y<=0.4)*(p50_90G[11] + p50_90G[12]*y + p50_90G[13]*y*y) + (y>0.4)*(p50_90G[14]*exp(-pow(p50_90G[15]/TMath::Abs(-y+0.91),p50_90G[16])));
765 TRefficiency = ptaxis*etaaxis;
782 hist->Fill(fillValue, weight);
789 std::vector <Double_t> yBinsContent;
799 Printf(
"fillLocation: %f, weight: %f", fillLocation, yBinsContent.at(index-1));
801 hist->Fill(fillLocation, weight*yBinsContent.at(index-1));
815 hist->Fill(fillValue, weight);
820 Double_t jetPt = fillValue[1];
825 std::vector <Double_t> yBinsContent;
835 Printf(
"fillValue[1]: %f, weight: %f", fillValue[1], yBinsContent.at(index-1));
837 hist->Fill(fillValue, weight*yBinsContent.at(index-1));
845 for (Int_t index = 1; index <= hist->GetYaxis()->GetNbins(); index++)
848 yBinsContent.push_back(hist->GetBinContent(hist->GetBin(xBin,index)));
850 if (scaleFactor >= 0)
853 hist->SetBinContent(hist->GetBin(xBin,index), yBinsContent.at(index-1)/scaleFactor);
void accessSetOfYBinValues(TH2F *hist, Int_t xBin, std::vector< Double_t > &yBinsContent, Double_t scaleFactor=-1.0)
Bool_t fDoEventMixing
flag to do evt mixing
Int_t fMinNEventsMixedEvents
threshold to use event pool # events
static Double_t DeltaPhi(Double_t phia, Double_t phib, Double_t rMin=-TMath::Pi()/2, Double_t rMax=3 *TMath::Pi()/2)
UInt_t fNCentBinsMixedEvent
N cent bins for the event mixing pool.
AliJetContainer * GetJetContainer(Int_t i=0) const
virtual Int_t GetTrackPtBin(Double_t pt) const
TH1 * fHistTrackPt
! Pt spectrum
Container with name, TClonesArray and cuts for particles.
void GetDeltaEtaDeltaPhiDeltaR(AliVParticle *particleOne, AliVParticle *particleTwo, Double_t &deltaPhi, Double_t &deltaEta, Double_t &deltaR)
virtual void UserCreateOutputObjects()
AliEventPoolManager * fPoolMgr
! Event pool manager
Int_t fCentBin
!event centrality bin
TH2 * fHistJetHBias[6][5][3]
!
TH2F * fEmbeddingCorrectionHist
!
TList * fOutput
!output list
virtual Int_t GetJetPtBin(Double_t pt) const
Int_t fMinNTracksMixedEvents
threshold to use event pool # tracks
virtual THnSparse * NewTHnSparseF(const char *name, UInt_t entries)
Bool_t BiasedJet(AliEmcalJet *jet)
TObjArray * CloneAndReduceTrackList()
AliEmcalJet * GetLeadingJet(const char *opt="")
TH3 * fHistJHPsi
! Psi angle distribution
BeamType fForceBeamType
forced beam type
AliClusterContainer * GetClusterContainer(Int_t i=0) const
Double_t MaxTrackPt() const
virtual Int_t GetEtaBin(Double_t eta) const
BeamType fBeamType
!event beam type
void FillHist(TH1 *hist, Double_t fillValue, Double_t weight=1.0, Bool_t noCorrection=kTRUE)
Double_t fCent
!event centrality
AliAnalysisTaskEmcalJetHMEC()
Double_t fClusterBias
Jet cluster bias.
void InitializeArraysToZero()
AliEmcalJet * GetNextAcceptJet()
ClassImp(AliAnalysisTaskEmcalJetHMEC) AliAnalysisTaskEmcalJetHMEC
static Double_t * GenerateFixedBinArray(Int_t n, Double_t min, Double_t max)
virtual AliVTrack * GetNextAcceptTrack()
Double_t fTrackBias
Jet track bias.
Double_t fVertex[3]
!event vertex
AliTrackContainer * GetTrackContainer(Int_t i=0) const
THnSparse * fhnMixedEvents
! Mixed events THnSparse
Double_t MaxClusterPt() const
void UserCreateOutputObjects()
virtual void Terminate(Option_t *)
Int_t fNMixingTracks
size of track buffer for event mixing
virtual Double_t EffCorrection(Double_t trkETA, Double_t trkPT, Int_t effswitch) const
Container structure for EMCAL clusters.
void ResetCurrentID(Int_t i=-1)
TH2 * fHistJetH[6][5][3]
!
THnSparse * fhnJH
! JetH THnSparse
TH2 * fHistTrackEtaPhi[7]
!
virtual void GetDimParams(Int_t iEntry, TString &label, Int_t &nbins, Double_t &xmin, Double_t &xmax)