Skip to content

Commit da28205

Browse files
authored
Add track histogram for NUA correction
1 parent 902fdee commit da28205

1 file changed

Lines changed: 15 additions & 15 deletions

File tree

PWGCF/TwoParticleCorrelations/TableProducer/longrangeMaker.cxx

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -152,9 +152,8 @@ struct LongrangeMaker {
152152
Configurable<float> maxChi2PerClusterITS{"maxChi2PerClusterITS", 36.f, "cut on maximum value of ITS chi2 per cluster"};
153153
Configurable<float> maxDcaZ{"maxDcaZ", 2.0f, "cut on maximum abs value of DCA z"};
154154
Configurable<float> maxDcaXY{"maxDcaXY", 1.0f, "cut on maximum abs value of DCA xy"};
155-
Configurable<float> cfgLowEffCut{"cfgLowEffCut", 0.001f, "Low efficiency cut"};
156155
Configurable<bool> applyEffCorr{"applyEffCorr", true, "Enable efficiency correction"};
157-
Configurable<std::string> cfgEffccdbPath{"cfgEffccdbPath", "/alice/data/CCDB/Users/a/abmodak/OO/Efficiency", "Browse track eff object from CCDB"};
156+
Configurable<std::string> cfgEffccdbPath{"cfgEffccdbPath", "Users/a/abmodak/Efficiency/OO/default", "Browse track eff object from CCDB"};
158157
} cfgtrksel;
159158

160159
struct : ConfigurableGroup {
@@ -316,6 +315,7 @@ struct LongrangeMaker {
316315
histos.add("FT0C_Channel_vs_Amp_gaincorrected", "FT0C_Channel_vs_Amp_gaincorrected", kTH2D, {cfgAxis.axisChannel, cfgAxis.axisAmplitude});
317316
histos.add("FT0C_Channel_vs_eta", "FT0C_Channel_vs_eta", kTH2D, {cfgAxis.axisEta, cfgAxis.axisChannel});
318317
histos.add("FT0C_Channel_vs_phi", "FT0C_Channel_vs_phi", kTH2D, {cfgAxis.axisPhi, cfgAxis.axisChannel});
318+
histos.add("h3DVtxZetaPhi", "", kTH3D, {{20, -10, 10}, {16, -0.8, +0.8}, {100, 0., TwoPI}});
319319

320320
myTrackFilter = getGlobalTrackSelectionRun3ITSMatch(TrackSelection::GlobalTrackRun3ITSMatching::Run3ITSibAny,
321321
TrackSelection::GlobalTrackRun3DCAxyCut::Default);
@@ -432,6 +432,7 @@ struct LongrangeMaker {
432432
track.dcaZ(),
433433
pid);
434434
}
435+
histos.fill(HIST("h3DVtxZetaPhi"), col.posZ(), track.eta(), track.phi());
435436
}
436437

437438
// ft0 loop
@@ -855,6 +856,7 @@ struct LongrangeMaker {
855856
track.dcaZ(),
856857
pid);
857858
}
859+
histos.fill(HIST("h3DVtxZetaPhi"), RecCol.posZ(), track.eta(), track.phi());
858860
}
859861

860862
// ft0 loop
@@ -1101,7 +1103,7 @@ struct LongrangeMaker {
11011103
float trkeff = 1.0f;
11021104
if (cfgtrksel.applyEffCorr)
11031105
trkeff = getTrkEffCorr(vz, track.eta(), track.pt());
1104-
nTrk += 1.0 / trkeff;
1106+
nTrk += trkeff;
11051107
}
11061108
return nTrk;
11071109
}
@@ -1394,19 +1396,17 @@ struct LongrangeMaker {
13941396

13951397
float getTrkEffCorr(float posZ, float eta, float pt)
13961398
{
1397-
float eff = 1.;
1398-
if (hTrkEff) {
1399-
int zBin = hTrkEff->GetXaxis()->FindBin(posZ);
1400-
int etaBin = hTrkEff->GetYaxis()->FindBin(eta);
1401-
int ptBin = hTrkEff->GetZaxis()->FindBin(pt);
1402-
eff = hTrkEff->GetBinContent(zBin, etaBin, ptBin);
1403-
} else {
1404-
eff = 1.0;
1399+
if (!cfgtrksel.applyEffCorr || !hTrkEff) {
1400+
return 1.0;
14051401
}
1406-
if (eff < cfgtrksel.cfgLowEffCut)
1407-
eff = 1.0;
1408-
1409-
return eff;
1402+
int zBin = hTrkEff->GetXaxis()->FindBin(posZ);
1403+
int etaBin = hTrkEff->GetYaxis()->FindBin(eta);
1404+
int ptBin = hTrkEff->GetZaxis()->FindBin(pt);
1405+
float effweight = 1.0 / hTrkEff->GetBinContent(zBin, etaBin, ptBin);
1406+
if (!std::isfinite(effweight) || effweight <= 0) {
1407+
return 1.0;
1408+
}
1409+
return effweight;
14101410
}
14111411

14121412
PROCESS_SWITCH(LongrangeMaker, processData, "process All collisions", false);

0 commit comments

Comments
 (0)